CVE-2026-126410: Wasmtime 48.0.0 before 48.0.8 TOCTOU UDP Send Policy Bypass via wasip3 Sockets
Wasmtime's wasmtime-wasi crate 48.0.0 before 48.0.8, 49.0.0 before 49.0.5, and 50.0.0 before 50.0.1 contains a time-of-check/time-of-use race in the wasip3 wasi:sockets udp-socket host implementation that lets guests bypass socketaddrcheck send restrictions. A malicious guest can race udp-socket.send against udp-socket.connect to deliver attacker-controlled datagrams to addresses the policy permits only for receiving.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
wasmtime-wasito a version that resolves this vulnerability.Fixed in 48.0.8 - Upgrade
Upgrade
wasmtime-wasito a version that resolves this vulnerability.Fixed in 49.0.5 - Upgrade
Upgrade
wasmtime-wasito a version that resolves this vulnerability.Fixed in 50.0.1
Event History
Frequently Asked Questions
Which deployments are exposed to this issue?
Deployments using the wasmtime-wasi crate with the wasip3 wasi:sockets UDP host implementation are affected if they run versions 48.0.0 through 48.0.7, 49.0.0 through 49.0.4, or 50.0.0. The issue is relevant where socket_addr_check is relied on to restrict UDP send destinations.
What does an attacker need to exploit the bypass?
An attacker needs to control a guest running in the affected Wasmtime environment and be able to race udp-socket.send with udp-socket.connect. Successful exploitation can send attacker-controlled UDP datagrams to addresses that the policy allows only as receive destinations.
What versions address the issue?
Upgrade to wasmtime-wasi 48.0.8, 49.0.5, or 50.0.1 or later within the applicable release line.