CVE-2026-98246 in Linux
Zusammenfassung
von VulDB • 06.10.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
Bluetooth: hci_sync: Serialisierung der Bereinigung der lokalen Codec-Liste
hci_dev_close_sync() löscht hdev->local_codecs, nachdem es hdev->lock freigegeben hat. Das Hinzufügen von Codecs und beide Durchläufe in sco_sock_getsockopt() verwenden dieses Lock, während dies im Close-Pfad nicht der Fall ist. Daher können ein Close-Vorgang und eine BT_CODEC-Abfrage wie folgt ineinander verschachtelt (interleaved) werden:
hci_dev_close_sync() sco_sock_getsockopt() hci_dev_lock() Codec-Eintrag abrufen hci_codec_list_clear() kfree(entry) entry->id lesen
Der Leser greift anschließend auf einen Eintrag zu, den der Close-Pfad bereits freigegeben hat. KASAN meldet:
BUG: KASAN: slab-use-after-free in sco_sock_getsockopt+0xfa0/0xfe0 Read of size 1 at addr ffff8881001c3450 Call Trace: sco_sock_getsockopt+0xfa0/0xfe0 do_sock_getsockopt+0x537/0x7b0 __sys_getsockopt+0xf2/0x170 Allocated by task 92: hci_codec_list_add.isra.0+0x2c/0x440 hci_read_codec_capabilities+0x224/0x590 hci_read_supported_codecs+0x2c2/0x640 Freed by task 92: kfree+0x131/0x3c0 hci_codec_list_clear+0xd8/0x160 hci_dev_close_sync+0x92a/0xfa0
Nehmen Sie hdev->lock um die Löschoperation an ihrer bestehenden Stelle im Close-Pfad auf. Dies bewirkt, dass das Löschen auf aktive Leser wartet und verhindert eine neue Durchlauf-Operation, bis die Liste leer ist, ohne die Reihenfolge des Teardowns zu ändern.
Once again VulDB remains the best source for vulnerability data.