In the Linux kernel, the following vulnerability has been resolved:
Bluetooth: hci_core: Fix use-after-free in vhci_flush()
syzbot reported use-after-free in vhci_flush() without repro. [0]
From the splat, a thread close()d a vhci file descriptor while its device was being used by iotcl() on another thread.
Once the last fd refcnt is released, vhci_release() calls hci_unregister_dev(), hci_free_dev(), and kfree() for struct vhci_data, which is set to hci_dev->dev->driver_data.
The problem is that there is no synchronisation after unlinking hdev from hci_dev_list in hci_unregister_dev(). There might be another thread still accessing the hdev which was fetched before the unlink operation.
We can use SRCU for such synchronisation.
Let's run hci_dev_reset() under SRCU and wait for its completion in hci_unregister_dev().
Another option would be to restore hci_dev->destruct(), which was removed in commit 587ae086f6e4 ("Bluetooth: Remove unused hci-destruct cb"). However, this would not be a good solution, as we should not run hci_unregister_dev() while there are in-flight ioctl() requests, which could lead to another data-race KCSAN splat.
Note that other drivers seem to have the same problem, for exmaple, virtbt_remove().
[0]: BUG: KASAN: slab-use-after-free in skb_queue_empty_lockless include/linux/skbuff.h:1891 [inline] BUG: KASAN: slab-use-after-free in skb_queue_purge_reason+0x99/0x360 net/core/skbuff.c:3937 Read of size 8 at addr ffff88807cb8d858 by task syz.1.219/6718
CPU: 1 UID: 0 PID: 6718 Comm: syz.1.219 Not tainted 6.16.0-rc1-syzkaller-00196-g08207f42d3ff #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025 Call Trace: <TASK> dump_stack_lvl+0x189/0x250 lib/dump_stack.c:120 print_address_description mm/kasan/report.c:408 [inline] print_report+0xd2/0x2b0 mm/kasan/report.c:521 kasan_report+0x118/0x150 mm/kasan/report.c:634 skb_queue_empty_lockless include/linux/skbuff.h:1891 [inline] skb_queue_purge_reason+0x99/0x360 net/core/skbuff.c:3937 skb_queue_purge include/linux/skbuff.h:3368 [inline] vhci_flush+0x44/0x50 drivers/bluetooth/hci_vhci.c:69 hci_dev_do_reset net/bluetooth/hci_core.c:552 [inline] hci_dev_reset+0x420/0x5c0 net/bluetooth/hci_core.c:592 sock_do_ioctl+0xd9/0x300 net/socket.c:1190 sock_ioctl+0x576/0x790 net/socket.c:1311 vfs_ioctl fs/ioctl.c:51 [inline] __do_sys_ioctl fs/ioctl.c:907 [inline] __se_sys_ioctl+0xf9/0x170 fs/ioctl.c:893 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xfa/0x3b0 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7fcf5b98e929 Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 a8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007fcf5c7b9038 EFLAGS: 00000246 ORIG_RAX: 0000000000000010 RAX: ffffffffffffffda RBX: 00007fcf5bbb6160 RCX: 00007fcf5b98e929 RDX: 0000000000000000 RSI: 00000000400448cb RDI: 0000000000000009 RBP: 00007fcf5ba10b39 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 0000000000000000 R14: 00007fcf5bbb6160 R15: 00007ffd6353d528 </TASK>
Allocated by task 6535: kasan_save_stack mm/kasan/common.c:47 [inline] kasan_save_track+0x3e/0x80 mm/kasan/common.c:68 poison_kmalloc_redzone mm/kasan/common.c:377 [inline] __kasan_kmalloc+0x93/0xb0 mm/kasan/common.c:394 kasan_kmalloc include/linux/kasan.h:260 [inline] __kmalloc_cache_noprof+0x230/0x3d0 mm/slub.c:4359 kmalloc_noprof include/linux/slab.h:905 [inline] kzalloc_noprof include/linux/slab.h:1039 [inline] vhci_open+0x57/0x360 drivers/bluetooth/hci_vhci.c:635 misc_open+0x2bc/0x330 drivers/char/misc.c:161 chrdev_open+0x4c9/0x5e0 fs/char_dev.c:414 do_dentry_open+0xdf0/0x1970 fs/open.c:964 vfs_open+0x3b/0x340 fs/open.c:1094 do_open fs/namei.c:3887 [inline] path_openat+0x2ee5/0x3830 fs/name ---truncated---
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-64k-devel-matchedUpgrade kernel-modulesUpgrade kernel-rt-64k-debugUpgrade kernel-debug-develUpgrade kernel-debug-modulesUpgrade kernel-rt-64k-debug-coreUpgrade rtlaUpgrade kernel-zfcpdump-coreUpgrade kernel-rt-64k-debug-modules-extraUpgrade kernelUpgrade kernel-debug-modules-extraUpgrade kernel-64kUpgrade kernel-rt-64k-modules-extraUpgrade kernel-zfcpdump-develUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-rt-64k-modules-coreUpgrade kernel-rt-64k-debug-modulesUpgrade kernel-64k-debugUpgrade kernel-cross-headersUpgrade kernel-uki-virt-addonsUpgrade kernel-abi-stablelistsUpgrade kernel-rt-debug-develUpgrade libperfUpgrade kernel-64k-debug-modules-extraUpgrade kernel-headersUpgrade kernel-debug-modules-coreUpgrade kernel-tools-libs-develUpgrade kernel-rt-modules-coreUpgrade kernel-64k-debug-coreUpgrade kernel-devel-matchedUpgrade kernel-modules-coreUpgrade kernel-zfcpdump-modulesUpgrade kernel-rt-64k-modulesUpgrade kernel-rt-debug-kvmUpgrade kernel-zfcpdumpUpgrade kernel-debug-devel-matchedUpgrade kernel-64k-coreUpgrade kernel-64k-modulesUpgrade kernel-modules-extraUpgrade kernel-rt-modulesUpgrade kernel-64k-modules-coreUpgrade kernel-coreUpgrade kernel-rt-kvmUpgrade kernel-64k-modules-extraUpgrade kernel-64k-debug-develUpgrade rvUpgrade kernel-debug-coreUpgrade kernel-rt-debugUpgrade kernel-rt-develUpgrade kernel-docUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-rt-64kUpgrade kernel-rt-debug-modules-coreUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-tools-libsUpgrade kernel-toolsUpgrade kernel-rt-coreUpgrade kernel-debugUpgrade bpftoolUpgrade kernel-rt-64k-debug-develUpgrade kernel-64k-debug-devel-matchedUpgrade kernel-rt-64k-debug-modules-coreUpgrade kernel-rt-debug-modulesUpgrade python3-perfUpgrade kernel-64k-debug-modulesUpgrade kernel-rt-debug-modules-extraUpgrade perfUpgrade kernel-64k-debug-modules-coreUpgrade kernel-rt-64k-coreUpgrade kernel-rtUpgrade kernel-rt-debug-coreUpgrade kernel-rt-modules-extraUpgrade kernel-uki-virtUpgrade kernel-64k-develUpgrade kernel-rt-64k-develUpgrade kernel-develUpgrade kernel-debug-uki-virt | Aug 19, 2025 | Aug 18, 2025 |
| Debian | — | Upgrade linux-6.1Upgrade linux | Jul 10, 2025 | Jul 10, 2025 |
| Oracle_linux | — | Upgrade kernel | Aug 19, 2025 | Jul 9, 2025 |
| Redhat_linux | — | No solution existsUpgrade kernelUpgrade kernel-rt | Jul 10, 2025 | Jul 9, 2025 |
| Suse | — | Upgrade dtb-renesasUpgrade kernel-default-livepatch-develUpgrade kernel-rt_debugUpgrade dtb-xilinxUpgrade kernel-macrosUpgrade kernel-64kb-develUpgrade ocfs2-kmp-rtUpgrade dtb-apmUpgrade kernel-symsUpgrade dlm-kmp-azureUpgrade dtb-armUpgrade kernel-default-baseUpgrade kernel-devel-rtUpgrade cluster-md-kmp-defaultUpgrade reiserfs-kmp-rtUpgrade dtb-sprdUpgrade kernel-azure-vdsoUpgrade dtb-socionextUpgrade kernel-default-base-rebuildUpgrade cluster-md-kmp-64kbUpgrade kselftests-kmp-defaultUpgrade dtb-mediatekUpgrade kernel-default-extraUpgrade reiserfs-kmp-azureUpgrade reiserfs-kmp-defaultUpgrade kernel-default-manUpgrade kernel-64kb-extraUpgrade kernel-rt_debug-vdsoUpgrade kernel-syms-rtUpgrade kernel-defaultUpgrade kernel-docsUpgrade kernel-rt-develUpgrade kernel-rt-livepatch-develUpgrade dtb-rockchipUpgrade dlm-kmp-defaultUpgrade kselftests-kmp-rtUpgrade dtb-amlogicUpgrade dlm-kmp-rtUpgrade dtb-nvidiaUpgrade kernel-obs-qaUpgrade kernel-devel-azureUpgrade kernel-default-develUpgrade dtb-allwinnerUpgrade cluster-md-kmp-rtUpgrade kernel-docs-htmlUpgrade kernel-default-vdsoUpgrade kernel-azure-develUpgrade kernel-kvmsmallUpgrade dtb-freescaleUpgrade dlm-kmp-64kbUpgrade kernel-rt-optionalUpgrade gfs2-kmp-azureUpgrade ocfs2-kmp-64kbUpgrade kselftests-kmp-64kbUpgrade kernel-rt_debug-develUpgrade kernel-rtUpgrade kernel-kvmsmall-vdsoUpgrade kernel-default-optionalUpgrade dtb-alteraUpgrade reiserfs-kmp-64kbUpgrade gfs2-kmp-rtUpgrade kernel-obs-buildUpgrade kernel-64kbUpgrade kernel-develUpgrade kernel-rt-vdsoUpgrade kernel-default-livepatchUpgrade dtb-caviumUpgrade dtb-qcomUpgrade dtb-hisiliconUpgrade dtb-amdUpgrade kernel-64kb-optionalUpgrade dtb-exynosUpgrade kernel-azure-extraUpgrade dtb-amazonUpgrade ocfs2-kmp-azureUpgrade kernel-zfcpdumpUpgrade dtb-broadcomUpgrade dtb-appleUpgrade kernel-source-azureUpgrade kernel-source-rtUpgrade kernel-debug-vdsoUpgrade gfs2-kmp-defaultUpgrade kselftests-kmp-azureUpgrade kernel-debug-develUpgrade kernel-sourceUpgrade kernel-rt-extraUpgrade gfs2-kmp-64kbUpgrade dtb-lgUpgrade cluster-md-kmp-azureUpgrade kernel-kvmsmall-develUpgrade kernel-azure-optionalUpgrade kernel-azureUpgrade kernel-source-vanillaUpgrade kernel-syms-azureUpgrade ocfs2-kmp-defaultUpgrade kernel-debugUpgrade dtb-marvell | Dec 5, 2025 | Aug 27, 2025 |
| Ubuntu | — | Upgrade linux-image-aws-64k-lts-22.04Upgrade linux-image-fips-5.15Upgrade linux-image-genericUpgrade linux-image-nvidia-tegra-5.15Upgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-intel-iotg-5.15Upgrade linux-image-lowlatency-5.15Upgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-intel-iot-realtimeUpgrade linux-image-intel-iotgUpgrade linux-image-6.8.0-1046-azure-fipsUpgrade linux-image-6.14.0-1015-awsUpgrade linux-image-gcp-fips-6.8Upgrade linux-image-generic-lpae-5.15Upgrade linux-image-virtual-6.14Upgrade linux-image-virtualUpgrade linux-image-5.15.0-1107-nvidiaUpgrade linux-image-5.15.0-1112-aws-fipsUpgrade linux-image-5.15.0-1053-nvidia-tegra-igx-rtUpgrade linux-image-aws-5.15Upgrade linux-image-5.15.0-186-generic-lpaeUpgrade linux-image-nvidia-5.15Upgrade linux-image-oem-20.04bUpgrade linux-image-6.8.0-1047-gcpUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-azure-fips-6.8Upgrade linux-image-oem-20.04cUpgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-xilinx-zynqmpUpgrade linux-image-5.15.0-1107-intel-iotgUpgrade linux-image-6.14.0-1007-azure-nvidiaUpgrade linux-image-aws-64k-6.14Upgrade linux-image-gcp-6.14Upgrade linux-image-oem-24.04Upgrade linux-image-5.15.0-184-lowlatency-64kUpgrade linux-image-5.15.0-1109-oracleUpgrade linux-image-gke-6.8Upgrade linux-image-nvidiaUpgrade linux-image-azure-fips-5.15Upgrade linux-image-aws-lts-24.04Upgrade linux-image-lowlatency-64k-5.15Upgrade linux-image-raspi-5.15Upgrade linux-image-5.15.0-1075-xilinx-zynqmpUpgrade linux-image-6.8.0-1043-gkeUpgrade linux-image-generic-6.8Upgrade linux-image-lowlatency-64kUpgrade linux-image-gcpUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-6.8.0-1046-nvidia-64kUpgrade linux-image-5.15.0-1117-azure-fdeUpgrade linux-image-nvidia-tegraUpgrade linux-image-raspi-realtime-6.8Upgrade linux-image-6.14.0-1014-oemUpgrade linux-image-raspi-realtimeUpgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-oem-24.04aUpgrade linux-image-azure-lts-22.04Upgrade linux-image-generic-hwe-24.04Upgrade linux-image-gkeop-5.15Upgrade linux-image-fips-6.8Upgrade linux-image-oem-22.04bUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-6.8.0-1046-azureUpgrade linux-image-oem-24.04bUpgrade linux-image-oracleUpgrade linux-image-realtime-5.15Upgrade linux-image-6.8.0-1046-nvidia-lowlatency-64kUpgrade linux-image-6.14.0-1014-realtimeUpgrade linux-image-realtime-hwe-22.04Upgrade linux-image-6.8.0-1047-raspiUpgrade linux-image-5.15.0-1064-nvidia-tegraUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-oracle-6.8Upgrade linux-image-virtual-hwe-24.04Upgrade linux-image-azure-6.14Upgrade linux-image-kvm-5.15Upgrade linux-image-nvidia-64kUpgrade linux-image-gkeopUpgrade linux-image-nvidia-tegra-igx-5.15Upgrade linux-image-6.8.0-100-fipsUpgrade linux-image-6.8.0-1051-azureUpgrade linux-image-gke-64k-6.8Upgrade linux-image-oem-20.04Upgrade linux-image-realtime-hwe-24.04Upgrade linux-image-virtual-hwe-22.04Upgrade linux-image-realtimeUpgrade linux-image-5.15.0-1106-raspiUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-oem-22.04Upgrade linux-image-6.14.0-1015-aws-64kUpgrade linux-image-5.15.0-1112-aws-64kUpgrade linux-image-5.15.0-1053-nvidia-tegra-igxUpgrade linux-image-aws-64kUpgrade linux-image-nvidia-tegra-igx-rtUpgrade linux-image-gcp-64k-6.8Upgrade linux-image-oracle-lts-24.04Upgrade linux-image-6.8.0-1046-nvidiaUpgrade linux-image-6.8.0-2037-raspi-realtimeUpgrade linux-image-6.8.0-1030-gkeopUpgrade linux-image-6.8.0-1043-oracleUpgrade linux-image-generic-64kUpgrade linux-image-oem-22.04cUpgrade linux-image-gkeUpgrade linux-image-oem-20.04dUpgrade linux-image-oracle-64kUpgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-5.15.0-1112-gcpUpgrade linux-image-xilinxUpgrade linux-image-6.14.0-1014-azureUpgrade linux-image-6.14.0-1018-gcpUpgrade linux-image-azure-6.8Upgrade linux-image-6.8.0-100-lowlatency-64kUpgrade linux-image-intelUpgrade linux-image-6.8.0-1046-aws-fipsUpgrade linux-image-xilinx-zynqmp-5.15Upgrade linux-image-nvidia-tegra-rt-5.15Upgrade linux-image-5.15.0-1112-gcp-fipsUpgrade linux-image-raspi-6.14Upgrade linux-image-nvidia-lowlatency-5.15Upgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-ibm-5.15Upgrade linux-image-generic-6.14Upgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-lowlatency-6.8Upgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-oem-6.14Upgrade linux-image-5.15.0-186-genericUpgrade linux-image-6.8.0-1023-xilinxUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-kvmUpgrade linux-image-ibmUpgrade linux-image-6.8.0-1046-nvidia-lowlatencyUpgrade linux-image-6.8.0-100-generic-64kUpgrade linux-image-5.15.0-186-generic-64kUpgrade linux-image-5.15.0-186-fipsUpgrade linux-image-5.15.0-1108-gkeUpgrade linux-image-5.15.0-1106-ibmUpgrade linux-image-oem-22.04aUpgrade linux-image-nvidia-tegra-igx-rt-5.15Upgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-azure-fdeUpgrade linux-image-5.15.0-1095-gkeopUpgrade linux-image-oracle-6.14Upgrade linux-image-nvidia-lowlatencyUpgrade linux-image-5.15.0-1111-realtimeUpgrade linux-image-5.15.0-1064-nvidia-tegra-rtUpgrade linux-image-6.8.0-1047-gcp-fipsUpgrade linux-image-6.8.0-1047-gcp-64kUpgrade linux-image-6.8.0-1043-oracle-64kUpgrade linux-image-nvidia-tegra-rtUpgrade linux-image-6.14.0-1015-oracle-64kUpgrade linux-image-gcp-fipsUpgrade linux-image-6.14.0-1016-raspiUpgrade linux-image-lowlatencyUpgrade linux-image-azure-nvidia-6.14Upgrade linux-image-raspiUpgrade linux-image-aws-fips-5.15Upgrade linux-image-5.15.0-1112-awsUpgrade linux-image-ibm-classicUpgrade linux-image-5.15.0-1117-azureUpgrade linux-image-gcp-fips-5.15Upgrade linux-image-nvidia-tegra-igxUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-6.14.0-34-generic-64kUpgrade linux-image-5.15.0-1117-azure-fipsUpgrade linux-image-aws-fips-6.8Upgrade linux-image-awsUpgrade linux-image-6.14.0-1018-gcp-64kUpgrade linux-image-gke-64kUpgrade linux-image-azure-fipsUpgrade linux-image-gcp-64kUpgrade linux-image-gcp-5.15Upgrade linux-image-6.8.0-100-lowlatencyUpgrade linux-image-aws-fipsUpgrade linux-image-generic-lpaeUpgrade linux-image-generic-64k-6.14Upgrade linux-image-virtual-hwe-20.04Upgrade linux-image-virtual-5.15Upgrade linux-image-raspi-nolpaeUpgrade linux-image-oracle-64k-6.14Upgrade linux-image-oem-24.04cUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-intel-iot-realtime-5.15Upgrade linux-image-gkeop-6.8Upgrade linux-image-generic-64k-5.15Upgrade linux-image-fipsUpgrade linux-image-azure-nvidiaUpgrade linux-image-azure-cvmUpgrade linux-image-aws-64k-5.15Upgrade linux-image-6.8.1-1041-realtimeUpgrade linux-image-5.15.0-1104-intel-iot-realtimeUpgrade linux-image-raspi-6.8Upgrade linux-image-oracle-5.15Upgrade linux-image-nvidia-64k-6.8Upgrade linux-image-nvidia-6.8Upgrade linux-image-6.8.0-1046-awsUpgrade linux-image-6.8.0-1044-ibmUpgrade linux-image-6.8.0-1043-gke-64kUpgrade linux-image-6.14.0-1015-oracleUpgrade linux-image-virtual-6.8Upgrade linux-image-realtime-6.8.1Upgrade linux-image-gke-5.15Upgrade linux-image-aws-lts-22.04Upgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-aws-64k-6.8Upgrade linux-image-oracle-64k-6.8Upgrade linux-image-azureUpgrade linux-image-5.15.0-1104-kvmUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-azure-fde-5.15Upgrade linux-image-aws-6.14Upgrade linux-image-5.15.0-184-lowlatencyUpgrade linux-image-5.15.0-1107-nvidia-lowlatencyUpgrade linux-image-ibm-6.8Upgrade linux-image-gcp-6.8Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-generic-64k-6.8Upgrade linux-image-6.8.0-100-genericUpgrade linux-image-generic-5.15Upgrade linux-image-gcp-lts-22.04Upgrade linux-image-gcp-64k-6.14Upgrade linux-image-azure-lts-24.04Upgrade linux-image-azure-5.15Upgrade linux-image-aws-6.8Upgrade linux-image-6.8.0-1046-aws-64kUpgrade linux-image-6.14.0-34-genericUpgrade linux-image-xilinx-6.8Upgrade linux-image-realtime-6.14Upgrade linux-image-oem-22.04d | Jul 14, 2025 | Jul 9, 2025 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jul 27, 2026 | Jul 9, 2025 |
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