Unbound 1.141.25 UAF via RPZ XFR Reload Lock Inconsistency
CVE-2026-44608 Published on May 20, 2026

Use after free and crash under special conditions in RPZ code
NLnet Labs Unbound 1.14.0 up to and including version 1.25.0 has a locking inconsistency vulnerability that when certain conditions are met (multi-threaded, RPZ XFR reload, RPZ zone with 'rpz-nsip'/'rpz-nsdname' triggers) it could result in heap use-after-free and eventual crash. An adversary can exploit the vulnerability if conditions are first met on a vulnerable Unbound, i.e., multi-threaded, an RPZ zone with 'rpz-nsip'/'rpz-nsdname' triggers and an ongoing XFR for that RPZ zone. Local RPZ files do not trigger the vulnerability. If the timing is right and an XFR happens at the same time another thread needs to read that RPZ zone, the reader may not hold the lock long enough and the thread applying the XFR may free objects that the reader is about to walk causing the use-after-free. Unbound 1.25.1 contains a patch with a fix to the locking code.

Vendor Advisory NVD

Timeline

Issue reported by Qifan Zhang

NLnet Labs shares patch 9 days later.

Qifan Zhang verifies patch 1 day later.

Fixes released with version 1.25.1 12 days later.

Weakness Type

Improper Resource Locking

The software does not lock or does not correctly lock a resource when the software must have exclusive access to the resource. When a resource is not properly locked, an attacker could modify the resource while it is being operated on by the software. This might violate the software's assumption that the resource will not change, potentially leading to unexpected behaviors.


Products Associated with CVE-2026-44608

Want to know whenever a new CVE is published for Nlnetlabs Unbound? stack.watch will email you.

 

Affected Versions

NLnet Labs Unbound: