{"id":"UBUNTU-CVE-2026-32665","details":"In NLnet Labs Unbound 1.22.0 up to and including 1.25.1, when downstream DNS-over-QUIC (DoQ) is enabled, the first two bidirectional streams on a new QUIC connection (stream_id 0 and 4) bypass the per-stream 'quic-size' gate entirely, and large input buffers are allocated later, after only the 2-byte length prefix has been received from the initial streams. As a result, a remote client can make Unbound exceed the configured 'quic-size' limit with low-cost input. Using only one connection and two streams, each sending a declared 65535-byte length prefix and then holding the streams open, a client can already trivially make Unbound roughly allocate double that amount. This is a remote availability issue / memory-accounting bypass in the downstream DoQ implementation that leads to denial of service for new DoQ clients. This vulnerability needs Unbound to be compiled with DoQ support ('--with-libngtcp2') and the 'quic-port' to be configured for the listening interfaces.","modified":"2026-11-11T09:58:36.316118739Z","published":"2026-07-22T14:17:00Z","related":["USN-8946-1","USN-8946-2"],"upstream":["CVE-2026-32665"],"references":[{"type":"REPORT","url":"https://ubuntu.com/security/CVE-2026-32665"},{"type":"REPORT","url":"https://www.cve.org/CVERecord?id=CVE-2026-32665"},{"type":"REPORT","url":"https://community.nlnetlabs.nl/t/unbound-1-25-2-released/3430"},{"type":"ADVISORY","url":"https://ubuntu.com/security/notices/USN-8946-1"},{"type":"ADVISORY","url":"https://ubuntu.com/security/notices/USN-8946-2"}],"affected":[{"package":{"name":"unbound","ecosystem":"Ubuntu:26.10","purl":"pkg:deb/ubuntu/unbound?arch=source&distro=stonking"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.25.1-1ubuntu3.1"}]}],"versions":["1.24.2-1ubuntu2","1.25.1-1ubuntu1","1.25.1-1ubuntu3"],"ecosystem_specific":{"availability":"No subscription required","binaries":[{"binary_version":"1.25.1-1ubuntu3.1","binary_name":"libunbound8"},{"binary_name":"python3-unbound","binary_version":"1.25.1-1ubuntu3.1"},{"binary_name":"unbound","binary_version":"1.25.1-1ubuntu3.1"},{"binary_name":"unbound-anchor","binary_version":"1.25.1-1ubuntu3.1"},{"binary_name":"unbound-host","binary_version":"1.25.1-1ubuntu3.1"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-32665.json"}},{"package":{"name":"unbound","ecosystem":"Ubuntu:26.04:LTS","purl":"pkg:deb/ubuntu/unbound?arch=source&distro=resolute"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.24.2-1ubuntu2.4"}]}],"versions":["1.22.0-2ubuntu2","1.22.0-2ubuntu4","1.24.2-1ubuntu1","1.24.2-1ubuntu2","1.24.2-1ubuntu2.1","1.24.2-1ubuntu2.2","1.24.2-1ubuntu2.3"],"ecosystem_specific":{"binaries":[{"binary_name":"libunbound8","binary_version":"1.24.2-1ubuntu2.4"},{"binary_name":"python3-unbound","binary_version":"1.24.2-1ubuntu2.4"},{"binary_name":"unbound","binary_version":"1.24.2-1ubuntu2.4"},{"binary_name":"unbound-anchor","binary_version":"1.24.2-1ubuntu2.4"},{"binary_version":"1.24.2-1ubuntu2.4","binary_name":"unbound-host"}],"availability":"No subscription required"},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-32665.json"}}],"schema_version":"1.9.2","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"},{"type":"Ubuntu","score":"medium"}]}