Skip to main content

NLnet Labs Unbound EUVDEUVD-2026-47668

| CVE-2026-44687 LOW
Off-by-one Error (CWE-193)
2026-07-22 NLnet Labs GHSA-x324-pxwv-r76h
3.7
CVSS 3.1 · Vendor: NLnet Labs
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Recon
    Identify Unbound resolver with default harden-below-nxdomain enabled
  2. Delivery
    Confirm stub/forward zone nested under DNSSEC-signed public parent
  3. Exploit
    Trigger or await DNSSEC-secure NXDOMAIN caching for intermediate label
  4. Install
    Send DNS query for intermediate label to resolver
  5. C2
    Off-by-one error bypasses delegation point guard at stub apex
  6. Execute
    Resolver walks to signed parent cache entry
  7. Impact
    Stub/forward upstream never contacted, resolution silently fails

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Off-by-one prevention
Exploitation Conditions

All five of the following conditions must be met simultaneously: (1) Unbound version 1.13.2 through 1.25.1 is the recursive resolver in use; (2) harden-below-nxdomain is enabled - this is the default configuration so no deliberate action is needed to be vulnerable; (3) a stub or forward zone is configured with an apex that is two or more labels below a DNSSEC-signed public zone (e.g., stub zone corp.internal.example.com where example.com is DNSSEC-signed and authoritative); (4) the resolver cache contains a DNSSEC-secure NXDOMAIN from the signed parent for the intermediate label (e.g., example.com has returned a signed NXDOMAIN for internal.example.com, which occurs naturally whenever no such delegation exists in the signed parent zone); (5) a DNS query is made specifically for the intermediate label between the stub/forward apex and the DNSSEC parent (e.g., a query for internal.example.com). What limits exploitation: attackers cannot trigger this against arbitrary targets - the private namespace topology and signed parent must already be in place; the impact is strictly availability (resolution fails) with no confidentiality or integrity loss; and the bug only fires on the specific intermediate-label query, not on arbitrary queries to the stub zone itself.

Impact

The vendor-assigned CVSS 3.7 (AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L) accurately characterizes this as a low-severity but network-reachable flaw. AC:H is warranted because exploitation demands a specific DNS topology - a stub/forward zone nested two or more labels under a DNSSEC-signed public parent - plus a pre-existing cached DNSSEC-secure NXDOMAIN for the intermediate label, a condition that occurs naturally in common enterprise deployments. No EPSS score was provided in the available data, and this vulnerability is not listed in the CISA KEV catalog. No public proof-of-concept has been identified. The 'Authentication Bypass' tag in the source data is misleading - this is a DNS configuration bypass affecting availability, not an authentication mechanism bypass. The most significant real-world risk is to organizations relying on Unbound for private namespace resolution where stub or forward zones are configured under signed public parent zones; in those environments the impact is silent DNS resolution failure, which may be difficult to attribute to this flaw without specific knowledge of the bug. Environments that do not use such nested private namespaces face no meaningful risk regardless of CVSS score.

Exploit ScenarioDerived

In an enterprise using corp.internal.example.com as a stub zone in Unbound, where example.com is DNSSEC-signed and the resolver's cache holds a DNSSEC-secure NXDOMAIN for internal.example.com (populated by any prior legitimate query that returned no such delegation from example.com), a DNS query for internal.example.com triggers the off-by-one bug: the delegation guard passes at the stub apex, strips one more label, finds the cached signed NXDOMAIN for internal.example.com, and returns it, causing all subsequent queries to corp.internal.example.com to silently fail without ever contacting the stub upstream. No public proof-of-concept has been identified at time of analysis, and the AC:H rating reflects that this cache state arises naturally in typical deployments rather than requiring adversarial setup.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
Patch available 0.4% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jul 22, 2026

DNS stub and forward zone resolution in NLnet Labs Unbound 1.13.2 through 1.25.1 is silently bypassed due to an off-by-one error in the default-enabled harden-below-nxdomain feature. When a configured stub or forward zone apex is nested two or more labels beneath a DNSSEC-signed public zone and the resolver cache holds a DNSSEC-secure NXDOMAIN for the intermediate label, the guard logic walks one label too far, causing the stub/forward upstream to be permanently shadowed without error. No public exploit has been identified at time of analysis and CVSS 3.7 with AC:H reflects the narrow but realistic conditions common in enterprise private namespace deployments.

RemediationAI

Upgrade NLnet Labs Unbound to a version beyond 1.25.1; the exact patched release number is not confirmed in the available data and operators should consult the vendor advisory directly at https://www.nlnetlabs.nl/downloads/unbound/CVE-2026-44687.txt for the specific fix version before upgrading. As a configuration-level workaround, set harden-below-nxdomain: no in the Unbound configuration - this immediately eliminates the trigger condition but removes the DNSSEC negative-answer hardening protection that the feature provides, potentially exposing the resolver to other NXDOMAIN-related attacks; weigh this trade-off carefully in DNSSEC-validating environments. A structural workaround is to redesign the private namespace so that stub or forward zone apexes are not two or more labels beneath a DNSSEC-signed public zone (e.g., move from corp.internal.example.com to corp.internal.example under a separate non-signed TLD or to a single label below the signed parent), eliminating the topology that triggers the off-by-one walk; this approach requires DNS infrastructure changes but preserves harden-below-nxdomain functionality.

