CVE-2026-98108

Summary

In the Linux kernel, the following vulnerability has been resolved:

Bluetooth: L2CAP: fix chan mode for LE_CONN_REQ + EXT_FLOWCTL pchan

l2cap_new_connection() sets default value of channel mode to match the parent channel. l2cap_le_connect_req() left this at the default, and created L2CAP_MODE_EXT_FLOWCTL channels if listening pchan has that mode. This causes FLAG_DEFER_SETUP channels to reply to L2CAP_LE_CONN_REQ with L2CAP_ECRED_CONN_RSP, which is incorrect.

It can also result to stack OOB write (of l2cap_alloc_cid determined values) in l2cap_ecred_rsp_defer(), as l2cap_le_connect_req() does not limit maximum number of deferred channels or check for duplicate ident.

Fix by setting chan->mode correctly in l2cap_le_connect_req().

Also check channel mode in l2cap_ecred_rsp_defer(), and do WARN_ON_ONCE instead of OOB write to make it less brittle.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux15f02b91056253e8cdc592888f431da0731337b8 < 1074bcc57f741223f9fa82ce6afe5c3d783e4d10affected
LinuxLinux15f02b91056253e8cdc592888f431da0731337b8 < 5d5a625cbc854d4c4f68e4b16fcf6e682d9a9ed1affected
LinuxLinux15f02b91056253e8cdc592888f431da0731337b8 < 6cb79e6499228cfdbd4b3301371ce74d01cd2f80affected
LinuxLinux15f02b91056253e8cdc592888f431da0731337b8 < 4ef05db5b08b176a551b4a6287372045998806b0affected
LinuxLinux5.7affected
LinuxLinux0 < 5.7unaffected
LinuxLinux6.12.111 <= 6.12.*unaffected
LinuxLinux6.18.53 <= 6.18.*unaffected
LinuxLinux7.2.7 <= 7.2.*unaffected
LinuxLinux7.3-rc2 <= *unaffected

Weaknesses

References