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-zfcpdump-modules-extraUpgrade kernel-rt-modules-extraUpgrade kernel-rt-64k-develUpgrade kernel-64k-develUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-coreUpgrade kernel-64k-debug-modulesUpgrade kernel-tools-libsUpgrade kernel-rt-64k-coreUpgrade kernel-64k-debug-develUpgrade kernel-rt-debug-modulesUpgrade kernel-rtUpgrade kernel-modules-extraUpgrade kernel-rt-debug-modules-coreUpgrade kernel-rt-coreUpgrade kernel-64k-modules-extraUpgrade kernel-debug-coreUpgrade kernel-rt-debugUpgrade kernel-rt-64kUpgrade python3-perfUpgrade kernel-debugUpgrade kernel-rt-debug-coreUpgrade kernel-64k-debug-devel-matchedUpgrade kernel-rt-kvmUpgrade bpftoolUpgrade kernel-develUpgrade kernel-rt-debug-modules-extraUpgrade kernel-rt-64k-debug-develUpgrade kernel-docUpgrade kernel-64k-debug-modules-coreUpgrade perfUpgrade kernel-uki-virtUpgrade kernel-rt-64k-debug-modules-coreUpgrade kernel-rt-develUpgrade kernel-debug-uki-virtUpgrade rvUpgrade kernel-64k-modules-coreUpgrade kernel-rt-modulesUpgrade kernel-toolsUpgrade kernel-rt-64k-modules-coreUpgrade kernel-64kUpgrade kernel-64k-modulesUpgrade kernel-headersUpgrade kernel-tools-libs-develUpgrade kernel-modulesUpgrade kernel-abi-stablelistsUpgrade kernel-rt-debug-kvmUpgrade kernel-64k-debugUpgrade kernel-modules-coreUpgrade kernel-rt-64k-debug-coreUpgrade kernel-64k-debug-coreUpgrade kernelUpgrade kernel-64k-devel-matchedUpgrade kernel-64k-debug-modules-extraUpgrade kernel-debug-modulesUpgrade libperfUpgrade kernel-rt-debug-develUpgrade kernel-uki-virt-addonsUpgrade kernel-rt-64k-debug-modulesUpgrade kernel-devel-matchedUpgrade kernel-rt-64k-debug-modules-extraUpgrade kernel-zfcpdump-coreUpgrade kernel-rt-64k-modulesUpgrade rtlaUpgrade kernel-rt-64k-debugUpgrade kernel-debug-develUpgrade kernel-debug-modules-extraUpgrade kernel-rt-64k-modules-extraUpgrade kernel-64k-coreUpgrade kernel-debug-devel-matchedUpgrade kernel-debug-modules-coreUpgrade kernel-zfcpdump-develUpgrade kernel-zfcpdump-modulesUpgrade kernel-zfcpdumpUpgrade kernel-rt-modules-coreUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-cross-headers | Aug 19, 2025 | Aug 18, 2025 |
| Debian | — | Upgrade linux-6.1Upgrade linuxNo solution exists | Jul 10, 2025 | Jul 10, 2025 |
| Oracle_linux | — | Upgrade kernel | Aug 19, 2025 | Jul 9, 2025 |
| Redhat_linux | — | Upgrade kernel-rtUpgrade kernelNo solution exists | Jul 10, 2025 | Jul 9, 2025 |
| Suse | — | Upgrade dtb-exynosUpgrade dtb-caviumUpgrade kernel-devel-azureUpgrade kernel-64kb-optionalUpgrade dtb-hisiliconUpgrade kernel-sourceUpgrade reiserfs-kmp-64kbUpgrade ocfs2-kmp-64kbUpgrade kselftests-kmp-64kbUpgrade dtb-amdUpgrade kernel-rt_debug-develUpgrade dtb-qcomUpgrade kselftests-kmp-azureUpgrade kernel-default-optionalUpgrade dtb-alteraUpgrade kernel-obs-buildUpgrade kernel-develUpgrade kernel-rt-optionalUpgrade kernel-64kbUpgrade kernel-kvmsmall-vdsoUpgrade kernel-rtUpgrade cluster-md-kmp-azureUpgrade dtb-lgUpgrade gfs2-kmp-64kbUpgrade kernel-azureUpgrade kernel-source-azureUpgrade kernel-zfcpdumpUpgrade kernel-rt-vdsoUpgrade dtb-freescaleUpgrade dtb-broadcomUpgrade kernel-azure-extraUpgrade kernel-default-livepatchUpgrade gfs2-kmp-rtUpgrade kernel-docs-htmlUpgrade ocfs2-kmp-azureUpgrade kernel-default-vdsoUpgrade dtb-amazonUpgrade cluster-md-kmp-rtUpgrade dtb-allwinnerUpgrade dtb-appleUpgrade kernel-debug-vdsoUpgrade kernel-source-vanillaUpgrade kernel-kvmsmallUpgrade kernel-source-rtUpgrade kernel-syms-azureUpgrade gfs2-kmp-defaultUpgrade dtb-marvellUpgrade kernel-azure-develUpgrade ocfs2-kmp-defaultUpgrade kernel-debugUpgrade kernel-debug-develUpgrade kernel-rt-extraUpgrade kernel-kvmsmall-develUpgrade kernel-default-develUpgrade dlm-kmp-64kbUpgrade gfs2-kmp-azureUpgrade kernel-azure-optionalUpgrade kselftests-kmp-defaultUpgrade kernel-symsUpgrade reiserfs-kmp-azureUpgrade kselftests-kmp-rtUpgrade dtb-rockchipUpgrade dlm-kmp-rtUpgrade dtb-renesasUpgrade cluster-md-kmp-64kbUpgrade kernel-64kb-develUpgrade kernel-rt_debugUpgrade kernel-devel-rtUpgrade kernel-default-baseUpgrade dtb-armUpgrade dlm-kmp-azureUpgrade kernel-64kb-extraUpgrade dtb-mediatekUpgrade reiserfs-kmp-rtUpgrade kernel-obs-qaUpgrade kernel-docsUpgrade kernel-default-extraUpgrade kernel-default-base-rebuildUpgrade kernel-azure-vdsoUpgrade dtb-sprdUpgrade dtb-socionextUpgrade kernel-default-livepatch-develUpgrade dtb-nvidiaUpgrade dtb-apmUpgrade ocfs2-kmp-rtUpgrade reiserfs-kmp-defaultUpgrade kernel-syms-rtUpgrade kernel-rt_debug-vdsoUpgrade kernel-default-manUpgrade kernel-defaultUpgrade dtb-xilinxUpgrade kernel-macrosUpgrade dlm-kmp-defaultUpgrade cluster-md-kmp-defaultUpgrade kernel-rt-livepatch-develUpgrade kernel-rt-develUpgrade dtb-amlogic | Dec 5, 2025 | Aug 27, 2025 |
| Ubuntu | — | Upgrade linux-image-gcp-64k-6.14Upgrade linux-image-gcp-lts-22.04Upgrade linux-image-azure-lts-24.04Upgrade linux-image-generic-5.15Upgrade linux-image-azure-5.15Upgrade linux-image-realtime-6.14Upgrade linux-image-aws-6.8Upgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-ibm-5.15Upgrade linux-image-xilinx-6.8Upgrade linux-image-virtual-6.8Upgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-6.14.0-34-genericUpgrade linux-image-6.8.0-1046-aws-64kUpgrade linux-image-nvidia-lowlatency-5.15Upgrade linux-image-6.8.0-100-lowlatencyUpgrade linux-image-gcp-5.15Upgrade linux-image-5.15.0-1111-realtimeUpgrade linux-image-aws-fipsUpgrade linux-image-5.15.0-1064-nvidia-tegra-rtUpgrade linux-image-5.15.0-1117-azureUpgrade linux-image-6.8.0-1047-gcp-fipsUpgrade linux-image-gke-64kUpgrade linux-image-generic-64k-6.14Upgrade linux-image-realtime-6.8.1Upgrade linux-image-aws-lts-22.04Upgrade linux-image-lowlatency-6.8Upgrade linux-image-gke-5.15Upgrade linux-image-generic-6.14Upgrade linux-image-raspi-6.8Upgrade linux-image-6.8.0-1044-ibmUpgrade linux-image-azureUpgrade linux-image-6.8.0-100-genericUpgrade linux-image-oem-22.04dUpgrade linux-image-generic-64k-6.8Upgrade linux-image-nvidia-lowlatencyUpgrade linux-image-generic-lpaeUpgrade linux-image-aws-fips-6.8Upgrade linux-image-gcp-64kUpgrade linux-image-gcp-fips-5.15Upgrade linux-image-oem-24.04cUpgrade linux-image-aws-fips-5.15Upgrade linux-image-generic-64k-5.15Upgrade linux-image-raspi-6.14Upgrade linux-image-azure-nvidia-6.14Upgrade linux-image-5.15.0-1095-gkeopUpgrade linux-image-gkeop-6.8Upgrade linux-image-6.8.0-1043-oracle-64kUpgrade linux-image-6.8.0-1047-gcp-64kUpgrade linux-image-6.14.0-34-generic-64kUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-raspiUpgrade linux-image-6.14.0-1016-raspiUpgrade linux-image-gcp-fipsUpgrade linux-image-intel-iot-realtime-5.15Upgrade linux-image-oracle-64k-6.14Upgrade linux-image-azure-cvmUpgrade linux-image-fipsUpgrade linux-image-lowlatencyUpgrade linux-image-6.8.1-1041-realtimeUpgrade linux-image-aws-64k-5.15Upgrade linux-image-azure-nvidiaUpgrade linux-image-nvidia-tegra-igxUpgrade linux-image-5.15.0-1112-gcp-fipsUpgrade linux-image-6.14.0-1015-oracle-64kUpgrade linux-image-5.15.0-1117-azure-fipsUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-5.15.0-1112-awsUpgrade linux-image-5.15.0-1104-intel-iot-realtimeUpgrade linux-image-nvidia-tegra-rtUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-5.15.0-1107-nvidia-lowlatencyUpgrade linux-image-5.15.0-186-genericUpgrade linux-image-5.15.0-184-lowlatencyUpgrade linux-image-aws-6.14Upgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-oracle-64k-6.8Upgrade linux-image-5.15.0-1104-kvmUpgrade linux-image-gcp-6.8Upgrade linux-image-5.15.0-186-fipsUpgrade linux-image-5.15.0-186-generic-64kUpgrade linux-image-5.15.0-1106-ibmUpgrade linux-image-azure-fdeUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-ibm-6.8Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-nvidia-tegra-rt-5.15Upgrade linux-image-5.15.0-1108-gkeUpgrade linux-image-6.8.0-100-generic-64kUpgrade linux-image-ibmUpgrade linux-image-azure-fipsUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-xilinx-zynqmp-5.15Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-awsUpgrade linux-image-kvmUpgrade linux-image-6.14.0-1018-gcp-64kUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-virtual-5.15Upgrade linux-image-nvidia-6.8Upgrade linux-image-6.14.0-1015-oracleUpgrade linux-image-oem-22.04aUpgrade linux-image-azure-fde-5.15Upgrade linux-image-6.8.0-1046-nvidia-lowlatencyUpgrade linux-image-oem-6.14Upgrade linux-image-nvidia-tegra-igx-rt-5.15Upgrade linux-image-ibm-classicUpgrade linux-image-oracle-5.15Upgrade linux-image-oracle-6.14Upgrade linux-image-6.8.0-1043-gke-64kUpgrade linux-image-6.8.0-1046-azureUpgrade linux-image-6.14.0-1018-gcpUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-6.8.0-1046-awsUpgrade linux-image-5.15.0-1117-azure-fdeUpgrade linux-image-generic-6.8Upgrade linux-image-raspi-realtime-6.8Upgrade linux-image-generic-hwe-24.04Upgrade linux-image-oracleUpgrade linux-image-5.15.0-1075-xilinx-zynqmpUpgrade linux-image-6.8.0-1030-gkeopUpgrade linux-image-6.8.0-1023-xilinxUpgrade linux-image-5.15.0-1109-oracleUpgrade linux-image-5.15.0-1107-intel-iotgUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-azure-fips-5.15Upgrade linux-image-5.15.0-1053-nvidia-tegra-igx-rtUpgrade linux-image-azure-lts-22.04Upgrade linux-image-6.14.0-1014-realtimeUpgrade linux-image-6.14.0-1014-oemUpgrade linux-image-5.15.0-1064-nvidia-tegraUpgrade linux-image-oracle-lts-22.04Upgrade linux-image-intelUpgrade linux-image-oem-24.04aUpgrade linux-image-6.14.0-1014-azureUpgrade linux-image-gcp-64k-6.8Upgrade linux-image-aws-64k-6.8Upgrade linux-image-xilinxUpgrade linux-image-oracle-6.8Upgrade linux-image-oem-22.04cUpgrade linux-image-nvidia-tegraUpgrade linux-image-gkeop-5.15Upgrade linux-image-gcpUpgrade linux-image-fips-6.8Upgrade linux-image-6.8.0-1046-nvidia-64kUpgrade linux-image-6.8.0-1046-nvidia-lowlatency-64kUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-oem-20.04dUpgrade linux-image-6.8.0-1043-gkeUpgrade linux-image-realtime-hwe-24.04Upgrade linux-image-realtimeUpgrade linux-image-raspi-realtimeUpgrade linux-image-oem-22.04Upgrade linux-image-nvidia-64kUpgrade linux-image-6.8.0-1046-aws-fipsUpgrade linux-image-5.15.0-1112-gcpUpgrade linux-image-6.8.0-100-lowlatency-64kUpgrade linux-image-nvidia-tegra-igx-5.15Upgrade linux-image-nvidiaUpgrade linux-image-azure-6.14Upgrade linux-image-6.8.0-1047-raspiUpgrade linux-image-5.15.0-1112-aws-64kUpgrade linux-image-realtime-hwe-22.04Upgrade linux-image-oem-20.04Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-lowlatency-5.15Upgrade linux-image-kvm-5.15Upgrade linux-image-gkeopUpgrade linux-image-gke-64k-6.8Upgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-6.8.0-1051-azureUpgrade linux-image-6.14.0-1015-aws-64kUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-6.8.0-100-fipsUpgrade linux-image-oem-22.04bUpgrade linux-image-gkeUpgrade linux-image-generic-64kUpgrade linux-image-nvidia-tegra-igx-rtUpgrade linux-image-lowlatency-64kUpgrade linux-image-6.8.0-2037-raspi-realtimeUpgrade linux-image-6.8.0-1046-nvidiaUpgrade linux-image-6.8.0-1043-oracleUpgrade linux-image-realtime-5.15Upgrade linux-image-oracle-lts-24.04Upgrade linux-image-oracle-64kUpgrade linux-image-aws-64kUpgrade linux-image-5.15.0-1053-nvidia-tegra-igxUpgrade linux-image-oem-24.04bUpgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-nvidia-tegra-5.15Upgrade linux-image-fips-5.15Upgrade linux-image-virtual-hwe-24.04Upgrade linux-image-aws-64k-lts-22.04Upgrade linux-image-azure-6.8Upgrade linux-image-genericUpgrade linux-image-virtualUpgrade linux-image-oem-24.04Upgrade linux-image-oem-20.04bUpgrade linux-image-oem-20.04cUpgrade linux-image-nvidia-5.15Upgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-intel-iotg-5.15Upgrade linux-image-intel-iotgUpgrade linux-image-intel-iot-realtimeUpgrade linux-image-gcp-fips-6.8Upgrade linux-image-aws-5.15Upgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-6.14.0-1015-awsUpgrade linux-image-5.15.0-1107-nvidiaUpgrade linux-image-5.15.0-186-generic-lpaeUpgrade linux-image-5.15.0-1112-aws-fipsUpgrade linux-image-generic-lpae-5.15Upgrade linux-image-virtual-6.14Upgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-lowlatency-64k-5.15Upgrade linux-image-generic-hwe-20.04Upgrade linux-image-azure-fips-6.8Upgrade linux-image-gcp-6.14Upgrade linux-image-6.8.0-1047-gcpUpgrade linux-image-gke-6.8Upgrade linux-image-aws-lts-24.04Upgrade linux-image-aws-64k-6.14Upgrade linux-image-6.8.0-1046-azure-fipsUpgrade linux-image-5.15.0-184-lowlatency-64kUpgrade linux-image-6.14.0-1007-azure-nvidia | 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