KernelScan.io

HIGH Introduced in 2.6.32

bluetooth L2CAP OOB

CVE-2026-98457

CVSS 8.1 / 10.0 KernelScan AI

CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H

01

In the Linux kernel, the following vulnerability has been resolved: Bluetooth: L2CAP: validate frame length before control and FCS access l2cap_data_rcv() unpacks either a two-byte or four-byte control field without first ensuring that it is present. A short ERTM or streaming-mode frame can therefore cause an out-of-bounds read. There is a second short-frame case when CRC16 is enabled. After the control field is pulled, l2cap_check_fcs() subtracts two from skb->len without checking it. If fewer than two bytes remain, the subtraction wraps; skb_trim() leaves the buffer unchanged and the subsequent FCS load reads past the logical end of the frame. Validate that the frame contains both its control field and, when enabled, its FCS before either field is accessed.

02

Engine v0.9.0

Risk summary

A nearby attacker can send a malformed L2CAP frame over Bluetooth to trigger an out-of-bounds read in the kernel, potentially leaking kernel memory and causing a denial of service. No authentication or user interaction is required — only physical proximity to the target device.

Affectednet/bluetooth/l2cap_core.c (bluetooth/l2cap)

Vulnerability analysis

The Bluetooth L2CAP receive handler processes incoming frames without first verifying that the frame contains the expected control field (two or four bytes depending on mode) and, when CRC16 is enabled, a two-byte frame check sequence. A maliciously truncated frame causes the kernel to read past the end of the socket buffer: the control-field unpacking reads missing bytes directly, and the FCS check subtracts two from the remaining length without a guard, allowing an unsigned integer wrap that makes the subsequent FCS load reach far beyond the buffer. The fix adds a minimum-length check that accounts for both the control-field size and the optional FCS before any field is accessed, causing short frames to be dropped safely. The vulnerability is reachable by any device in Bluetooth radio range that can establish an L2CAP connection; no local account, pairing, or user interaction is needed.

03

BranchIntroducedFixed inPatch commit
5.102.6.325.10.2714373ba79a267
5.152.6.325.15.222965bd88ed4b4
6.12.6.326.1.1893acf6a0038ec
6.122.6.326.12.1121fdbb2a712a9
6.182.6.326.18.55c6a288e6001b
6.62.6.326.6.1588c7556c7cd17
7.22.6.327.2.9f557274af7b9
mainline2.6.327.36c78a213d907
cip/5.102.6.325.10.271-cip784373ba79a267
cip/6.12.6.326.1.189-cip613acf6a0038ec
cip/6.1-rt2.6.326.1.189-cip61-rt323acf6a0038ec
cip/6.122.6.326.12.112-cip331fdbb2a712a9

04

State of the newest release of each Civil Infrastructure Platform SLTS tree, from CIP's own fix records.

CIP treeState
cip/6.12Fixed in 6.12.112-cip33
cip/6.1Fixed in 6.1.189-cip61
cip/6.1-rtFixed in 6.1.189-cip61-rt32
cip/5.10Fixed in 5.10.271-cip78
cip/5.10-rtAffected — no CIP fix yet (latest 5.10.268-cip77-rt34)
cip/4.19Affected — no CIP fix yet (latest 4.19.325-cip136)
cip/4.19-rtAffected — no CIP fix yet (latest 4.19.325-cip136-rt50)
cip/4.4Affected — no CIP fix yet (latest 4.4.302-cip115)
cip/4.4-rtAffected — no CIP fix yet (latest 4.4.302-cip115-rt63)