34C3: Vernetzter Staubsauger-Roboter aus China gehackt
Sicherheitsexperten haben das Verschlüsselungssystem des Saug-Roboters "Mi Robot Vacuum" von Xiaomi ausgehebelt. Dabei fanden sie auch heraus, welche Daten das Gerät lokal und in der Cloud speichert.
Der Saugroboter "Mi Robot Vacuum" von Xiaomi hat als günstige Alternative zur Konkurrenz von iRobot, Vorwerk oder Dyson nicht nur das Interesse vieler Konsumenten geweckt. Die eingebauten 12 Sensoren, zu denen etwa ein Laser-Distanz-Messgerät, ein E-Kompass und ein Gyroskop gehören, machen das Gerät auch für Hacker zu einem Objekt der Begierde.
Zwei Sicherheitsexperten haben es mit einigem Aufwand und Reverse Engineering geschafft, sich Zugriff auf die Software zu verschaffen – und dabei auch einige interessante Details herausgefunden, wie der Roboter mit sensiblen Daten lokal und in der Cloud umgeht.
Zerlegt in Einzelteile
Die beiden Sicherheitsexperten Dennis Giese und Daniel Wegemer hatten sich das Ziel gesetzt, auf dem Gerät "Root zu kriegen", wie sie am Mittwoch auf dem 34. Chaos Communication Congress (34C3) in Leipzig berichteten. Sie wollten den Roboter also mit Adminstratorrechten vollständig selbst beherrschen und in Eigenregie nutzen können.
Technisch erwies sich der runde, mit gut 300 Euro zu Buche schlagende Feger aber als "nicht so schlecht" konzipiert, konstatierte Giese nach einem ersten Check der Hardware- und Netzwerkkonfiguration. Der USB-Anschluss etwa sei nicht so einfach für "kreative Zwecke" nutzbar gewesen, da dafür eine Authentisierung benötigt würde. Offene Telnet-Verbindungen habe man nicht gefunden, der Netzwerkverkehr sei verschlüsselt. Es sei also nötig gewesen, den Roboter in seine Einzelteile zu zerlegen und die Hardware unter anderem "bewaffnet mit Alufolie anzugreifen".
Bei der Inspektion der Innereien konnten die Hacker nach eigenen Angaben feststellen, das auf dem Gerät Ubuntu 14.04.3 LTS läuft, der Linux-Kernel mit aktuellen Sicherheitsupdates versehen wird und die Navigation über das Programm Player 3.10 erfolgt. Dazu kommt proprietäre Software wie AppProxy, RoboController, ein spezieller Miio-Client sowie eine angepasste Version der Android Debug Bridge zum Ausmerzen von Programmierfehlern. Auch die eingesetzte Firewall habe ganz vernünftig ausgesehen.
Daten bleiben in der Cloud
Die von dem Staubsauger erzeugten Daten schauten sich die Tüftler ebenfalls genauer an. Über die Logfiles mit Angaben zur Nutzungszeit und der abgefahrenen Örtlichkeiten kämen pro Tag mehrere Megabytes zusammen, erläuterte Giese. Die vom Player generierten Zimmerkarten lägen in einer Auflösung von 1024 mal 1024 Pixel vor. Diese Informationen würden auch in die Xiaomi-Cloud hochgeladen, der Hersteller verfüge also über sie. Bezeichnend sei, dass die Daten auch beim Zurücksetzen des Geräts auf die Fabrikeinstellungen nicht gelöscht würden, was einen Weiterverkauf für Nutzer nicht vereinfache, die Wert auf ihre Privatsphäre legten.
Zwei entscheidende Schlüssel machten die Experten im Sicherheitssystem der Box laut Giese aus, die dynamisch immer wieder neu generiert und für die Kommunikation mit Apps und dem Cloud-Server verwendet würden. Der Miio-Client sei dabei letztlich für den Datenverkehr zuständig und gebe diesen nach innen unverschlüsselt weiter. Die Firmware und ihr Update-Prozess seien per https abgesichert, wobei für letzteren aber eine MD5-Hashfunktion mitgeliefert werde, was angreifbar sei. Es gebe ferner zwei mehr oder weniger vollständige Firmware-Updates über verschiedene Partitionen.
Statisches Passwort als Schwachstelle
Per Reverse Engineering fanden die Hacker laut ihrer Darstellung heraus, dass die Chinesen für das Verschlüsselungssystem das statische Passwort "Rockrobo" verwendeten. Dies habe sich schließlich als entscheidende Schwachstelle herausgestellt: Es habe verwendet werden können, um den Root-Zugang vorzubereiten, die Firmware neu zu generieren, einen Autorisierungsschlüssel einzuschmuggeln, Verschlüsselungstabellen zu entfernen und das entscheidende Update-Kommando an das Gerät zu senden. Nach fünf bis zehn Minuten sei es dann möglich gewesen, sich in das System einzuloggen, eigene Software zu installieren oder die Sensoren zu nutzen.
Nicht ganz trivial war der Umgang mit der Cloud-Verbindung, über die der Hersteller prinzipiell recht schnell wieder die Kontrolle über den Roboter erlangen könnte. Um dies zu verhindern, sei es möglich, einen eigenen Steuer-Client für die Verbindungen nach außen zu installieren, führte Giese aus. Dies habe aber den Nachteil, dass die Apps nicht mehr funktionierten. Das Team habe sich daher für eine Open-Source-Proxy-Implementierung des Miio-Client entschieden, die als "Dustcloud" zusammen mit weiteren Gimmicks auch über eine spezielle Webseite und Github veröffentlicht werden solle. Diese leite Datenpakete aus der Hersteller-Cloud weiter in eine eigene einschlägige Speicherlösung in den Rechnerwolken. Damit könnten etwa unerwünschte weitere Firmware-Updates verhindert werden.
Staubsauger als Smart-Home-Server
Der modifizierte Staubsauger könne etwa als Server für das vernetzte Eigenheim, als Webradio oder als Fileserver mit integrierten Apps verwendet werden, erklärte Giese. Nachteil sei das überschaubare Speichervermögen von 2 GByte auf dem Gerät. Dafür halte der Akku bei einem Stromausfall bis zu zwei Tagen. Für das Schürfen von Bitcoins sei der Roboter trotz seiner drei Prozessoren zu schwach, dafür müsste man schon "eine Million davon hacken". Undenkbar sei dies aber nicht, ergänzte Wegemer. Das "Mi-Ökosystem" Xiaomis insgesamt verfüge zumindest bereits laut Konzernangaben über 50 Millionen verknüpfte Geräte bis hin zu Wasserkochern. Diese seien nicht nur über Smartphone-Apps steuerbar, sondern auch über die Cloud direkt miteinander verbunden. Bei den Übertragungstechniken setze die Firma auf WLAN, ZigBee oder Bluetooth LE.
Die Tüftler rieten Nutzern "smarter" Gegenstände, diese möglichst nicht im vom Hersteller bereitgestellten Zustand unkontrolliert zu verwenden. Hacker könnten darauf Schadcode installieren und im Fall des Saugroboters etwa Wohnungen ausspähen. Auch beim Kauf einschlägiger gebrauchter Objekte müsse man vorsichtig sein angesichts unerwünschter Anhängsel im Inneren. Giese erzählte, dass er mittlerweile neun MI-Roboter gekauft habe, um die Tests durchzuführen. Alle funktionierten zumindest noch halbwegs. (nij)