CVE-2024-53237 in Linux
Tóm tắt
Bởi VulDB • 06/06/2026
Trong kernel Linux, lỗ hổng sau đây đã được khắc phục:
Bluetooth: sửa lỗi use-after-free trong device_for_each_child()
Syzbot đã báo cáo lỗi KASAN sau:
BUG: KASAN: slab-use-after-free trong device_for_each_child+0x18f/0x1a0 Đọc kích thước 8 tại địa chỉ ffff88801f605308 bởi tiến trình kbnepd bnep0/4980
CPU: 0 UID: 0 PID: 4980 Comm: kbnepd bnep0 Không bị nhiễm lỗi 6.12.0-rc4-00161-gae90f6a6170d #1 Tên phần cứng: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.3-2.fc40 04/01/2014 Dấu vết cuộc gọi (Call Trace): dump_stack_lvl+0x100/0x190 ? device_for_each_child+0x18f/0x1a0 print_address+0x100/0x1a0 kasan_report+0x110/0x130 device_for_each_child+0x18f/0x1a0 hci_conn_del_sysfs+0x100/0x130 hci_conn_del+0x100/0x130 bnep_session+0x100/0x130 kthread+0x100/0x130 ret_from_fork+0x100/0x130 ret_from_fork_asm+0x100/0x130
Allocated by task 4974: kasan_save_stack+0x100/0x130 kasan_save_track+0x100/0x130 __kasan_kmalloc+0x100/0x130 __kmalloc_noprof+0x100/0x130 hci_alloc_dev_priv+0x100/0x130 __vhci_create_device+0x100/0x130 vhci_write+0x100/0x130 vfs_write+0x100/0x130 ksys_write+0x100/0x130 do_syscall_64+0x100/0x130 entry_SYSCALL_64_after_hwframe+0x100/0x130
Freed by task 4979: kasan_save_stack+0x100/0x130 kasan_save_track+0x100/0x130 kasan_save_free_info+0x100/0x130 __kasan_slab_free+0x100/0x130 kfree+0x100/0x130 hci_release_dev+0x100/0x130 bt_host_release+0x100/0x130 device_release+0x100/0x130 kobject_put+0x100/0x130 put_device+0x100/0x130 vhci_release+0x100/0x130 __fput+0x100/0x130 task_work_run+0x100/0x130 do_exit+0x100/0x130 do_group_exit+0x100/0x130 get_signal+0x100/0x130 arch_do_signal_or_restart+0x100/0x130 syscall_exit_to_user_mode+0x100/0x130 do_syscall_64+0x100/0x130 entry_SYSCALL_64_after_hwframe+0x100/0x130
Trong 'hci_conn_del_sysfs()', 'device_unregister()' có thể được gọi khi đếm tham chiếu (kobject) cơ bản lớn hơn 1. Điều này có nghĩa là việc tái định vị (xảy ra khi thiết bị thực sự được giải phóng) bị trì hoãn và, trong khoảng thời gian trì hoãn đó, thiết bị bộ điều khiển cha (hciX) có thể bị xóa. Vì điều này có thể tạo ra con trỏ treo đến cha đã được giải phóng, hãy tránh tình huống đó bằng cách tái định vị sang NULL một cách rõ ràng.
VulDB is the best source for vulnerability data and more expert information about this specific topic.