BIND 9 Recursive Resolver Cache Poisoning via Lenient Answer Record Acceptance
CVE-2025-40778 is a high-severity cache poisoning vulnerability in BIND 9 affecting recursive resolver deployments. Under certain circumstances, BIND is too lenient when accepting records from DNS answers and may cache unsolicited or extraneous resource records that were not properly solicited by the original query. The issue is described as insufficiently strict acceptance of answer records and is associated with improper bailiwick enforcement, allowing forged data from untrusted responses to be mixed into trusted cache state. A remote attacker who can operate a malicious authoritative nameserver for a queried domain, or who can intercept and influence resolver traffic, can exploit this behavior to inject forged DNS records into the resolver cache. Affected versions are BIND 9 9.11.0 through 9.16.50, 9.18.0 through 9.18.39, 9.20.0 through 9.20.13, 9.21.0 through 9.21.12, 9.11.3-S1 through 9.16.50-S1, 9.18.11-S1 through 9.18.39-S1, and 9.20.9-S1 through 9.20.13-S1. The issue affects recursive resolvers; authoritative-only servers are not affected unless recursion is enabled.
Are you exposed to this one?
Mallory correlates every CVE against your assets, your vendors, and active adversary campaigns. Know which vulnerabilities matter for you, not just which ones are loud.
Impact, mitigation & remediation
What it means. What to do now. Patch path, mitigations, and the assume-compromise checklist.
Impact
What an attacker gets, and what they’ve been doing with it.
Mitigation
If you can’t patch tonight, do this now.
Remediation
Patch, then assume compromise.
Exploits
1 valid exploit after Mallory filtered fakes, detection scripts, and README-only repos (1 hidden).
Repository is a small proof-of-concept for BIND 9 DNS cache poisoning (CVE-2025-40778) based on injecting unrelated records via the DNS ADDITIONAL section. Structure: - README.md: Detailed lab setup and reproduction steps (compile/install BIND 9.21.12, configure recursion/forwarding, set a forward zone for poc.lab to the attacker at 192.168.174.130, victim resolver settings, and demonstration dig commands). Mentions affected version ranges. - attacker.py: Core PoC. Implements a UDP DNS server (dnslib) that answers only queries for www.poc.lab. with an A record (192.168.174.99) and simultaneously injects an unsolicited ADDITIONAL A record for www.hacker.com. -> 192.168.174.130. For other names it returns NXDOMAIN. This models a malicious authoritative server response intended to be cached by a vulnerable BIND resolver. - server.py: Optional Flask web server bound to 0.0.0.0:443 serving a static HTML page, intended to demonstrate the impact after poisoning (victims redirected to attacker-controlled web content). Exploit capabilities: - Network-based cache poisoning against a recursive BIND resolver by leveraging improper caching/processing of unsolicited ADDITIONAL-section data. - Redirects subsequent DNS lookups for the poisoned hostname to an attacker-chosen IP (traffic redirection / potential phishing / MITM staging). No reverse shell or code execution payload is included; impact is DNS integrity compromise.
Affected products & vendors
Products and vendors Mallory has correlated with this vulnerability. Open in Mallory to drill down to specific CPE configurations and version ranges.
Vendor-confirmed product mapping. Mallory continuously reconciles this list against your asset inventory.
Recent activity
58 sources tracked across advisories, community write-ups, and news. New activity surfaces here as Mallory finds it.
A cache poisoning vulnerability in BIND 9 via unsolicited answer records, potentially affecting devices that do not cryptographically validate updates.
A high-severity cache poisoning vulnerability in BIND 9 DNS resolvers that allows remote, unauthenticated attackers to inject forged DNS records, potentially redirecting users to malicious sites or intercepting network traffic.
A vulnerability listed as trending; no technical details provided in the content.
A BIND 9 DNS cache-poisoning vulnerability enabling injection of forged DNS records into a resolver cache via acceptance of unsolicited/leniently accepted resource records.
The version that knows your environment.
Query your assets running an affected version, and investigate the blast radius.
Every observed campaign linking this CVE to a named adversary.
Malware families riding this exploit, with evidence and IOCs.
YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.
Cross-references every affected SKU, including bundled OEM variants.
Community discussion across Reddit, Mastodon, and other social sources.