cbcvebase.
CVE-2016-2776
published 2016-09-28

CVE-2016-2776: buffer.c in named in ISC BIND 9 before 9.9.9-P3, 9.10.x before 9.10.4-P3, and 9.11.x before 9.11.0rc3 does not properly construct responses, which allows…

PriorityP181high7.5CVSS 3.0
AVNACLPRNUINSUCNINAH
ITWEXPLOITVulnCheck KEVInitial access
Exploited in the wild
EPSS
89.48%
99.8th percentile
buffer.c in named in ISC BIND 9 before 9.9.9-P3, 9.10.x before 9.10.4-P3, and 9.11.x before 9.11.0rc3 does not properly construct responses, which allows remote attackers to cause a denial of service (assertion failure and daemon exit) via a crafted query.

Affected

21 ranges
VendorProductVersion rangeFixed in
debianbind9< bind9 1:9.10.3.dfsg.P4-11 (bookworm)bind9 1:9.10.3.dfsg.P4-11 (bookworm)
hphp-ux
iscbind<= 9.9.9
iscbind
iscbind
iscbind
iscbind
iscbind
iscbind
iscbind9>= 0 < 1:9.10.3.dfsg.P4-111:9.10.3.dfsg.P4-11
iscbind9>= 0 < 1:9.10.3.dfsg.P4-111:9.10.3.dfsg.P4-11
iscbind9>= 0 < 1:9.10.3.dfsg.P4-111:9.10.3.dfsg.P4-11
iscbind9>= 0 < 1:9.10.3.dfsg.P4-111:9.10.3.dfsg.P4-11
oraclelinux
oraclelinux
oraclelinux
oraclesolaris
oraclesolaris
oraclevm_server
oraclevm_server
oraclevm_server

Detection & IOCsextracted from sources · hover to see the quote

port53/udp
commandnamed assertion failure in buffer.c triggered via crafted DNS query with TSIG RR where sizeof(TSIG RR) - 16 causes buffer overflow in response construction
bytes
DNS query with TSIG RR: flags=\x00\x00, Questions=\x00\x01, Additional RRs=\x00\x01, Type TSIG=\x00\xfa, Class ANY=\x00\xff, TTL=\x00\x00\x00\x00, Data length=\x00\xfc
  • Detect crafted DNS UDP packets targeting port 53 that contain a TSIG additional record (type 0x00FA / 250) with Class ANY (0x00FF), TTL of 0, and a padded name field constructed to trigger the off-by-one in buffer.c. The TSIG RR name is padded to make sizeof(TSIG RR) - 16 equal to the sweet spot: udpsize - DNS_MESSAGE_HEADERLEN + 1.
  • The exploit crafts the TSIG RR name using up to 8 label buckets with max lengths [0x3f, 0x3f, 0x3f, 0x3d, 0x3f, 0x3f, 0x3f, 0x3d] to precisely size the packet. Monitor for DNS queries with unusually large TSIG name fields composed of repeated 63-byte labels filled with alphanumeric padding.
  • The assertion failure manifests as named crashing with an assertion failure in buffer.c. Monitor named process for unexpected exits or core dumps referencing buffer.c as an indicator of exploitation.
  • This assertion can be triggered even if the apparent source address is not allowed to make queries (i.e. doesn't match 'allow-query'). ACL-based filtering is NOT a sufficient mitigation — any source IP can trigger the crash.
  • The Metasploit module sends a single specially crafted UDP packet then checks if the server stops responding to a follow-up valid query. A named server that stops responding to DNS queries after receiving a single UDP packet to port 53 may have been exploited.
  • ·No workaround is available via BIND configuration. The 'allow-query' ACL does NOT prevent exploitation since the assertion can be triggered from any source address regardless of query permissions.
  • ·Affected versions are ISC BIND 9 before 9.9.9-P3, 9.10.x before 9.10.4-P3, and 9.11.x before 9.11.0rc3. Patching to these versions is the only remediation.

CVSS provenance

nvdv3.07.5HIGHCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
nvdv2.07.8HIGHAV:N/AC:L/Au:N/C:N/I:N/A:C
osv7.5HIGH
vulncheck7.5HIGH
vendor_debian7.5HIGH
vendor_redhat7.5HIGH
CVEs like this are exactly what “Exploited This Week” covers.

Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.