
Drei nicht authentifizierte Schwachstellen im lokalen WiFi-Steuerungsprotokoll der Thinkware U3000 Dashcam: beliebiges Schreiben von Dateien, beliebiges Lesen von Dateien und Offenlegung von WiFi-Anmeldedaten im Klartext. CVE-2026-101053, CVE-2026-101054, CVE-2026-101055.
Drei Schwachstellen im lokalen WiFi-Steuerungsprotokoll der Thinkware U3000 Dashcam, entdeckt durch Reverse Engineering der offiziellen Android-App und bestätigt an realer Hardware. Alle drei erfordern lediglich lokalen Netzwerkzugriff: keinen physischen Zugriff auf das Gerät, keine vorherige Authentifizierung und keine Mitwirkung des Gerätebesitzers.
Offengelegt gegenüber Thinkware am 2026-06-21. Das 30-tägige Offenlegungsfenster ist geschlossen, mit lediglich einer nicht-technischen Empfangsbestätigung.
Dashcams sind eine ungewöhnliche Kategorie für diese Art von Exposition. Sie zeichnen kontinuierlich die Bewegungen eines Fahrzeugs auf und wechseln häufig den Besitzer durch Vermietungen, Flottenmanagement und Gebrauchtwagenverkäufe. Wer derzeit Zugriff auf das Fahrzeug hat, kontrolliert nicht unbedingt das Netzwerk, in dem es konfiguriert ist. In Kombination mit einem Primitiv zum beliebigen Schreiben von Dateien und ohne jegliche Authentifizierung im Steuerungsprotokoll geht dies über ein Datenschutzproblem hinaus. Es ist auch ein Manipulationsproblem: Jede Datei auf dem Gerät, nicht nur Videos, kann ohne Wissen des Besitzers verändert oder ersetzt werden.
Dies ist auch nicht das erste Mal, dass eine Schwachstelle dieser Art in einer Thinkware-Dashcam auftritt. Der unabhängige Forscher geo-chen hat zuvor mehrere Probleme im verwandten Modell F800 Pro offengelegt; siehe geo-chen/Thinkware-Dashcam. Diese erforderten im Allgemeinen physischen oder lokalen Dateisystemzugriff zur Ausnutzung. Die folgenden Erkenntnisse erfordern weder das eine noch das andere: Netzwerkzugriff allein genügt, und die Dateischreib-Erkenntnis stellt eine stärkere Fähigkeit dar als alles in diesem vorherigen Satz.
Hinweis zum betroffenen Modell: Alle folgenden Erkenntnisse wurden am Basismodell Thinkware U3000 bestätigt. Thinkware verkauft auch eine separate Variante „U3000 Pro"; ob diese dieselbe Protokollimplementierung teilt, wurde nicht getestet.
CVE: CVE-2026-101053 (VulDB #410915)
Vollständige Analyse:
findings/01-arbitrary-file-write.md
Produkt: Thinkware U3000 Dashcam
Betroffene Komponente: TCP-Steuerungsprotokoll (Port 7878 Befehl / Port 8787 Daten), keine Authentifizierung
Angriffsvektor: Jedes Gerät im selben lokalen Netzwerk kann vom Angreifer kontrollierte Inhalte in jeden absoluten Pfad im Dateisystem des Geräts schreiben.
Das Steuerungsprotokoll des Geräts stellt einen PUT_FILE-Befehl bereit, der vom Angreifer gelieferte Bytes in einen vom Angreifer angegebenen absoluten Pfad schreibt, ohne jegliche Pfadvalidierung oder Sandboxing. Bestätigt durch das Schreiben einer Datei direkt in das /tmp-Verzeichnis des Geräts, dasselbe Verzeichnis, das seine eigene WiFi-Konfiguration (wpa_supplicant.conf) und mindestens ein Shell-Skript (hidraw0.sh) enthält, und das Zurücklesen Byte für Byte, um die exakte Platzierung zu bestätigen.

START_SESSION -> SET_CLNT_INFO -> APP_CONNECT.PUT_FILE senden, wobei param auf einen Pfad außerhalb aller Orte gesetzt wird, an die die offizielle App legitim schreiben würde.{"rval": 0, "msg_id": 1286} und sendet später eine asynchrone NOTIFICATION (msg_id 7), die den Abschluss bestätigt.LS im übergeordneten Verzeichnis bestätigt, dass die Datei unter dem exakt angeforderten Namen vorhanden ist, neben Systemdateien.GET_FILE auf demselben Pfad liest den Inhalt für einen Byte-für-Byte-Vergleich mit dem Gesendeten zurück.CVE: CVE-2026-101054 (VulDB #410916)
Vollständige Analyse:
findings/02-arbitrary-file-read.md
Produkt: Thinkware U3000 Dashcam
Betroffene Komponente: TCP-Steuerungsprotokoll (Port 7878 Befehl / Port 8787 Daten), keine Authentifizierung
Angriffsvektor: Jedes Gerät im selben lokalen Netzwerk kann jeden absoluten Pfad im Dateisystem des Geräts auflisten und lesen, nicht nur aufgezeichnete Videos.
Die LS- und GET_FILE-Befehle desselben Protokolls zählen jeden absoluten Pfad auf und lesen ihn ohne Einschränkung. Bestätigt durch direktes Lesen der aktiven wpa_supplicant.conf des Geräts, die seine echte WiFi-SSID und sein Klartextpasswort enthält. Dies ist das leseseitige Gegenstück zu Erkenntnis 1: dieselbe Grundursache, entgegengesetzte Richtung und ein mechanisch unterschiedlicher Weg zu denselben in Erkenntnis 3 offengelegten Anmeldedaten.
START_SESSION -> SET_CLNT_INFO -> APP_CONNECT.LS auf /tmp bestätigt, dass wpa_supplicant.conf vorhanden ist, neben anderen Systemdateien (hidraw0.sh, aws.dat, resolv.conf, usw.).GET_FILE mit param: "/tmp/wpa_supplicant.conf" gibt die Dateigröße zurück, dann wird der vollständige Inhalt über den Daten-Socket gestreamt, genau wie bei einer Videodatei.ssid=/psk=-Zeilen, die mit dem tatsächlich konfigurierten Netzwerk der Kamera übereinstimmen.CVE: CVE-2026-101055 (VulDB #410917)
Vollständige Analyse:
findings/03-wifi-credential-disclosure.md
Produkt: Thinkware U3000 Dashcam
Betroffene Komponente: TCP-Steuerungsprotokoll (Port 7878), keine Authentifizierung
Angriffsvektor: Jedes Gerät im selben lokalen Netzwerk kann das WiFi-Passwort der Kamera direkt abrufen, ohne Authentifizierung und ohne vorherigen Zugriff.
Eine dedizierte Statusabfrage, GET_STATUS "wifi_info", gibt die WiFi-SSID und das Klartextpasswort des Geräts direkt zurück. Dies ist ein anderer Mechanismus als bei Erkenntnis 2, der überhaupt keinen Dateisystemzugriff erfordert, sondern nur ein normales Protokoll-Statuslesen.
START_SESSION -> SET_CLNT_INFO -> APP_CONNECT.GET_STATUS mit param: "wifi_info" senden.{"rval": 0, "msg_id": 2050, "type": "wifi_info", "param": [{"ssid": "<real SSID>"}, {"password": "<real plaintext password>"}, {"mac": "<real MAC>"}]}.