CVE-2026-99091 in Linuxinfo

Zusammenfassung

von VulDB • 26.10.2026

Im Linux-Kernel wurde folgende Schwachstelle behoben:

Bluetooth: MGMT: Behebung des Status von ausstehenden Befehlen, die beim Ausschalten verworfen werden

cmd_complete_rsp() empfängt eine struct cmd_lookup und fällt bei einem ausstehenden Befehl ohne cmd_complete-Callback auf cmd_status_rsp(cmd, data) durch. cmd_status_rsp() liest data als u8 *, sodass der gesendete Status aus dem ersten Byte von match->sk stammt, nicht jedoch aus match->mgmt_status.

Das Commit f53e1c9c726d („Bluetooth: MGMT: Behebung eines möglichen Absturzes bei mgmt_index_removed“) änderte die Daten der Aufrufer von &status zu &match und aktualisierte den cmd_complete-Zweig auf match->mgmt_status, ließ jedoch das Durchfallen mit unveränderten data-Werten bestehen.

In mgmt_index_removed() ist match->sk NULL, sodass jeder solche Befehl mit dem Status 0x00 (Erfolg) beantwortet wird, anstatt mit MGMT_STATUS_INVALID_INDEX. In __mgmt_power_off() ist er ebenfalls NULL, es sei denn, ein Set Powered-Befehl war ausstehend: Dann hat settings_rsp() den Socket dieses Befehls in match->sk gespeichert, und das gesendete Byte stammt vom Socket-Zeiger. Auf jeden Fall geht der von dem Aufrufer festgelegte Status (MGMT_STATUS_NOT_POWERED oder MGMT_STATUS_INVALID_INDEX, wenn sich das Gerät im Abmeldeprozess befindet) verloren.

Übergeben Sie den von den Aufrufenden festgelegten Status.

Dies wurde auf einem Laptop mit QCA9377 beobachtet: Start Discovery von bluetoothd, der ausstand, als der Adapter ausgeschaltet wurde, wurde mit Command Status 0x00 und ohne Parameter beantwortet, woraufhin bluetoothd 5.72 aufgrund des Erfolgsberichts mit null Länge abstürzte. BlueZ master hat seitdem die Längenprüfung auf diesem Pfad hinzugefügt („adapter: Behebung eines Absturzes bei kurzer Start-Discovery-Antwort“, BlueZ a734b06059cb), aber dem Userspace sollte dennoch „Not Powered“ und nicht „Success“ gemeldet werden.

Getestet unter Ubuntu 7.0.0-31 mit einem virtuellen Controller (hci_vhci): Power off wird in HCI Write Scan Enable gehalten, während ein Start Discovery eingereicht wird; die Spülung beantwortet dies vor dieser Änderung mit Status 0x00 und danach mit 0x0f (Not Powered).

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

Zuständig

Linux

Reservieren

25.09.2026

Veröffentlichung

26.10.2026

Moderieren

akzeptiert

Eintrag

VDB-426476

EPSS

0.00000

KEV

nein

Aktivitäten

very low

Quellen

Interested in the pricing of exploits?

See the underground prices here!