5 Min Lesezeit

Bitdefender-Untersuchungen zeigen, dass Android Wearables in Klartext kommunizieren

Bitdefender

Dezember 15, 2014

Promo Ein Produkt zum Schutz aller Geräte - ohne Performance-Einbußen.
30 Tage kostenfrei testen
Bitdefender-Untersuchungen zeigen, dass Android Wearables in Klartext kommunizieren

Technologie und Early Adopter

Angesichts der Vielzahl der Early Adopter haben Unternehmen begonnen, vernetzte Geräte zu entwickeln, die Anwendern ehemals lästige Aufgaben abnehmen, so zum Beispiel den Blick auf das Telefon, ob neue Benachrichtigungen oder Nachrichten vorliegen. Dadurch soll der übergang zu tragbaren Technologien nahtloser und intuitiver erfolgen.

Grundsätzlich spricht nichts dagegen, sich das Leben einfacher zu machen. Aber bei dem Versuch, Early Adopter möglichst schnell mit neuen angesagten Gadgets zu versorgen, wurde das Thema Sicherheit in einigen Fällen vernachlässigt. Jede sich noch entwickelnde Technologie, die frühzeitig auf den Markt gebracht wird, hat auch ihre Schattenseiten. Egal, ob es sich um ein schönes buntes Armband oder eine interessante Funktion handelt, die nur selten genutzt wird, die Wahrscheinlichkeit ist hoch, dass das Thema Sicherheit ganz unten auf der Prioritätenliste steht.

Unsere Bitdefender-Sicherheitsforscher sind der Frage auf den Grund gegangen, ob die neueste Generation der Smartwatches ein Sicherheitsrisiko für ihre Träger darstellt. Die Daten auf Ihrem Telefon sind sehr privater Natur – darum ist es auch so wichtig, diese mit PIN-Codes oder Passwörtern vor unbefugtem Zugriff zu schützen.

Die große Frage

Unser Ziel war es, Antwort auf eine Frage zu geben, die bisher viel zu selten gestellt wurde: „Wie sicher ist die Kommunikation zwischen Ihrem Smartphone und Ihrer Smartwatch?“

Die Antwort, die wir fanden, war überraschend, aber auch irgendwie zu erwarten: Unsere Erfahrung hat gezeigt, dass jede neue angesagte Technologie ihre Zeit braucht, bis die richtigen Mechanismen entwickelt werden, um Manipulation und unbefugten Zugriff zu verhindern.

Die Kommunikation zwischen Android-Geräten und Smartwatches erfolgt stets über Bluetooth. Darin liegt zwar eine gewisse Sicherheit, da sich Angreifer in der unmittelbaren Nähe aufhalten müssen, um den Datenverkehr abzufangen. Das heißt aber nicht, dass ein solches Szenario unmöglich wäre. 

Das Sicherheitsteam von Bitdefender hat einen genauen Blick darauf geworfen, wie Informationen zwischen Smartwatches und den dazugehörigen Apps auf Ihren Smartphones ausgetauscht werden, um herauszufinden, ob Angreifer dadurch auch einen Blick auf Ihre Textnachrichten, Facebook-Unterhaltungen oder Hangout-Chats werfen können.

Der Machbarkeitsnachweis erforderte eine Reihe von Tools, die für jeden Security Geek zur Grundausstattung gehören, eine Samsung Gear Live und ein beliebiges Android-Gerät – in unserem Fall ein Google Nexus 4 mit Android L Preview.

Auf den ersten Blick wurden unsere Erwartungen weitestgehend erfüllt. Die Bluetooth-Kommunikation zwischen der Smartwatch und den Android-Geräten umfasste die verschlüsselte Kommunikation über Bluetooth unter Verwendung von sechsstelligen PIN-Codes, um die übertragung zu verschleiern und zu verhindern, dass jeder neugierige Laie ganze Unterhaltungen in Klartext mit einem Sniffing-Tool verfolgen kann. Der sechsstellige PIN-Code kann jedoch per Brute-Force-Angriff mit frei verfügbaren Tools problemlos geknackt werden.

Eine genauere Untersuchung des zur Verschleierung genutzten Algorithmus hat etwas überraschend ergeben, dass es nicht sonderlich schwierig ist, die Verschleierung Wear-Kommunikationsprotokoll wieder aufzuheben und auf verschiedensten Informationen zuzugreifen, die zwischen den Geräten ausgetauscht werden.

Die folgenden Absätze könnten sich für Leser ohne technischen Hintergrund als etwas trocken erweisen, weshalb sie diese auch gerne überspringen und unter „Was bedeutet das für die Praxis?“ weiterlesen können.

Die technischen Aspekte

In der verschleierten Kommunikation, die zwischen der Smartwatch und dem Android-Gerät im Peer-to-Peer-Verfahren stattfindet, werden vier Typen von Nachrichten ausgetauscht:

·         Kennungsaustausch – Jedes Gerät schickt seine Kennung an das jeweils andere Gerät (Smartwatch an Android-Gerät und andersherum).

·         Steuerung – Dies umfasst zu verschiedenen Aktionen zugehörige Remote Procedure Calls (RPCs). Diese RPCs kommen häufig in der Interprozesskommunikation zwischen zwei Geräten im gleichen Netzwerk zum Einsatz, in diesem Fall bei der Bluetooth-Kopplung.

