Home

Description

NLnet Labs Unbound 1.19.1 up to and including version 1.25.0 has a vulnerability in the DNSSEC validator that enables denial of service and possible remote code execution as a result of deep copying a data structure and erroneously overwriting a destination pointer. An adversary can exploit the vulnerability by controlling a malicious signed zone and querying a vulnerable Unbound. When DS sub-queries need to suspend validation due to NSEC3 computational budget exhaustion (introduced in Unbound 1.19.1), Unbound deep-copies response messages to preserve them across memory region teardown. A struct-assignment bug overwrites the destination's pointer with the source's pointer. After the sub-query region is freed, the resumed validator dereferences this dangling pointer, triggering a crash or potentially enabling arbitrary code execution. Unbound 1.25.1 contains a patch with a fix to preserve the correct pointer when deep copying the data structure.

PUBLISHED Reserved 2026-05-07 | Published 2026-05-20 | Updated 2026-05-20 | Assigner NLnet Labs




CRITICAL: 9.1CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:U/U:Red

Problem types

CWE-416: Use After Free

CWE-672: Operation on a Resource after Expiration or Release

Product status

Default status
unaffected

1.19.1 (semver) before 1.25.1
affected

Timeline

2026-04-15:Issue reported by Qifan Zhang
2026-04-29:NLnet Labs shares patch
2026-04-29:Qifan Zhang verifies patch
2026-05-20:Fixes released with version 1.25.1

Credits

Qifan Zhang (Palo Alto Networks) finder

References

www.nlnetlabs.nl/downloads/unbound/CVE-2026-33278.txt vendor-advisory

cve.org (CVE-2026-33278)

nvd.nist.gov (CVE-2026-33278)

Download JSON