Skip to main content

Zephyr RTOS EUVDEUVD-2026-43242

| CVE-2026-10665 HIGH
Out-of-bounds Write (CWE-787)
2026-07-12 zephyr
7.4
CVSS 3.1 · Vendor: zephyr
Share

Severity by source

Vendor (zephyr) PRIMARY
7.4 HIGH
AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:H
vuln.today AI
7.4 HIGH

Network-reachable via UDP (AV:N); only a session index, not an authenticator, is needed pre-auth (PR:N); overflow needs non-default buffer/MTU or fragment conditions (AC:H); memory corruption and DoS give I:H/A:H with no disclosure (C:N).

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:H
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (zephyr).

CVSS VectorVendor: zephyr

Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
High
Availability
High

Lifecycle Timeline

1
Analysis Generated
Jul 12, 2026 - 17:26 vuln.today

DescriptionCVE.org

In Zephyr's WireGuard subsystem (subsys/net/lib/wireguard), wg_process_data_message() in wg_crypto.c linearizes an inbound transport-data payload into a fixed pool buffer of CONFIG_WIREGUARD_BUF_LEN bytes before decryption. The call net_buf_linearize(buf->data, data_len, pkt->buffer, ..., data_len) passed the attacker-derived data_len as both the destination capacity and the copy length, defeating the function's internal len = min(len, dst_len) bound. data_len is derived from the received UDP datagram length and is only lower-bounded by wg_ctrl_recv() (no upper bound). When data_len exceeds CONFIG_WIREGUARD_BUF_LEN - e.g. when the buffer length is lowered below the link MTU, on links with MTU above the buffer size, or via reassembled IPv4/IPv6 fragments that exceed it - the underlying memcpy writes past the end of the pool buffer, an out-of-bounds write (CWE-787). The overflow occurs before the Poly1305 authentication check, so it requires only a valid receiver session index rather than a valid authenticator, and is reachable by a malicious or compromised peer (or an on-path attacker driving an established session) over the network, yielding remote memory corruption and at minimum a reliable denial of service. The defect was present in the WireGuard implementation shipped in Zephyr 4.4.0. The fix adds an explicit data_len > CONFIG_WIREGUARD_BUF_LEN rejection and corrects the linearize call to pass net_buf_max_len(buf) as the destination capacity.

AnalysisAI

Out-of-bounds write in the WireGuard subsystem of Zephyr RTOS 4.4.0 lets a malicious or compromised WireGuard peer (or an on-path attacker driving an established session) corrupt memory by sending an oversized transport-data datagram. Because the flawed copy occurs before the Poly1305 authentication check, exploitation needs only a valid receiver session index rather than a valid authenticator, and reliably yields at least a remote denial of service on the target device. There is no public exploit identified at time of analysis and the issue is not listed in CISA KEV; the Zephyr project has published advisory GHSA-3wqm-wgx2-9367 and an upstream fix.

Technical ContextAI

Zephyr is a widely-used open-source real-time operating system for resource-constrained embedded and IoT devices. The defect lives in its optional WireGuard VPN subsystem (subsys/net/lib/wireguard), specifically wg_process_data_message() in wg_crypto.c, which linearizes a fragmented inbound network buffer into a fixed pool buffer of CONFIG_WIREGUARD_BUF_LEN bytes prior to ChaCha20-Poly1305 decryption. The root cause (CWE-787, out-of-bounds write) is that net_buf_linearize() is called with the attacker-influenced data_len passed as BOTH the destination capacity and the copy length, which defeats the function's internal len = min(len, dst_len) safety clamp; the underlying memcpy then writes past the pool buffer. data_len originates from the received UDP datagram length and is only lower-bounded (never upper-bounded) by wg_ctrl_recv(). The affected component is identified by CPE cpe:2.3:a:zephyrproject:zephyr, and the fix both adds an explicit data_len > CONFIG_WIREGUARD_BUF_LEN rejection and passes net_buf_max_len(buf) as the true destination capacity.

RemediationAI

Apply the upstream fix from commit 6d8bb28dc9064e05e52b5a00b2998ecc663e38cb (https://github.com/zephyrproject-rtos/zephyr/commit/6d8bb28dc9064e05e52b5a00b2998ecc663e38cb), which adds an explicit data_len > CONFIG_WIREGUARD_BUF_LEN rejection and corrects the linearize call to use net_buf_max_len(buf) as the destination capacity; the corresponding advisory is GHSA-3wqm-wgx2-9367. Upstream fix is available as a commit; a specific released/tagged patched version is not independently confirmed from the input, so rebuild firmware from a tree that includes this commit. If you cannot rebuild immediately, compensating controls include ensuring CONFIG_WIREGUARD_BUF_LEN is set at least as large as the link MTU so a single unfragmented datagram cannot exceed the buffer (trade-off: higher static memory use per pool buffer on constrained devices), disabling IPv4/IPv6 fragment reassembly on the WireGuard-facing interface to remove the oversized-reassembly path (trade-off: legitimate large fragmented traffic will be dropped), and disabling the WireGuard subsystem entirely if it is not in use (trade-off: loss of VPN functionality). Restricting which peers can establish sessions and network-segmenting the device also reduces the attacker set.

More in Zephyr

View all
CVE-2023-4260 CRITICAL POC
10.0 Sep 27

Potential off-by-one buffer overflow vulnerability in the Zephyr fuse file system. Rated critical severity (CVSS 10.0),

CVE-2023-5055 CRITICAL POC
9.8 Nov 21

Possible variant of CVE-2021-3434 in function le_ecred_reconf_req. Rated critical severity (CVSS 9.8), this vulnerabilit

CVE-2023-4257 CRITICAL POC
9.8 Oct 13

Unchecked user input length in /subsys/net/l2/wifi/wifi_shell.c can cause buffer overflows. Rated critical severity (CVS

CVE-2023-3725 CRITICAL POC
9.8 Oct 06

Potential buffer overflow vulnerability in the Zephyr CAN bus subsystem. Rated critical severity (CVSS 9.8), this vulner

CVE-2021-3323 CRITICAL POC
9.8 Oct 12

Integer Underflow in 6LoWPAN IPHC Header Uncompression in Zephyr. Rated critical severity (CVSS 9.8), this vulnerability

CVE-2021-3625 CRITICAL POC
9.8 Oct 05

Buffer overflow in Zephyr USB DFU DNLOAD. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitable

CVE-2021-3319 CRITICAL POC
9.8 Oct 05

DOS: Incorrect 802154 Frame Validation for Omitted Source / Dest Addresses. Rated critical severity (CVSS 9.8), this vul

CVE-2018-1000800 CRITICAL POC
9.8 Sep 06

zephyr-rtos version 1.12.0 contains a NULL base pointer reference vulnerability in sys_ring_buf_put(), sys_ring_buf_get(

CVE-2023-4264 CRITICAL POC
9.6 Sep 27

Potential buffer overflow vulnerabilities n the Zephyr Bluetooth subsystem. Rated critical severity (CVSS 9.6), this vul

CVE-2026-1678 CRITICAL POC
9.4 Mar 05

Buffer overflow in Zephyr RTOS dns_unpack_name() function causing OOB writes. PoC available.

CVE-2024-1638 CRITICAL POC
9.1 Feb 19

The documentation specifies that the BT_GATT_PERM_READ_LESC and BT_GATT_PERM_WRITE_LESC defines for a Bluetooth characte

CVE-2023-5753 HIGH POC
8.8 Oct 25

Potential buffer overflows in the Bluetooth subsystem due to asserts being disabled in /subsys/bluetooth/host/hci_core.c

Share

EUVD-2026-43242 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy