CVE-2026-10664 in zephyr
Zusammenfassung
von VulDB • 12.07.2026
Der Power-Save-Event-Handler `nrf_wifi_event_proc_get_power_save_info()` des nRF70 Wi-Fi-Treibers in `drivers/wifi/nrf_wifi/src/wifi_mgmt.c` kopiert TWT (Target Wake Time)-Flow-Einträge aus einem `nrf_wifi_umac_event_power_save_info`-Event in das fest große Array `twt_flows[WIFI_MAX_TWT_FLOWS]` (8 Elemente) einer vom Aufrufer bereitgestellten Struktur `wifi_ps_config`. Dabei wird über die event-bereitgestellte Variable `num_twt_flows` iteriert, ohne diese gegen `WIFI_MAX_TWT_FLOWS` zu validieren oder `event_len` zu prüfen. Wenn `num_twt_flows` den Wert 8 überschreitet, schreibt der Handler außerhalb des Zielarrays (das sich typischerweise im Stack des Aufrufers befindet, z. B. beim wifi ps Shell-Befehl) – ein Out-of-Bounds-Write von ~40-Byte-TWT-Einträgen –, und liest `twt_flow_info[i]` hinter dem Event-Puffer hinaus. Das Event wird vom nRF70-Co-Prozessor-Firmware als Antwort auf eine hostseitig initiierte Power-Save GET-Anfrage bereitgestellt; das Erreichen des Überlaufs erfordert daher, dass die Firmware ein fehlerhaftes oder außerhalb des gültigen Bereichs liegendes Event ausgibt. Die Vertrauensgrenze liegt zwischen Host und vertrauenswürdigen Co-Prozessor und nicht bei einem direkten Remote-AP-Schreibzugriff, wobei der Einfluss auf den Flow-Zähler über das Funkmedium indirekt ist und durch den 3-Bit-TWT-Flow-ID-Raum begrenzt wird. Betroffen: Builds mit `CONFIG_NRF70_STA_MODE` in Versionen bis einschließlich v4.4.0. Die Korrektur verwirft Events mit `num_twt_flows > WIFI_MAX_TWT_FLOWS` oder mit einer `event_len`, die kürzer ist als für die behaupteten Einträge erforderlich, und fügt eine NULL-Prüfung auf den Aufruferpuffer hinzu.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.