Skip to main content

Zephyr RTOS EUVDEUVD-2026-68658

| CVE-2026-14366 MEDIUM
Use After Free (CWE-416)
2026-08-31 zephyr
6.4
CVSS 3.1 · Vendor: zephyr
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Gain WiFi adjacency to target
  2. Delivery
    Send ARP or ICMP requests to target
  3. Exploit
    Induce outbound transmissions through siwx91x_send()
  4. Execution
    Race concurrent pool activity to win double-free
  5. Persist
    Corrupt live packet refcount in net_pkt pool
  6. Impact
    Crash or hang networking stack

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Memory lifecycle management
MITRE ATT&CK

2 techniques across 2 tactics: Execution, Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

The target must be running Zephyr RTOS with the SiWx917 WiFi driver built with CONFIG_WIFI_SILABS_SIWX91X_NET_STACK_NATIVE enabled - this is the default configuration for SiWx917 board targets, so no non-default operator configuration is required. The attacker must be on the same WiFi Layer 2 segment as the target (WiFi association to the same BSS or access point) to send packets that elicit outbound transmissions; remote internet-based attackers cannot reach this code path. Valid trigger mechanisms include ARP requests (eliciting ARP replies), ICMP echo requests (eliciting echo replies), and TCP SYN packets (eliciting SYN-ACK responses). Successful pool corruption additionally depends on winning a timing race between concurrent network pool activity and the double-free, corresponding to CVSS AC:H - reliable triggering is non-trivial and not deterministic per packet. Exploitation is bounded by: (1) mandatory WiFi Layer 2 adjacency, (2) the race condition dependency, and (3) the niche embedded deployment footprint of Zephyr/SiWx917 hardware.

Impact

The CVSS 3.1 score of 6.4 (Medium) with AV:A/AC:H accurately reflects the exploitation constraints: the attacker must share Layer 2 WiFi adjacency with the target and must also win a timing race against concurrent pool activity, which together suppress the practical exploitation rate below what the availability impact alone might suggest. No EPSS score was provided in the intelligence inputs; absent that signal, the high-complexity race condition and the narrow embedded hardware deployment context indicate targeted rather than opportunistic exploitation risk. No KEV listing and no public exploit code have been identified at time of analysis. That said, the operational severity for affected deployments is real: availability loss in IoT edge nodes, industrial controllers, or networked embedded systems running Zephyr with SiWx917 hardware can be mission-critical, and the vulnerability is active in the default build configuration requiring no operator misconfiguration to be present. The secondary C:L and I:L signals represent race-dependent possibilities - pool content disclosure or in-flight packet integrity corruption - that are plausible but not guaranteed per transmission. The patch is a trivial one-line change with minimal regression risk, making the remediation cost extremely low relative to the residual exposure.

Exploit ScenarioDerived

An attacker authenticated to the same WiFi access point as a Zephyr/SiWx917 embedded device sends a stream of ARP requests and ICMP echo requests to the device's IP address, inducing repeated outbound ARP replies and ICMP replies. Each reply traverses the siwx91x_send() double-free path; when a concurrent receive interrupt recycles the freed net_pkt slab slot between the driver's unref and the caller's unref, the second unref corrupts a live packet's reference count, ultimately hanging or crashing the networking stack. No public exploit code has been identified at time of analysis.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 31, 2026

Use-after-free and double-free memory corruption in the Silicon Labs SiWx917 WiFi driver for Zephyr RTOS enables an adjacent unauthenticated attacker to corrupt the kernel networking buffer pool and crash the device. The driver's siwx91x_send() incorrectly releases a net_pkt owned by the L2 ethernet stack, causing use-after-free reads and a double-free when the caller accesses and unrefs the same packet; under concurrent network load, the trailing unref corrupts a live packet's reference count drawn from the recycled slab slot. No public exploit has been identified at time of analysis, but the vulnerable code path is compiled in by default and is exercisable via ordinary WiFi traffic that any adjacent-network peer can induce.

RemediationAI

The upstream fix is available as commit 680a351c7dd0ba46eb67d9c0e7165d901a7bd3d1 at https://github.com/zephyrproject-rtos/zephyr/commit/680a351c7dd0ba46eb67d9c0e7165d901a7bd3d1, which removes the single erroneous net_pkt_unref(pkt) line from siwx91x_send(). Patch is available per vendor advisory; the first tagged Zephyr release incorporating this fix is not independently confirmed from the provided data - consult GHSA-f9qq-jv4w-pqxg for the precise patched release version before deploying. Product teams building firmware on Zephyr with SiWx917 hardware should cherry-pick this commit or rebase to a confirmed patched SDK version. As a compensating control prior to patching, setting CONFIG_WIFI_SILABS_SIWX91X_NET_STACK_NATIVE=n in the build configuration disables the vulnerable code path entirely, though this may require switching to an alternative network stack integration and should be validated against application requirements. Network-level isolation - placing SiWx917-based devices on dedicated WiFi segments or VLANs with strict Layer 2 access controls - reduces the attacker's ability to achieve the required WiFi adjacency and limits the pool of peers that can induce triggering transmissions.