Affected VersionsENISA

Unbound 1.13.2 <1.25.2

Affected Packages

euvd unbound fix: 1.25.2

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Unbound is a validating, recursive, and caching DNS resolver developed by NLnet Labs, deployed extensively in enterprise, ISP, and government environments. The harden-below-nxdomain feature - enabled by default - performs an upward DNS cache walk with a delegation point guard intended to prevent NXDOMAIN synthesis above configured stub or forward zone apexes, protecting private namespace integrity. The root cause is CWE-193 (Off-by-One Error): the guard tests the domain name against the stub/forward apex before stripping a label rather than after. This creates a rogue iteration where the domain equals the configured apex, passes the guard, strips one additional label, and then probes the cache at the apex's immediate public parent. If that parent holds a cached DNSSEC-secure NXDOMAIN for the intermediate label - a predictable condition for any private namespace like corp.internal.example.com nested under a signed example.com - the walk returns that negative answer and the configured stub/forward upstream is never queried. Affected CPE: cpe:2.3:a:nlnet_labs:unbound:*:*:*:*:*:*:*:* spanning versions 1.13.2 through 1.25.1.

Know when Unbound gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (NLnet Labs) PRIMARY 3.7 LOW
AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
vuln.today AI 3.7 LOW

Requires specific cached DNSSEC-secure NXDOMAIN and namespace topology (AC:H); no credentials needed; impact is limited to availability as resolution silently fails with no data exposure.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
4.0 AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N

Primary rating from Vendor (NLnet Labs).

CVSS VectorVendor: NLnet Labs

Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
Low

Lifecycle Timeline

1
Patch available
Jul 22, 2026 - 16:18 EUVD

DescriptionCVE.org

In NLnet Labs Unbound 1.13.2 up to and including 1.25.1, stub or forward zones where the name is below an intermediate labed below a DNSSEC signed zone could be shadowed by the intermediate label's secure NXDOMAIN answer from the parent. This is caused by an off-by-one error in 'harden-below-nxdomain' logic; enabled by default. It effectively bypasses the configuration and the configured stub/forward zone is never contacted. 'harden-below-nxdomain' does an upward DNS cache walk together with a delegation point guard that does not allow NXDOMAIN synthesis above stub/forward zones. The guard tests the domain name but before stripping a label. This results in an iteration where the domain name equals the configured stub/forward zone apex that passes the guard, strips one more label, and probes the cache at the apex's immediate public parent. If that parent has a cached DNSSEC-secure NXDOMAIN, which it will for any private namespace nested two or more labels under a signed public name, the walk returns it and the configured stub/forward upstream is never contacted. This can only be triggered by the query for the intermediate label (between the stub/forward apex and the DNSSEC parent zone).

Threat Intelligence Overview

EPSS Score
0.4%
Top 73% exploitable
Prevalence
Medium
widely deployed DNS resolver in enterprise, ISP, and government environments
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity LOW
CISA KEV No
Public POC No
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Low
Technical Impact
Partial

Priority Score

18
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +18
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

CVE-2019-18934 HIGH POC
7.3 Nov 19

Unbound 1.6.4 through 1.9.4 contain a vulnerability in the ipsec module that can cause shell code execution after receiv

CVE-2026-81642 CRITICAL
9.1 Sep 16

A crafted DNSKEY whose owner name is a compression pointer into its own RDATA overflows the digest buffer in the DNSSEC

CVE-2026-33278 CRITICAL
9.1 May 20

Use-after-free in the DNSSEC validator of NLnet Labs Unbound resolver versions 1.19.1 through 1.25.0 allows remote attac

CVE-2026-42959 HIGH
8.7 May 20

Remote denial of service in NLnet Labs Unbound recursive DNS resolver (versions up to and including 1.25.0) allows an at

CVE-2026-42944 HIGH
8.7 May 20

Heap overflow denial-of-service in NLnet Labs Unbound recursive DNS resolver versions 1.14.0 through 1.25.0 allows remot

CVE-2026-82717 HIGH
8.4 Sep 16

Heap-based memory corruption in NLnet Labs Unbound up to and including 1.26.0 lets a remote, unauthenticated attacker wh

CVE-2019-16866 HIGH
7.5 Oct 03

Unbound before 1.9.4 accesses uninitialized memory, which allows remote attackers to trigger a crash via a crafted NOTIF

CVE-2026-32665 HIGH
7.5 Jul 22

Remote denial of service in NLnet Labs Unbound 1.22.0 through 1.25.1 lets an unauthenticated client exhaust configured m

CVE-2026-55973 HIGH
7.5 Jul 22

Remote denial-of-service in NLnet Labs Unbound 1.23.0 through 1.25.1 lets an attacker who controls a delegated DNS zone

CVE-2026-40691 HIGH
7.5 Jul 22

Remote denial-of-service in NLnet Labs Unbound 1.9.0 through 1.25.1 allows an unauthenticated attacker to crash the recu

CVE-2026-81634 HIGH
7.5 Sep 16

Heap buffer overflow in NLnet Labs Unbound 1.26.0 and earlier can be triggered when a resolver processing a large TCP-fr

CVE-2026-85501 HIGH
7.5 Sep 16

Denial-of-service through algorithmic complexity attacks in NLnet Labs Unbound up to and including 1.26.0 can degrade or

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy