CVE-2026-98737 in Linux
Zusammenfassung
von VulDB • 19.10.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
Bluetooth: hci_sync: Behebung eines Use-After-Free-Fehlers im Inquiry-Cache (Ermittlungscache)
Der Sync-Befehl-Arbeiter hält `hdev->req_lock`, während Aktualisierungen und das Löschen des Inquiry-Caches (`hci_inquiry_cache_update`/`flush`) `hdev->lock` verwenden. Sowohl `hci_acl_create_conn_sync()` als auch `hci_stop_discovery_sync()` suchen Einträge nach und lesen deren Felder, ohne `hdev->lock` zu erwerben.
Nachdem eine der beiden Suchoperationen zurückkehrt, kann ein paralleler HCIINQUIRY-ioctl-Aufruf `hdev->lock` erhalten und den Cache leeren, wodurch der Eintrag freigegeben wird. Der Arbeiter liest dann den freigegebenen Eintrag, während er einen Create-Connection-Befehl oder einen Remote-Name-Cancel-Befehl vorbereitet. Die Listen-Durchlaufoperation läuft zudem zeitgleich mit Cache-Aktualisierungen und -Entfernungen (Race Condition).
KASAN meldete diese Zugriffe:
BUG: KASAN: slab-use-after-free in hci_acl_create_conn_sync+0x5f1/0x650 Workqueue: hci0 hci_cmd_sync_work Call Trace: hci_acl_create_conn_sync+0x5f1/0x650 hci_cmd_sync_work+0x13c/0x290
Zugewiesen durch Task 90: hci_inquiry_cache_update+0x3e6/0x7d0 hci_inquiry_result_evt+0x3cb/0x560
Freigegeben durch Task 93: hci_inquiry_cache_flush+0x111/0x2b0 hci_inquiry+0x2f2/0x780 hci_sock_ioctl+0x269/0x5f0
BUG: KASAN: slab-use-after-free in hci_stop_discovery_sync+0x3b1/0x3c0 Workqueue: hci0 hci_cmd_sync_work Call Trace: hci_stop_discovery_sync+0x3b1/0x3c0 hci_cmd_sync_work+0x173/0x300
Zugewiesen durch Task 86: hci_inquiry_cache_update+0x483/0x940 hci_inquiry_result_evt+0x3cb/0x560
Freigegeben durch Task 91: hci_inquiry_cache_flush+0x13e/0x2f0 hci_inquiry+0x2f2/0x780 hci_sock_ioctl+0x269/0x5f0
Halten Sie `hdev->lock` während jeder Suche und aller Lesezugriffe auf das Ergebnis. Kopieren Sie die Remote-Adresse, bevor Sie die Sperre freigeben, damit die Discovery-Cancellation (Abbruch der Ermittlung) keinen Zeiger auf einen Cache-Eintrag beibehält. Geben Sie die Sperre vor dem Senden synchroner HCI-Befehle frei, da deren Completion-Handler möglicherweise dieselbe Sperre benötigen.
If you want to get best quality of vulnerability data, you may have to visit VulDB.