Skip to main content
Meet us at Black Hat USA 2026— Las Vegas, August 1–6Book a Meeting
Mallory
Unrated

Use-after-return in Zephyr getaddrinfo() asynchronous DNS retry handling

IdentifiersCVE-2026-10646CWE-562

CVE-2026-10646 is a use-after-return flaw in Zephyr's BSD-sockets getaddrinfo() implementation in subsys/net/lib/sockets/getaddrinfo.c affecting Zephyr v4.0.0 through v4.4.0. The vulnerable code stores a pointer to a stack-allocated struct getaddrinfo_state object (ai_state) in the user_data field of an asynchronous DNS resolver query. If the socket layer's semaphore wait times out with -EAGAIN, the pre-fix logic retries the DNS query via goto again without cancelling the prior outstanding resolver query and without resetting the semaphore. As a result, the earlier resolver slot remains active and still references the stale stack pointer in its callback context, while ai_state.dns_id is overwritten, preventing later cancellation of the stale query. When a delayed DNS response is later processed, or when the resolver's delayed timeout work fires, dns_resolve_cb() is invoked with the stale user_data pointer and writes into memory belonging to an out-of-scope stack frame, including state fields such as status, idx, ai_arr[] and signaling the semaphore via k_sem_give(). This creates a network-influenceable use-after-return condition that can corrupt reused stack memory.

Share:
For your environment

Are you exposed to this one?

Mallory correlates every CVE against your assets, your vendors, and active adversary campaigns. Know which vulnerabilities matter for you, not just which ones are loud.

ANALYST BRIEF

Impact, mitigation & remediation

What it means. What to do now. Patch path, mitigations, and the assume-compromise checklist.

Impact

What an attacker gets, and what they’ve been doing with it.

Successful exploitation can cause memory corruption in reused stack memory, resulting in process or system instability, crashes, and denial of service. Because the stale callback can be triggered by a later DNS response matched on a spoofable or replayable 16-bit DNS transaction ID, an attacker with suitable network position or packet injection capability may be able to influence the timing and triggering of the invalid callback. The primary demonstrated impact from the provided information is denial of service and memory corruption; further impact such as more controlled code execution is not established by the provided content.

Mitigation

If you can’t patch tonight, do this now.

Until patched, reduce exposure by limiting attacker ability to inject or spoof DNS responses, including using trusted network paths and restricting access to DNS traffic where feasible. Avoid configurations that increase the likelihood of the timeout/retry race, particularly documented multi-retry settings where CONFIG_NET_SOCKETS_DNS_TIMEOUT exceeds CONFIG_NET_SOCKETS_DNS_BACKOFF_INTERVAL, and minimize resolver/workqueue contention that could delay timeout handling. These are partial mitigations only; patching is the reliable fix.

Remediation

Patch, then assume compromise.

Upgrade Zephyr to a fixed release newer than v4.4.0 containing the patch for CVE-2026-10646. The fix cancels the timed-out DNS query by name and type before retrying and resets the local semaphore before issuing a new query, removing the stale callback path to the stack-allocated state object.
PUBLIC EXPLOITS

Exploits

No public exploits tracked yet. Mallory keeps watching.

VALID 0 / 0 TOTALView more in app

No public exploit code observed for this vulnerability.

ACTIVITY FEED

Recent activity

8 sources tracked across advisories and community write-ups. News coverage will land here when it surfaces.

No news coverage yet. Advisories and community discussion only.

What this page doesn’t show

The version that knows your environment.

This page is what’s public. Mallory adds the parts that aren’t: which of your assets are affected, which adversaries are exploiting it right now, which detections to deploy, and what to do tonight.
Exposure mapping

Query your assets running an affected version, and investigate the blast radius.

Threat actor evidence

Every observed campaign linking this CVE to a named adversary.

Associated malware

Malware families riding this exploit, with evidence and IOCs.

Detection signatures

YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.

Vendor-by-vendor mapping

Cross-references every affected SKU, including bundled OEM variants.

Social activity8

Community discussion across Reddit, Mastodon, and other social sources.