CVE-2026-10651: Out-of-bounds read in Bluetooth Classic SDP attribute parsing (`bt_sdp_parse_attribute`)
btsdpparseattribute() in subsys/bluetooth/host/classic/sdp.c validated only that the SDP record buffer held the type-marker byte plus the 2-byte attribute ID (a check of buf->len < 3) but then read a fourth byte, the data-element descriptor (type), via netbufsimplepullu8(). Because netbufsimplepullu8() dereferences buf->data[0] before its only bounds guard (an ASSERTNOMSG that compiles out when CONFIGASSERT is disabled, the production default), a record of exactly three bytes (0x09 followed by a 2-byte attribute ID) causes a one-byte read past the end of the logical buffer. The parser is reachable from inbound, remote-controlled data: a Bluetooth BR/EDR peer acting as an SDP server returns discovery-response records that are stored verbatim in the client receive buffer and parsed via the public btsdpgetattr()/btsdphasattr()/btsdprecordparse() helpers. The over-read is bounded to a single byte that is used only as an internal length selector and is never leaked to the attacker; subsequent length checks then reject the malformed record. Realistic impact is therefore limited to an edge-case denial of service (a fault only if the record ends exactly at a mapped-memory boundary, or a deterministic assert panic when CONFIGASSERT=y). Affects Zephyr v4.3.0 and v4.4.0; fixed by adding sizeof(type) to the length check.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Configuration
Ensure CONFIG_ASSERT is enabled so the __ASSERT_NO_MSG bounds guard in net_buf_simple_pull_u8() is not compiled out, preventing the out-of-bounds read from turning into a production fault.
Zephyr/ASSERT CONFIG_ASSERT = enable/disable
Event History
Frequently Asked Questions
What is the severity of CVE-2026-10651?
The severity of CVE-2026-10651 is rated as high with a score of 7.1.
How do I fix CVE-2026-10651?
To fix CVE-2026-10651, update to the latest version of Zephyr RTOS where the vulnerability has been patched.
What is the impact of CVE-2026-10651?
CVE-2026-10651 can lead to a reachable assertion and possible out-of-bounds read, which could compromise system integrity.
Which software is affected by CVE-2026-10651?
The vulnerability affects the Zephyr Project's Zephyr RTOS.
What does CVE-2026-10651 exploit in Bluetooth Classic?
CVE-2026-10651 exploits a truncation bug in the Bluetooth Classic SDP parser that occurs due to improper input validation.