CVE-2026-31393
Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
03/04/2026
Last modified:
03/04/2026
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
Bluetooth: L2CAP: Validate L2CAP_INFO_RSP payload length before access<br />
<br />
l2cap_information_rsp() checks that cmd_len covers the fixed<br />
l2cap_info_rsp header (type + result, 4 bytes) but then reads<br />
rsp->data without verifying that the payload is present:<br />
<br />
- L2CAP_IT_FEAT_MASK calls get_unaligned_le32(rsp->data), which reads<br />
4 bytes past the header (needs cmd_len >= 8).<br />
<br />
- L2CAP_IT_FIXED_CHAN reads rsp->data[0], 1 byte past the header<br />
(needs cmd_len >= 5).<br />
<br />
A truncated L2CAP_INFO_RSP with result == L2CAP_IR_SUCCESS triggers an<br />
out-of-bounds read of adjacent skb data.<br />
<br />
Guard each data access with the required payload length check. If the<br />
payload is too short, skip the read and let the state machine complete<br />
with safe defaults (feat_mask and remote_fixed_chan remain zero from<br />
kzalloc), so the info timer cleanup and l2cap_conn_start() still run<br />
and the connection is not stalled.
Impact
References to Advisories, Solutions, and Tools
- https://git.kernel.org/stable/c/3b646516cba2ebc4b51a72954903326e7c1e443f
- https://git.kernel.org/stable/c/807bd1258453c4c83f6ae9dbc1e7b44860ff40d0
- https://git.kernel.org/stable/c/9aeacde4da0f02d42fd968fd32f245828b230171
- https://git.kernel.org/stable/c/db2872d054e467810078e2b9f440a5b326a601b2
- https://git.kernel.org/stable/c/dd815e6e3918dc75a49aaabac36e4f024d675101
- https://git.kernel.org/stable/c/e7ff754e339e3d5ce29aa9f95352d0186df8fbd9