·         Daten – Die Inhalte jeder Benachrichtigung und die zugehörigen Metadaten.

·         Assetübertragung – Ein Asset ist ein Objekt, das große Datenmengen wie zum Beispiel Fotos umfasst.

Wir werden uns für diesen Artikel nicht lange mit den Datenpaketen des ersten Typs aufhalten, da diese hauptsächlich zur gegenseitigen Bestätigung der Geräteidentität verwendet werden. Die Pakete für die Assetübertragung sind ebenfalls nur von geringem Interesse, da der Austausch von Fotos, Audiodateien oder Filmen zwischen Android-Gerät und Smartwatch längst nicht so interessant ist, wie die Fähigkeit, die eigentlichen Nachrichten und Konversationen mitzulesen. Das Haupteinsatzgebiet hierfür ist der Versand von großen Datenmengen.

Richtig interessant wird es erst bei den Steuerungs- und Datenpaketen, da ihr Gebrauch offenbar die eigentliche Kommunikation zwischen den Anwendungen auf dem Gerät und der Smartwatch umfasst. Diese Kommunikation wird über die Wear API abgewickelt, die dabei Verfahren einsetzt, die der „send(tag, path, object)“-Formatierung ähnlich sind.

Im Folgenden finden Sie eine übersicht über die tatsächlichen Variablen in den Steuerungs- und Datenpaketen:

·         $counter_bytes – eine Art Zähler für die Steuerungskommunikation;

·         $header_length = 31(0x1F) – ein ASCII-Einheitentrennzeichen zur Trennung von Feldern im Text; 31 ist die Länge von $header;

·         $header = com.google.android.wearable.app – Name der Android-Wear-App;

·         $misc_id_length = 40(0x28) – eine ASCII-Darstellung für die offene Klammer; 40 ist die Länge von $misc_id;

·         $misc_id = a197f9212f2fed64f0ff9c2a4edf24b9c8801c8c – dies könnte eine Hash-Funktion sein, die sich von Gerät zu Gerät unterscheiden könnte; ihr Zweck erschließt sich uns nicht ganz, aber während unserer Untersuchungen konnten wir diesen Wert herauslesen;

·         $tag_length und $tag bzw. $path_length und $path – diese gehören zur Wear API; dabei handelt es sich um eine übliche Variable im oben beschriebenen Kommunikationsverfahren, mit der RPC-Aufrufe getrennt und identifiziert werden;

·         $data_map_length und $data_map – enthält die eigentlichen, versendeten Daten (der interessante Teil).

Was kann dagegen getan werden?

Ein Ansatz wäre es, mittels NFC einen PIN-Code an die Smartwatch zu schicken oder bei der Kopplung eine Passphrase zu verwenden. Der Nachteil von NFC liegt darin, dass längst nicht alle Geräte – Mobilgeräte und Smartwatches – NFC-fähig sind. Die Verwendung von Passphrasen ist mit sehr viel Aufwand verbunden, da zunächst eine möglicherweise zufällig generierte Zeichenfolge in die Smartwatch am Handgelenk eingegeben werden muss.

Alternativ könnte man die gesamte Bluetooth-Verschlüsselung zwischen dem Android-Gerät und der Smartwatch auch durch eine zweite Verschlüsselungsschicht auf Anwendungsebene ablösen. Dies sollte aber entweder von Google selbst oder von den OEMs umgesetzt werden und kann sich potenziell auch auf die Lebensdauer der Batterie in der Smartwatch auswirken, da Verschlüsselung immer auch sehr viel Rechenleistung erfordert.

Was bedeutet das für die Praxis?

Das Verschleierungsverfahren der Wear API bei der Kommunikation zwischen Smartwatch und Android-Gerät wurde weitestgehend aufgedeckt, auch wenn das derzeit angewandte Verfahren nicht vollständig aufgeschlüsselt wurde. Es ist uns aber gelungen, Unterhaltungen über Anwendungen wie Facebook Messenger und Google Hangouts und sogar SMS-Nachrichten in Klartext einzusehen, sobald diese von dem Android-Gerät an die Smartwatch gesendet wurden.

Wir sind uns ziemlich sicher, dass sehr schnell sehr interessante Exploit Packs auftauchen würden, sollte sich jemand entschließen, die Funktionsweise der Wear-Verschleierung einmal im Detail zu untersuchen. Ihr Einsatz als Cyber-Waffe hängt dann nur noch davon ab, wie sehr jemand vom Auslesen Ihrer Kommunikation auch aus nächster Nähe profitieren könnte.

Das Internet der Dinge ist ein wirklich großartiges Konzept, doch dürfen wie dabei die sicherheitsrelevanten Bedenken nicht außer Acht lassen. Mit sichereren oder besseren Verfahren zur Absicherung der gesamten Kommunikation könnten diese Sicherheitsrisiken leicht vermieden werden.

Angesichts der Vielzahl an Wearables, die für den Empfang von Textnachrichten und verschiedenste Chat-Dienste auf Bluetooth-Kopplung setzen, sollten die damit verbundenen Sicherheitsprobleme sehr ernst genommen werden.

rn

tags


Autor


Bitdefender

The meaning of Bitdefender’s mascot, the Dacian Draco, a symbol that depicts a mythical animal with a wolf’s head and a dragon’s body, is “to watch” and to “guard with a sharp eye.”

Alle Beiträge sehen

Das könnte Sie auch interessieren

Bookmarks


loader