CVE-2026-50046
Received Received - Intake

Use-After-Free in NLnet Labs Unbound DNS Server

Vulnerability report for CVE-2026-50046, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-07-22

Last updated on: 2026-07-22

Assigner: NLnet Labs

Description

In NLnet Labs Unbound 1.15.0 up to and including 1.25.1, the TLS server name used for DNS-over-TLS (DoT) forwarded queries is tied to a struct's ('serviced_query') lifetime but also referenced by another struct ('waiting_tcp'). When the owning struct is jostled out of the mesh while the DoT TCP stream is still handshaking it frees the storage behind the referenced string and if the TLS stream then errors out, it dereferences the freed pointer. The dereference is read-only and the practical impact is a daemon crash resulting in denial of service. A malicious actor that knows a DoT forwarding/stub Unbound's configuration could exploit the vulnerability by quering records in the appropriate zone while keeping Unbound uder pressure so that the jostle logic kicks in. If answers for the vulnerable zone are slow, the likelihood of jostling such queries is higher, although the timing of the jostle needs to be precise. Requirements for a vulnerable Unbound is the existence of a stub/forward zone configured for DoT together with a configured '#authname' suffix on the server identification. The connectivity to the server needs to exhibit a transient failure at the correct time in order to kick off the vulnerable error path.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-07-22
Last Modified
2026-07-22
Generated
2026-07-22
AI Q&A
2026-07-22
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 3 associated CPEs
Vendor Product Version / Range
nlnet_labs unbound to 1.25.1 (inc)
nlnetlabs unbound From 1.15.0 (inc) to 1.25.1 (inc)
nlnetlabs unbound 1.25.2

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-416 The product reuses or references memory after it has been freed. At some point afterward, the memory may be allocated again and saved in another pointer, while the original pointer references a location somewhere within the new allocation. Any operations using the original pointer are no longer valid because the memory "belongs" to the code that operates on the new pointer.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

CVE-2026-50046 is a use-after-free vulnerability in Unbound DNS software versions 1.15.0 to 1.25.1. It occurs when a TLS server name for DNS-over-TLS queries is tied to a struct's lifetime but referenced by another struct during a handshake. If the owning struct is removed while the DoT TCP stream is still handshaking, the server name storage is freed. If the TLS stream errors afterward, it dereferences the freed pointer, causing the daemon to crash and resulting in a denial of service.

Detection Guidance

Detection involves checking Unbound version and configuration. Run 'unbound -V' to verify if your version is between 1.15.0 and 1.25.1. Inspect configuration files for stub/forward zones with DoT and '#authname' suffix. Monitor logs for daemon crashes during DoT handshakes.

Impact Analysis

The vulnerability can cause your Unbound DNS server to crash, leading to a denial of service. This disrupts DNS resolution for users relying on the server, causing potential downtime or degraded performance. Attackers could exploit this by sending specific queries while keeping the server under load to trigger the crash.

Compliance Impact

This vulnerability causes a denial of service (DoS) by crashing the Unbound DNS daemon, which could disrupt DNS resolution services. For GDPR, this may impact availability of services relying on DNS, potentially affecting data processing operations. For HIPAA, DNS outages could disrupt healthcare systems dependent on timely domain resolution, though direct data exposure is not indicated.

Mitigation Strategies

Upgrade Unbound to version 1.25.2 or later. If upgrading is not possible, apply the manual patch provided by NLnet Labs. Remove or modify configurations using stub/forward zones with DoT and '#authname' suffix until patched.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-50046. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart