hickory-resolver versions before 0.26.2 fail to propagate bogus DNSSEC proof states through the Resolver::lookup() and Resolver::lookup_ip() APIs, allowing invalid records to be returned as successful results. Attackers controlling the answering zone or positioned on the network path can have forged DNS records accepted as validated, bypassing DNSSEC authentication checks.
hickory-resolver versions before 0.26.2 fail to propagate bogus DNSSEC proof states through the Resolver::lookup() and Resolver::lookup_ip() APIs, allowing invalid records to be returned as successful results. Attackers controlling the answering zone or positioned on the network path can have forged DNS records accepted as validated, bypassing DNSSEC authentication checks.
hickory-resolver versions before 0.26.2 fail to propagate bogus DNSSEC proof states through the Resolver::lookup() and Resolver::lookup_ip() APIs, allowing invalid records to be returned as successful results. Attackers controlling the answering zone or positioned on the network path can have forged DNS records accepted as validated, bypassing DNSSEC authentication checks.
When calling `Resolver::lookup()` or `Resolver::lookup_ip()` on a resolver with DNSSEC validation enabled, both methods return `Ok(...)` if DNSSEC validation fails. It is possible but very inconvenient to check the validation status of individual records. These methods should instead return an error when DNSSEC validation determines a response is bogus.
With DNSSEC validation enabled, `Resolver::lookup()` and `Resolver::lookup_ip()` returned `Ok` with the records even when validation found the response bogus. The result was only visible in each record's proof status, which callers had to inspect themselves.
Applications that enable validation and treat a successful lookup as validated data would therefore accept forged or tampered answers from anyone who can answer or modify their DNS traffic.
From 0.26.2 a lookup whose records are bogus fails with a "DNSSEC validation failed" error (`DnsError::DnssecBogus`), the error is not retried, and the hickory-server forwarder answers SERVFAIL for it.
EUVD source date text has no stated timezone and is retained without inventing a UTC instant. Related bulletin membership is not an alias, common cause or applicability claim. A missing vector with a zero score is treated as unrated. Complete vendor/product and underlying source evidence remains in the original JSON.
Original publisher date fields
datePublished: Sep 18, 2026, 2:23:20 PM
dateUpdated: Sep 21, 2026, 8:51:40 PM
4 related source bulletins · separate from aliases
RHSA-2026:85848: Red Hat Security Advisory: rust-sequoia-sq security update
CVE-2026-93599 · CVE-2026-93657
RHSA-2026:86891: Red Hat Security Advisory: RHOAI 3.5.2 - Red Hat OpenShift AI
openSUSE-SU-2026:11923-1: openai-codex-0.158.0-1.1 on GA media
CVE-2026-91986 · CVE-2026-93657
No normalized affected-package data is projected for this source revision. The original publisher record may contain additional product and version evidence; this does not establish that a package is unaffected.
NVD analysis and CPE criteria are source context, not proof that a package or your environment is affected. Complete affected data, logical configurations and SSVC are retained in the original JSON.
Source analysis status: Deferred
Weakness classifications: CWE-347
Original publisher date fields
published: 2026-09-18T15:17:22.190
lastModified: 2026-09-22T20:53:07.383
No normalized affected-package data is projected for this source revision. The original publisher record may contain additional product and version evidence; this does not establish that a package is unaffected.