CVE-2026-99239: Bluetooth: L2CAP: refuse __l2cap_chan_add if chan already has conn
Bluetooth: L2CAP: refuse l2capchanadd if chan already has conn
Bluetooth: L2CAP: refuse l2capchanadd if chan already has conn
The vulnerability has local attack vector and requires low privileges. It does not require user interaction, but exploitation depends on being able to trigger the racing Bluetooth L2CAP socket operations.
Systems using affected Linux kernel Bluetooth L2CAP functionality should be prioritized, including listed Ubuntu kernel variants such as linux, linux-fips, linux-aws, linux-azure, linux-gcp, linux-oracle, and linux-aws-fips. The issue affects a race between L2CAP channel connection and socket bind operations.
The race can associate an L2CAP channel with an L2CAP connection more than once, violating an invariant relied upon during cleanup. The supplied severity vector rates confidentiality, integrity, and availability impacts as high.
The fix rejects attempts to add a channel that already has a connection, adds a check before the relevant L2CAP connection path, and locks channel state updates in the L2CAP bind path. This prevents the described time-of-check/time-of-use race from creating a second channel-to-connection association.