Das smarte LED Leuchtmittel Yeelight A60 hat einen E27-Sockel, verfügt über RGBW-LEDs und ist über die dazugehörige Yeelight App sowie Google Assistant/Amazon Alexa steuerbar. Wie es um die Sicherheit des Leuchtmittelsystems der Xiaomi-Tochter bestellt ist, beantworten wir im Sicherheitstest.

App

Die Yeelight Android App wurde in der Version 3.1.62 von unseren Testern dekompiliert und analysiert. Sofort aufgefallen ist, dass wichtige Klassen, die Programmabläufe und -logik enthalten, obfuskiert sind. Dies erschwert wirksam die Untersuchung des Quellcodes und das Nachvollziehen der Funktionsweise der App durch potenzielle Angreifer. Wir konnten dennoch sicherstellen, dass die App keine Login- oder Anmeldedaten unverschlüsselt auf dem Smartphone ablegt. Allerdings speichert die App mehrere Dateien auf dem öffentlich lesbaren Speicherbereich (SD-Card), obwohl dies gar nicht nötig ist. Zu den dort gespeicherten Daten zählen unter anderem Protokolldateien (ohne sensible Inhalte) und Firmwareupdates. Durch die Ablage von Firmwareupdate-Dateien in diesem Speicherbereich besteht die Gefahr der Manipulation durch andere Apps. Dies sollte vom Hersteller umgehend gelöst werden.

Die iOS App in der Version 3.1.33 wurde ebenfalls einer Analyse unterzogen, ist aber sowohl in Hinblick auf Kommunikationsverhalten als auch Benutzeroberfläche identisch zur Android App.

Online-Kommunikation

Große Teile der Internetkommunikation der Yeelight-App sind TLS1.2-verschlüsselt und somit gegen einfache Angriffe geschützt. Für die yeelight.com-Domain ist auch ein Certificate Pinning implementiert – allerdings wird diese Domain im laufenden Betrieb gar nicht angesprochen. Für die Steuerung der Leuchtmittel kommuniziert die App mit Servern von Amazon AWS, im Rahmen des Tests ausschließlich mit europäischen Servern des Hosters.

Online-Kommunikation zu Amazon AWS

Die verwendete Verschlüsselung schützt gegen einfache Man-in-the-Middle-Angriffe. Sollte der Angreifer jedoch auf dem Smartphone des Besitzers ein Zertifikat installieren können, wären Angriffe dieser Art möglich. Mit direktem Zugriff auf das Gerät bestehen aber selbstverständlich immer erweiterte Angriffsmöglichkeiten, weshalb dies von uns nicht negativ gewertet wird.

Die Yeelight A60 Leuchte kommuniziert ausschließlich per UDP mit den Cloud-Servern. Genutzt wird ein proprietäres Protokoll, welches hier ausführlich beschrieben wird. Die Kommunikation wird durch einen sich dynamisch ändernden Teil (Schutz vor Replay-Attacken) sowie AES-128bit verschlüsselten Payload abgesichert.

UDP-Kommunikation des Leuchtmittels

Firmware

Das Firmware-Update wird über eine unverschlüsselte Verbindung heruntergeladen und ist selbst ebenfalls unverschlüsselt. Es enthält mehrere komprimierte Streams sowie Checksummen.

Binwalk Firmware Informationen

Die XZ-Streams konnten zwar nicht hinreichend verarbeitet werden, jedoch können beim Download über http-Verbindungen Manipulationen nicht ausgeschlossen werden.

HTTP Firmware Download

Laut unserer Recherche ist in Yeelight-Leuchtmitteln ein ESP8266 Mikrocontroller für WLAN-Verbindung und Steuerung verbaut. Mit Hilfe vorhandener Lötpunkte kann die Firmware geflasht werden – dies ist bei der Yeelight A60 jedoch nicht ohne Zerstörung des Gehäuses möglich, wird daher auch nicht negativ gewertet.

Lokale Kommunikation

Eine lokale Kommunikation zwischen App und Leuchtmittel gibt es standardmäßig nicht. In der App selbst kann allerdings in einem etwas versteckten Punkt die „LAN-Steuerung“ aktiviert werden. Diese ermöglicht die unverschlüsselte, lokale Steuerung per Software von Drittanbietern. Beispiele lassen sich im OpenSource-Bereich schnell finden. Auch wenn diese Steuerung im lokalen Netzwerk nur unverschlüsselt ist, so ist es löblich, dass sie erst manuell aktiviert werden muss.

Datenschutz

Die Datenschutzerklärung zur Yeelight-Produktreihe ist im Google PlayStore falsch verlinkt und führt zur zentralen Xiaomi-Datenschutzerklärung. In der App selbst wird aber vor Dateneingabe auf die korrekte Datenschutzerklärung verwiesen. Da ein Login über die Single-Sign-On Plattform von Xiaomi erforderlich ist, hat auch die Datenschutzerklärung von Xiaomi in gewissen Punkten Gültigkeit.

Die Yeelight-Datenschutzerklärung wurde am 20.09.2018 zuletzt geändert und erklärt in verständlicher Weise, welche Informationen zu welchem Zweck aufgezeichnet werden. Laut Datenschutzerklärung werden nur unbedingt notwendige Informationen gespeichert. Lediglich die Angabe zur Speicherdauer ist schwammig formuliert.
Verwundert hat uns, dass im Rahmen des Tests zwar ausschließlich europäische Server von Amazon AWS kontaktiert wurden, die Datenschutzerklärung aber erklärt, dass Daten auch zu Rechenzentren außerhalb des aktuellen Kontinents verlagert werden können, wo ggf. andere Datenschutzgesetze gelten. Bei anderen Xiaomi-Produkten waren wir eine Datenspeicherung innerhalb des Kontinents des Besitzers gewohnt.

Das Löschen des Xiaomi- und somit Yeelight-Accounts ist direkt in der App möglich. Löblich!
Unverständlich ist aber die Vielzahl an Berechtigungen, die die Yeelight-App anfordern kann. (Bspw. Telefon, Kontakte, andere Apps schließen)

Android App Berechtigungen

Fazit

Die Yeelight-Lösung hinterlässt hinsichtlich der Online-Kommunikation ein gemischtes Bild bei unseren Testern. Einerseits ist die alltägliche Online-Kommunikation komplett verschlüsselt und gut geschützt, allerdings wird das Firmware-Update unverschlüsselt heruntergeladen. Dies gibt dem ansonsten sicheren Produkt einen faden Beigeschmack. Hinsichtlich der Datenschutz-Thematik gibt es kleinere Detailschwächen, die aber ähnlich einfach zu beheben sein sollten, wie die Probleme im Firmware-Update-Prozess.
Aufgrund der vorliegenden Mängel wird die Yeelight A60 Leuchte sowie die dazugehörige App mit zwei von drei möglichen Sternen bewertet.