Affected VersionsENISA

Zephyr 4.1.0 <4.4.2

Affected Packages

euvd zephyr fix: 4.4.2

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The affected component is the Zephyr RTOS WiFi driver for the Silicon Labs SiWx917 SoC (CPE: cpe:2.3:a:zephyrproject:zephyr:*:*:*:*:*:*:*:*), specifically siwx91x_send() in drivers/wifi/siwx91x/siwx91x_wifi.c. Zephyr's TX ownership model grants the driver only a borrowed reference to a net_pkt whose lifecycle is managed by the L2 ethernet layer in subsys/net/l2/ethernet/ethernet.c; the driver's sole responsibility is to copy frame bytes into a local net_buf for hardware DMA. The defect (CWE-416: Use After Free) is a misplaced net_pkt_unref(pkt) call in the driver that prematurely returns the borrowed packet to the shared slab pool. The caller, ethernet_send(), then performs post-transmit operations on the freed memory - invoking net_pkt_get_len(pkt) and updating TX statistics - constituting use-after-free reads. Its subsequent net_pkt_unref(pkt) is a double-free. When concurrent RX or TX activity recycles the freed slab slot between the two unrefs, the second unref decrements the reference count of a different, live packet, freeing it into the pool while it is still in use and corrupting the net_pkt pool shared across both receive and transmit paths. The fix confirmed by the upstream commit is a one-line removal of the erroneous unref; the driver's receive-path unref, which legitimately frees a driver-allocated packet, is unaffected.

Know when Zephyr gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

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

Adjacent vector matches WiFi-only Layer 2 reachability; race condition dependency warrants AC:H; inducing transmissions requires no privileges or user interaction.

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

Primary rating from Vendor (zephyr).

CVSS VectorVendor: zephyr

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

DescriptionCVE.org

The Silicon Labs SiWx917 WiFi driver's transmit callback siwx91x_send() in drivers/wifi/siwx91x/siwx91x_wifi.c frees a network packet it does not own. In the Zephyr TX path the net_pkt is owned by the L2/networking stack; the driver only borrows it to copy the frame bytes into a local net_buf. Before the fix, after transmitting, siwx91x_send() additionally called net_pkt_unref(pkt) on the caller-owned packet, dropping its last reference and returning it to the shared packet pool prematurely. This code path is compiled in by default (CONFIG_WIFI_SILABS_SIWX91X_NET_STACK_NATIVE).

The caller, ethernet_send() in subsys/net/l2/ethernet/ethernet.c, keeps using the packet after the driver returns: it reads net_pkt_get_len(pkt), updates TX statistics, and then performs its own net_pkt_unref(pkt). Because the driver already released the packet, these are use-after-free reads followed by a second unref (a double free). When concurrent network activity recycles the freed slab slot between the two unrefs, the trailing unref decrements a different, live packet's reference count and frees it, corrupting the net_pkt pool shared by both the receive and transmit paths.

The defect is exercised by ordinary transmission over the native-stack SiWx917 WiFi interface, and an adjacent attacker on the same WiFi network can induce transmissions (for example ARP or ICMP echo replies, or TCP handshakes) to drive the path. The primary observable impact is loss of availability (transmit hangs and crashes from pool corruption), with race-dependent memory corruption of the kernel networking buffer pool. The fix removes the erroneous net_pkt_unref(pkt) from siwx91x_send(); the driver's receive-path unref, which correctly frees a packet the driver itself allocated, is unaffected.

Threat Intelligence Overview

EPSS Score
0.2%
Top 94% exploitable
Prevalence
Low
niche embedded RTOS targeting specific Silicon Labs SiWx917 IoT hardware
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Controlled
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

32
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +32
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Use-after-free vulnerabilities occur when a program continues to access memory through a pointer after that memory has been deallocated.

Memory corruption occurs when a program writes data beyond the boundaries of allocated memory regions or accesses memory in unintended ways, violating the integrity of the process's address space.

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-2026-1678 CRITICAL POC
9.8 Mar 05

An out-of-bounds write in the Zephyr RTOS DNS resolver (dns_unpack_name()) lets a crafted DNS response corrupt memory on

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-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

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