„`html
Zusammenfassung
CVE-2026-10685 ist eine High-Severity-Schwachstelle im Zephyr Bluetooth GATT-Client mit einem CVSS-Score von 7.6. Die Vulnerability betrifft den CCC-write response handler in der Datei subsys/bluetooth/host/gatt.c und führt zu einer Use-After-Free-Bedingung durch fehlerhafte Callback-Reihenfolge.
Betroffene Systeme
Die Schwachstelle betrifft Zephyr RTOS-basierte Systeme, die als GATT-Clients fungieren und die Bluetooth-Subscription-Funktionalität nutzen. Dies umfasst IoT-Geräte, Wearables und andere eingebettete Systeme mit Zephyr-Bluetooth-Stack.
Technische Details
Das vulnerable Code-Segment in gatt_write_ccc_rsp() ruft die application’s params->subscribe() Callback nach params->notify(conn, params, NULL, 0) auf. Gemäss der GATT-API signalisiert ein notify-Callback mit NULL-Daten die Subscription-Beendigung, woraufhin die Anwendung die bt_gatt_subscribe_params-Struktur freigeben oder wiederverwenden darf.
Der nachfolgende subscribe()-Aufruf auf der bereits freigegebenen Struktur führt zu einer Use-After-Free-Bedingung. Dies ist besonders kritisch, da auch der Function-Pointer params->subscribe über den freigegebenen Speicher indirekt aufgerufen wird.
Die Schwachstelle ist remote erreichbar über Adjacent-Network-Angriffsvektoren. Ein Angreifer kann durch eine fehlerhaft antwortende GATT-Server Peer (ATT Error Response) die vulnerable Codepfad triggern: att_error_rsp → att_handle_rsp → gatt_write_ccc_rsp.
Empfohlene Massnahmen
Der Patch reordert die Handler-Logik, sodass der subscribe()-Callback vor dem terminierenden notify(NULL)-Aufruf in beiden Error- und Unsubscribe-Pfaden ausgeführt wird. Dies verhindert den Use-After-Free-Zustand.
Systementwickler sollten sofort ein Update des Zephyr RTOS durchführen, sobald der Security-Patch verfügbar ist. Als Interim-Lösung sollten Anwendungen kritische Ressourcen erst nach der notify(NULL)-Callback-Rückkehr freigeben.
Bewertung
Schweregrad: High (CVSS 7.6)
Die Kombination aus Memory Corruption, Denial-of-Service und potenziellem attacker-kontrolliertem Control-Flow macht dies zu einer kritischen Vulnerability für Bluetooth-connected IoT-Infrastrukturen.
„`