UBUNTU-CVE-2026-90093: High severity ubuntu/linux-hwe-edge vulnerability
In the Linux kernel, the following vulnerability has been resolved: Bluetooth: L2CAP: access chan->conn safely in get/setsockopt Since commit b66774b48dd9 ("Bluetooth: L2CAP: Fix UAF in channel timeout by holding conn ref") l2capchan::conn has held reference and remains non-NULL also after the corresponding hciconn is deleted. In this state accessing various fields eg. hciconn::hdev is invalid, which leads to KASAN crash in l2capsocksetsockopt() access of conn->hcon->hdev. Check l2capchan::conn.hcon corresponds to an alive hciconn before trying to use it in l2capsock.c. Hold l2capchanlock() in getsockopt/setsockopt to ensure it stays alive, and to avoid data races in l2capchan fields.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
ubuntu/linux-hwe-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-42.42~24.04.1 - Upgrade
Upgrade
ubuntu/linux-riscv-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-42.42.1~24.04.1 - Upgrade
Upgrade
ubuntu/linuxto a version that resolves this vulnerability.Fixed in 7.0.0-42.42 - Upgrade
Upgrade
ubuntu/linux-awsto a version that resolves this vulnerability.Fixed in 7.0.0-1016.17 - Upgrade
Upgrade
ubuntu/linux-gcpto a version that resolves this vulnerability.Fixed in 7.0.0-1016.18 - Upgrade
Upgrade
ubuntu/linux-ibmto a version that resolves this vulnerability.Fixed in 7.0.0-1017.17 - Upgrade
Upgrade
ubuntu/linux-oem-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-1017.17 - Upgrade
Upgrade
ubuntu/linux-oracleto a version that resolves this vulnerability.Fixed in 7.0.0-1015.16 - Upgrade
Upgrade
ubuntu/linux-riscvto a version that resolves this vulnerability.Fixed in 7.0.0-42.42.1 - Compensating control
In l2cap_sock.c, verify that l2cap_chan::conn->hcon corresponds to an alive hci_conn before using it.
- Compensating control
Hold l2cap_chan_lock() in getsockopt and setsockopt while accessing l2cap_chan fields, ensuring the channel remains alive and avoiding data races.