Skip to main content
EPSS 0.2%top 96%

CVE-2026-12236: dos in zephyrproject zephyr

0
Medium
VulnerabilityCVE-2026-12236cvecve-2026-12236
Published: 08/13/2026 (08/13/2026, 17:19:58 UTC)
Source: CVE Database V5
Vendor/Project: zephyrproject
Product: zephyr

Description

The Bluetooth host GATT client function parse_read_std_char_desc() in subsys/bluetooth/host/gatt.c parses an ATT Read By Type Response received from a remote GATT server during BT_GATT_DISCOVER_STD_CHAR_DESC discovery. The per-entry stride rsp->len is taken directly from the peer's PDU, and the parse loop both tests its exit condition (length >= rsp->len) and advances (length -= rsp->len, pdu += rsp->len) using that value. The minimum value of rsp->len was never validated before the loop. A malicious or malfunctioning peer can reply with rsp->len = 0. Because length is unsigned and never decreases, the loop condition stays true forever and the read pointer never advances; as long as the body is at least a few bytes with a non-zero handle and a matching descriptor UUID, the host repeatedly re-parses the same bytes and invokes the discovery callback, never terminating. This hangs the Bluetooth host processing thread (CWE-835, loop with unreachable exit condition). The condition is reachable by any connected peer once the local device initiates standard-descriptor-value discovery; GATT discovery does not require bonding or encryption, so an unauthenticated adjacent attacker that the device connects to can trigger it. The impact is denial of service of the Bluetooth subsystem (and likely a watchdog reset on constrained targets); there is no memory disclosure or corruption. The fix adds a rsp->len < sizeof(struct bt_att_data) check before the loop, rejecting under-length responses so the stride is always non-zero and the loop terminates. The sibling parsers parse_include() and parse_characteristic() already validated rsp->len and are unaffected.

CVSS v3.1

Score 6.5medium

Attack Vector
Adjacent Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Affected software

zephyrproject

zephyr

Affected versions
>=2.6.0 <4.4.2
GitHub Actionsmore threats →cve
zephyr
pkg:github/zephyr
Affected versions
>=2.6.0 <4.4.2

Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.

AI-Powered Analysis

Machine-generated threat intelligence

AILast updated: 08/13/2026, 17:48:02 UTC

Technical Analysis

The vulnerability exists in the Zephyr Bluetooth host GATT client function parse_read_std_char_desc() in subsys/bluetooth/host/gatt.c. When processing an ATT Read By Type Response during standard descriptor discovery, the code uses the per-entry stride rsp->len directly from the peer's PDU without validating that rsp->len is non-zero. A malicious or malfunctioning peer can send rsp->len = 0, causing the parsing loop to never advance or exit, resulting in an infinite loop that hangs the Bluetooth host processing thread. This denial of service can be triggered by any connected peer without authentication. The fix adds a check to reject responses where rsp->len is less than the size of the expected data structure, ensuring the loop terminates properly.

Potential Impact

An unauthenticated adjacent attacker connected to the device can trigger a denial of service of the Bluetooth subsystem by sending a crafted ATT Read By Type Response with zero-length entries. This causes the Bluetooth host processing thread to hang indefinitely, likely leading to a watchdog reset on constrained devices. There is no impact on confidentiality or integrity, and no memory corruption occurs.

Mitigation Recommendations

Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. The described fix involves validating the rsp->len value before parsing to prevent zero-length entries. Until an official fix is available, avoid connecting to untrusted Bluetooth peers or initiating standard descriptor discovery with untrusted devices.

Pro Console: star threats, build custom feeds, automate alerts via Slack, email & webhooks.Upgrade to Pro

Technical Details

Data Version
5.2
Assigner Short Name
zephyr
Date Reserved
2026-06-15T01:56:07.073Z
Cvss Version
3.1
State
PUBLISHED

Threat ID: 6a7dfe6cbf8831d539856562

Added to database: 08/13/2026, 17:27:08 UTC

Last enriched: 08/13/2026, 17:48:02 UTC

Last updated: 09/26/2026, 01:47:40 UTC

Views: 54

Community Reviews

0 reviews

Crowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.

Sort by
Loading community insights…

Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.

Actions

PRO

Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.

Please log in to the Console to use AI analysis features.

Need more coverage?

Upgrade to Pro Console for AI refresh and higher limits.

For incident response and remediation, OffSeq services can help resolve threats faster.

Latest Threats

Breach by OffSeqOFFSEQFRIENDS — 25% OFF

Check if your credentials are on the dark web

Instant breach scanning across billions of leaked records. Free tier available.

Scan now
OffSeq TrainingCredly Certified

Lead Pen Test Professional

Technical5-day eLearningPECB Accredited
View courses