Impact
A malformed Bluetooth Classic Discovery Protocol (SDP) attribute can trigger an out‑of‑bounds read in Zephyr's SDP parser. The parser verifies that a buffer contains at least a type marker and a 2‑byte attribute ID, but then attempts to read a fourth byte – the data‑element descriptor – without verifying its existence. When a remote SDP server sends an attribute exactly three bytes long, the net_buf_simple_pull_u8() call dereferences a byte beyond the logical buffer, resulting in a single‑byte read past the end. The read value is used only as an internal length selector and is never supplied to the attacker, so no sensitive data is disclosed. Subsequent checks reject the malformed record, meaning the realistic impact is limited to an edge‑case denial of service: the system may crash only if the record ends exactly at a mapped‑memory boundary, or trigger an assertion panic when CONFIG_ASSERT=y.
Affected Systems
The vulnerability affects Zephyr RTOS v4.3.0 and v4.4.0; the affected code is the SDP parser in subsys/bluetooth/host/classic/sdp.c and is reachable via inbound, remote‑controlled SDP data from any Bluetooth BR/EDR peer acting as an SDP server.
Risk and Exploitability
The CVSS score of 7.1 indicates moderate risk. The EPSS score of < 1% suggests the likelihood of exploitation is very low, and the vulnerability is not listed in the CISA KEV catalog. It is a remote vulnerability that requires a nearby device to initiate a Bluetooth Classic connection and transmit a specially crafted SDP attribute. Successful exploitation would cause a crash or assertion failure rather than data disclosure.
OpenCVE Enrichment