In the Linux kernel, the following vulnerability has been resolved:
Bluetooth: SCO: fix race conditions in sco_sock_connect()
sco_sock_connect() checks sk_state and sk_type without holding the socket lock. Two concurrent connect() syscalls on the same socket can both pass the check and enter sco_connect(), leading to use-after-free.
The buggy scenario involves three participants and was confirmed with additional logging instrumentation:
Thread A (connect): HCI disconnect: Thread B (connect):
sco_sock_connect(sk) sco_sock_connect(sk) sk_state==BT_OPEN sk_state==BT_OPEN (pass, no lock) (pass, no lock) sco_connect(sk): sco_connect(sk): hci_dev_lock hci_dev_lock hci_connect_sco <- blocked -> hcon1 sco_conn_add->conn1 lock_sock(sk) sco_chan_add: conn1->sk = sk sk->conn = conn1 sk_state=BT_CONNECT release_sock hci_dev_unlock hci_dev_lock sco_conn_del: lock_sock(sk) sco_chan_del: sk->conn=NULL conn1->sk=NULL sk_state= BT_CLOSED SOCK_ZAPPED release_sock hci_dev_unlock (unblocked) hci_connect_sco -> hcon2 sco_conn_add -> conn2 lock_sock(sk) sco_chan_add: sk->conn=conn2 sk_state= BT_CONNECT // zombie sk! release_sock hci_dev_unlock
Thread B revives a BT_CLOSED + SOCK_ZAPPED socket back to BT_CONNECT. Subsequent cleanup triggers double sock_put() and use-after-free. Meanwhile conn1 is leaked as it was orphaned when sco_conn_del() cleared the association.
Fix this by: - Moving lock_sock() before the sk_state/sk_type checks in sco_sock_connect() to serialize concurrent connect attempts - Fixing the sk_type != SOCK_SEQPACKET check to actually return the error instead of just assigning it - Adding a state re-check in sco_connect() after lock_sock() to catch state changes during the window between the locks - Adding sco_pi(sk)->conn check in sco_chan_add() to prevent double-attach of a socket to multiple connections - Adding hci_conn_drop() on sco_chan_add failure to prevent HCI connection leaks
CVSS Details
- CVSS 3.1 Base Score: 7.8
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alma_linux | — | Upgrade kernel-debug-devel-matchedUpgrade kernelUpgrade kernel-rt-64k-coreUpgrade kernel-rt-debug-coreUpgrade kernel-64k-debug-coreUpgrade kernel-coreUpgrade kernel-rt-64k-debugUpgrade kernel-devel-matchedUpgrade kernel-64k-devel-matchedUpgrade kernel-tools-libsUpgrade rtlaUpgrade kernel-64k-debug-modules-extraUpgrade kernel-debug-modules-extraUpgrade kernel-modulesUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-headersUpgrade kernel-debug-modules-coreUpgrade kernel-rt-64k-modules-coreUpgrade kernel-rt-64k-debug-modules-extraUpgrade kernel-rt-debug-develUpgrade kernel-64kUpgrade kernel-rt-modules-extraUpgrade kernel-64k-coreUpgrade libperfUpgrade kernel-cross-headersUpgrade kernel-64k-debugUpgrade kernel-64k-modulesUpgrade kernel-abi-stablelistsUpgrade kernel-zfcpdump-develUpgrade kernel-modules-coreUpgrade kernel-zfcpdump-coreUpgrade kernel-tools-libs-develUpgrade kernel-rt-modules-coreUpgrade kernel-rt-64k-debug-modulesUpgrade kernel-rt-64k-modules-extraUpgrade kernel-rt-64k-debug-coreUpgrade kernel-zfcpdump-modulesUpgrade kernel-debug-develUpgrade kernel-debug-modulesUpgrade kernel-rt-64k-debug-modules-coreUpgrade kernel-debug-coreUpgrade kernel-rt-64k-debug-develUpgrade rvUpgrade kernel-rtUpgrade python3-perfUpgrade kernel-modules-extraUpgrade kernel-rt-coreUpgrade kernel-64k-debug-develUpgrade kernel-64k-debug-modules-coreUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-rt-debug-modules-coreUpgrade kernel-rt-64k-develUpgrade kernel-rt-develUpgrade kernel-uki-virtUpgrade kernel-64k-modules-extraUpgrade kernel-64k-modules-coreUpgrade perfUpgrade kernel-rt-debug-modules-extraUpgrade kernel-zfcpdumpUpgrade kernel-rt-debugUpgrade kernel-64k-debug-devel-matchedUpgrade kernel-debugUpgrade kernel-docUpgrade kernel-rt-64kUpgrade kernel-debug-uki-virtUpgrade kernel-uki-virt-addonsUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-toolsUpgrade kernel-rt-64k-modulesUpgrade kernel-rt-modulesUpgrade kernel-64k-develUpgrade kernel-develUpgrade kernel-64k-debug-modulesUpgrade kernel-rt-debug-modules | Jun 8, 2026 | May 28, 2026 |
| Debian | — | Upgrade linux-6.1Upgrade linux | May 3, 2026 | May 3, 2026 |
| Redhat_linux | — | Upgrade kernel-rtNo solution existsUpgrade kernel | Jun 3, 2026 | May 1, 2026 |
| Rocky_linux | — | Upgrade kernel-rtUpgrade kernel-rt-debug-debuginfoUpgrade python3-perfUpgrade kernel-tools-libsUpgrade kernel-toolsUpgrade kernel-zfcpdump-debuginfoUpgrade kernel-rt-modules-coreUpgrade kernel-rt-modules-extraUpgrade kernel-tools-libs-develUpgrade kernel-debug-devel-matchedUpgrade kernel-uki-virt-addonsUpgrade kernel-zfcpdump-coreUpgrade kernelUpgrade kernel-rt-debug-coreUpgrade kernel-debug-modulesUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-rt-develUpgrade libperf-debuginfoUpgrade kernel-zfcpdump-devel-matchedUpgrade python3-perf-debuginfoUpgrade rvUpgrade kernel-zfcpdump-modulesUpgrade kernel-debuginfo-common-s390xUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-debug-modules-extraUpgrade kernel-debug-develUpgrade kernel-uki-virtUpgrade kernel-rt-debug-modules-coreUpgrade kernel-rt-debug-modules-extraUpgrade kernel-modules-coreUpgrade kernel-coreUpgrade kernel-zfcpdumpUpgrade kernel-rt-debuginfoUpgrade kernel-debuginfoUpgrade kernel-modulesUpgrade kernel-rt-coreUpgrade kernel-rt-modulesUpgrade kernel-rt-debug-develUpgrade kernel-modules-extra-matchedUpgrade kernel-devel-matchedUpgrade kernel-debug-uki-virtUpgrade kernel-tools-debuginfoUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-debugUpgrade perf-debuginfoUpgrade libperfUpgrade kernel-zfcpdump-develUpgrade kernel-rt-debugUpgrade kernel-modules-extraUpgrade kernel-debug-debuginfoUpgrade rtlaUpgrade kernel-develUpgrade kernel-debug-modules-coreUpgrade kernel-debug-coreUpgrade perfUpgrade kernel-rt-debug-modules | Jun 1, 2026 | May 30, 2026 |
| Ubuntu | — | Upgrade linux-image-intel-iot-realtimeUpgrade linux-image-oem-20.04cUpgrade linux-image-gcp-64kUpgrade linux-image-oem-20.04bUpgrade linux-image-nvidia-6.8Upgrade linux-image-lowlatency-64kUpgrade linux-image-gke-6.8Upgrade linux-image-gcp-fipsUpgrade linux-image-6.8.0-1059-gke-64kUpgrade linux-image-6.8.0-1058-oracleUpgrade linux-image-6.8.0-1046-gkeopUpgrade linux-image-6.8.0-1030-nvidia-tegraUpgrade linux-image-virtual-6.8Upgrade linux-image-oracle-64kUpgrade linux-image-gcpUpgrade linux-image-nvidia-tegraUpgrade linux-image-6.8.0-1061-ibmUpgrade linux-image-oracle-6.8Upgrade linux-image-gke-64kUpgrade linux-image-realtime-hwe-22.04Upgrade linux-image-azure-fips-6.8Upgrade linux-image-oracle-64k-6.8Upgrade linux-image-oem-22.04dUpgrade linux-image-6.8.0-1062-azure-fdeUpgrade linux-image-realtime-6.8.1Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-raspiUpgrade linux-image-intel-iotgUpgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-fips-6.8Upgrade linux-image-azure-lts-24.04Upgrade linux-image-raspi-realtime-6.8Upgrade linux-image-nvidia-lowlatencyUpgrade linux-image-nvidiaUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-kvmUpgrade linux-image-6.8.0-1059-nvidia-lowlatencyUpgrade linux-image-generic-64k-6.8Upgrade linux-image-6.8.0-1059-nvidiaUpgrade linux-image-6.8.0-1064-gcp-64kUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-6.8.0-136-lowlatency-64kUpgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-6.8.1-1056-realtimeUpgrade linux-image-fipsUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-nvidia-tegra-rtUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-xilinx-zynqmpUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-ibmUpgrade linux-image-azure-fdeUpgrade linux-image-oem-22.04aUpgrade linux-image-6.8.0-1030-nvidia-tegra-rtUpgrade linux-image-ibm-classicUpgrade linux-image-ibm-6.8Upgrade linux-image-xilinxUpgrade linux-image-oem-22.04Upgrade linux-image-genericUpgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-aws-lts-24.04Upgrade linux-image-6.8.0-1063-azureUpgrade linux-image-6.8.0-1061-aws-64kUpgrade linux-image-oem-22.04cUpgrade linux-image-gkeop-6.8Upgrade linux-image-6.8.0-1059-nvidia-64kUpgrade linux-image-xilinx-6.8Upgrade linux-image-oracle-lts-24.04Upgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-gcp-fips-6.8Upgrade linux-image-6.8.0-136-fipsUpgrade linux-image-6.8.0-1063-azure-fipsUpgrade linux-image-oem-20.04dUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-raspi-6.8Upgrade linux-image-gke-64k-6.8Upgrade linux-image-azure-6.8Upgrade linux-image-azureUpgrade linux-image-6.8.0-1058-oracle-64kUpgrade linux-image-gkeopUpgrade linux-image-generic-64kUpgrade linux-image-aws-6.8Upgrade linux-image-lowlatencyUpgrade linux-image-laptop-23.10Upgrade linux-image-6.8.0-136-genericUpgrade linux-image-6.8.0-1061-aws-fipsUpgrade linux-image-nvidia-tegra-6.8Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-nvidia-64kUpgrade linux-image-oem-22.04b | May 25, 2026 | May 1, 2026 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | May 27, 2026 | May 1, 2026 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub