Zephyr RTOS
CVE-2026-10658
HIGH
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconGain control of Bluetooth controller or HCI link
-
DeliveryCraft HCI ISO packet with undersized SDU header
-
ExploitForward malformed frame to Zephyr Host
-
InstallPass outer hci_iso() length envelope check
-
C2net_buf_pull_mem() under-reads buffer
-
ExecuteAssert fires or OOB memory read
-
ImpactDevice crash or limited memory disclosure
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, read limits
MITRE ATT&CK
1 technique across 1 tactic: Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Target firmware must be built from Zephyr with the Bluetooth Host stack and CONFIG_BT_ISO_RX enabled, and the attacker must be able to deliver a crafted HCI ISO Data packet with PB=START or PB=SINGLE and a payload length below the inner SDU header size (1 byte suffices to bypass hci_iso() while underflowing the 4- or 8-byte pull). The realistic delivery path is a malicious or compromised Bluetooth controller, a tampered HCI transport (UART/USB/SPI) between Host and Controller, or forwarded ISO traffic that reaches the Host through an intermediary; pure over-the-air injection by an arbitrary remote Bluetooth peer is not asserted by the description. Limiting factors: requires adjacent-network access per CVSS AV:A, requires CONFIG_BT_ISO_RX (not enabled in non-LE-Audio builds), and the more severe OOB read behavior is gated on builds with assertions disabled. |
| Impact | The CVSS 3.1 vector AV:A/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:H yields 7.1 (High) and is consistent with the description: the attack vector is adjacent (Bluetooth controller link), unauthenticated, with low complexity and a primary availability impact, plus a minor confidentiality impact reflecting the possible OOB read in non-assert builds. There is no EPSS data, no KEV listing, and no public POC referenced beyond the vendor GHSA advisory, so this should be treated as a vendor-disclosed defect rather than active in-the-wild exploitation. Realistic risk is highest for devices where the Bluetooth controller is a separate, potentially compromisable component (e.g., HCI-over-UART/USB designs) or where forwarded ISO traffic from peers can reach the Host; pure single-chip designs with a trusted controller face lower exposure. Note that confidentiality being rated C:L while the description emphasizes DoS plus possible OOB read aligns reasonably, but defenders should verify whether their build has assertions enabled, since assert-disabled builds shift the failure mode from clean crash to potential memory disclosure. |
| Exploit ScenarioDerived | An attacker who controls or compromises the Bluetooth controller attached to a Zephyr Host (for example, via a malicious USB Bluetooth dongle, a tampered HCI-UART link, or a compromised co-processor) sends an HCI ISO Data packet whose payload length passes the outer hci_iso() check but is smaller than the required 4- or 8-byte SDU header. bt_iso_recv() then invokes net_buf_pull_mem() on an undersized buffer, deterministically asserting and crashing the device in assert-enabled builds, or reading beyond the buffer in non-assert builds. No public exploit identified at time of analysis, but the trigger is a single malformed packet requiring no authentication. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jun 23, 2026
Denial-of-service and potential out-of-bounds read in the Zephyr RTOS Bluetooth Host ISO receive path allows a malicious or compromised Bluetooth controller to crash devices using CONFIG_BT_ISO_RX by sending malformed HCI ISO packets with undersized SDU headers. The flaw resides in bt_iso_recv() within subsys/bluetooth/host/iso.c, where header bytes are pulled without prior length validation. No public exploit identified at time of analysis, and the issue is not listed in CISA KEV.
RemediationAI
Upstream fix available (PR/commit per GHSA-26g8-rmpf-j6cw); released patched version not independently confirmed from the provided data - consult https://github.com/zephyrproject-rtos/zephyr/security/advisories/GHSA-26g8-rmpf-j6cw and update to the corresponding Zephyr LTS or main-branch tag once identified, then rebuild and reflash affected firmware. If patching is not immediately feasible, the most direct compensating control is to disable CONFIG_BT_ISO_RX in Kconfig for devices that do not require LE Audio reception, which fully removes the vulnerable code path but breaks any ISO-based audio or isochronous data feature; alternatively, enforce a trusted controller boundary (e.g., integrated controller, signed controller firmware, or physically protected HCI transport) so that malformed HCI ISO frames cannot be injected. Keeping assertion builds enabled converts the issue from possible OOB read to a clean fault, which is preferable for safety-critical or attended devices but unacceptable where availability is paramount.
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Zephyr is a widely used open-source real-time operating system for resource-constrained connected and IoT devices, maintained by the Zephyr Project (a Linux Foundation project) and indexed in CPE as cpe:2.3:a:zephyrproject-rtos:zephyr. The vulnerability sits in the Bluetooth Host's Isochronous Channel (ISO) receive logic, used for LE Audio and similar features. When processing PB=START or PB=SINGLE fragments, bt_iso_recv() calls net_buf_pull_mem() to remove an 8-byte timestamped or 4-byte non-timestamped SDU header from the packet buffer without first checking that buf->len holds at least that many bytes. The outer hci_iso() handler validates the HCI ISO payload length envelope but does not enforce a minimum inner SDU header size. This is a classic missing-bounds-check pattern (CWE-125 out-of-bounds read / CWE-1284 improper validation of specified quantity in input), where the net_buf_pull_mem() assertion fires in assert-enabled builds and silent under-read corruption can occur otherwise.
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
AV:A/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:H
Adjacent Bluetooth/HCI vector, no auth or UI, deterministic crash gives A:H, possible OOB read in non-assert builds justifies C:L, no integrity impact.
Primary rating from Vendor (zephyr).
CVSS VectorVendor: zephyr
DescriptionCVE.org
A missing length validation in the Zephyr Bluetooth Host ISO receive path can be triggered by malformed HCI ISO data. In bt_iso_recv() (subsys/bluetooth/host/iso.c), when processing PB=START/SINGLE fragments, the code pulls a TS SDU header (8 bytes, ts=1) or a non-TS SDU header (4 bytes, ts=0) without first verifying that buf->len contains at least that many bytes. The outer HCI ISO length check in hci_iso() validates payload length consistency but not the minimum inner SDU header size, so a packet with payload length 1 passes hci_iso() and then reaches net_buf_pull_mem(), which asserts buf->len >= len. As a result, malformed ISO traffic deterministically triggers a kernel assert (denial of service) in assert-enabled builds, and in non-assert builds the same path may proceed with an undersized buffer, leading to out-of-bounds read behavior. The issue affects products using the Zephyr Host with CONFIG_BT_ISO_RX enabled, particularly where incoming HCI data can be influenced by a malicious or compromised controller or malformed forwarded ISO traffic.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
Affected Products (CPE)CVE.org
Potential off-by-one buffer overflow vulnerability in the Zephyr fuse file system. Rated critical severity (CVSS 10.0),
An out-of-bounds write in the Zephyr RTOS DNS resolver (dns_unpack_name()) lets a crafted DNS response corrupt memory on
Possible variant of CVE-2021-3434 in function le_ecred_reconf_req. Rated critical severity (CVSS 9.8), this vulnerabilit
Unchecked user input length in /subsys/net/l2/wifi/wifi_shell.c can cause buffer overflows. Rated critical severity (CVS
Potential buffer overflow vulnerability in the Zephyr CAN bus subsystem. Rated critical severity (CVSS 9.8), this vulner
Integer Underflow in 6LoWPAN IPHC Header Uncompression in Zephyr. Rated critical severity (CVSS 9.8), this vulnerability
Buffer overflow in Zephyr USB DFU DNLOAD. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitable
DOS: Incorrect 802154 Frame Validation for Omitted Source / Dest Addresses. Rated critical severity (CVSS 9.8), this vul
zephyr-rtos version 1.12.0 contains a NULL base pointer reference vulnerability in sys_ring_buf_put(), sys_ring_buf_get(
Potential buffer overflow vulnerabilities n the Zephyr Bluetooth subsystem. Rated critical severity (CVSS 9.6), this vul
The documentation specifies that the BT_GATT_PERM_READ_LESC and BT_GATT_PERM_WRITE_LESC defines for a Bluetooth characte
Potential buffer overflows in the Bluetooth subsystem due to asserts being disabled in /subsys/bluetooth/host/hci_core.c
NVD
CVE.org
EPSS
Vulnrichment
GitHub
VulDB
Exploit-DB