Nach wie vor sind IP-Kameras mit die meist verkauften Gadgets für das eigene Zuhause. Dementsprechend ist die Auswahl an Produkten für diese Sparte auch weiterhin schier unendlich. So wundert es wenig, dass große Discounter immer wieder auch Lösungen in diesem Bereich in ihr Technik-Angebot aufnehmen.
Die HiKam S6 WLAN IP-Kamera ist ein typisches Beispiel für so ein Produkt, was in diesem Fall beim Discounter-Riesen ALDI zu großen Stückzahlen und niedrigen Preisen über das Warenband geht. Dass diese Produkte dabei ausstattungstechnisch oft auf einem hohen Niveau sind, ist mittlerweile keine Seltenheit mehr, ob sie aber auch sicherheitstechnisch überzeugen können, haben wir im Rahmen unseres Kurztests überprüft.
Merkmale
Die HiKam S6 bietet in ihrer Rubrik eigentlich alles, womit ein Gerät hier standardmäßig aufwarten muss, um für die unterschiedlichsten Anwendungsszenarien einer IP-Kamera gewappnet zu sein. So liefert sie einen 720p HD-Video-Stream mit Infrarot-Nachtsicht, verfügt über eine 2-Wege-Audio-Kommunikation, also integriertes Mikrofon und Lautsprecher sowie Alexa-Unterstützung, und bietet außerdem auch eine konfigurierbare Bewegungs- sowie Personendetektion. Kommuniziert wird über WLAN, sodass die Kamera auch unkompliziert und flexibel platziert werden kann. Die aufgezeichneten Videodaten können dann auf dem inklusiven Cloudspeicher abgelegt oder auch lokal auf SD-Karte oder NAS gespeichert werden. Insgesamt wird hier also, gerade auch zu dem Preis, eine gut ausgestattete IP-Kamera geboten.
Mobile Applikationen
Die mobilen Applikationen zur HiKam S6 (Android: com.hikam.pro v5.0.20; iOS: HIInfinity.HiKam-Pro v1.1.1) offenbarten in der statischen Analyse keine gravierenden Probleme, auch wenn hier und da trotzdem einige Punkte auffallen.
Überraschend ist schon fast, dass nur insgesamt drei Tracker detektiert werden können, die einen Eintrag in der Exodus Privacy Datenbank besitzen. Die beiden Google Tracker (Firebase Analytics und AdMob) sind dabei fast schon als Standard anzusehen, weisen aber auch Google-typisch sicherheitstechnisch keine wirkliche Angriffsfläche. Das dritte Modul von Bugly (offiziell ebenfalls für Bugreporting gedacht) ist seltener und herstellerbedingt fast ausschließlich bei Geräten chinesischen Ursprungs vertreten. Wir konnten während des Betriebes der HiKam S6 einen relativ regelmäßigen Verkehr zwischen App und den Bugly Servern feststellen. Übertragen wurden dabei aber lediglich kleinere Datenmengen, diese zwar unverschlüsselt über HTTP, aber nicht in Klartext.
Bei der Analyse des Android-Manifests fällt auf, dass knapp 80 activities (im Prinzip einzelne App-Funktionen, die dem Nutzer üblicherweise in eigenen Bildschirmen präsentiert werden; in diesem Fall quasi die komplette Funktionalität) alle exportiert werden können, also von anderen Applikationen angefragt und ausgeführt werden können, aber nicht durch entsprechende Berechtigungen geschützt sind. Üblicherweise erlaubt ein Entwickler so etwas nur, wenn bestimmte Funktionen einer App, wie etwa Bildaufnahme- oder -verarbeitungsfunktionen, auch für andere Apps zugänglich sein sollen. Das eine Applikation das mit beinahe ihrer vollständigen Funktionalität tut, macht eigentlich wenig Sinn und haben wir so bisher auch noch nirgends sonst gesehen. Davon abgesehen bringt diese Praxis auch sicherheitstechnische Probleme mit sich. Hier sollte der Entwickler unbedingt noch einmal nachbessern und prüfen, ob und inwiefern das hier notwendig, sinnvoll und gewünscht ist.
Abgesehen davon identifizierte die statische Analyse aber keine wirklichen kritischen Sicherheitslücken: Bei der iOS-App wird stellenweise unsichere API verwendet, die unter Umständen bei inkorrekter Verwendung zu Speicherproblemen führen kann. Aber dafür sind hier alle wichtigen Schutzmechanismen für den Speicherzugriff (also ASLR, ARC und SSP) aktiviert, sodass hier bestenfalls von einer theoretischen Bedrohung gesprochen werden kann. Außerdem sind die ATS (App Transport Security) Restriktionen nicht gesetzt, was bedeutet, dass die App unverschlüsselt über etwa HTTP und verschlüsselt ohne Anforderungen an beispielsweise eine Mindest-TLS-Version kommunizieren darf. Da einige Module, wie das erwähnte Bugly-Modul, über HTTP kommunizieren und auch große Teile der App-Kommunikation über das standardmäßig unverschlüsselte UDP-Protokoll laufen, ist dies aber keine Überraschung und isoliert betrachtet auch noch nicht kritisch.
Lokale und Online-Kommunikation
Im Bereich der Kommunikation im lokalen Netz und über das Internet fielen uns beim Test allerdings einige Sachen auf, die in ihrer Schwere nicht zu unterschätzen sind.
So läuft im lokalen Netz, d.h. wenn das Smartphone mit laufender Applikation und Kamera sich im selben Netzwerk befinden, die Kommunikation quasi vollständig unverschlüsselt ab. Der lokale Zugriff ist kameraseitig hierbei zwar über eine Authentifizierung gesichert, der Login-Name ist allerdings fest auf „admin“ gesetzt und das dazugehörige Passwort wird, wie der folgende Netzwerkmitschnitt zeigt, unverschlüsselt übertragen. Wenn man so über WLAN kommuniziert, kann die Authentifizierung an und für sich auch direkt eingespart werden.
Der eigentliche Videostream läuft dann zwar über das standardmäßig unverschlüsselte UDP-Protokoll, die Payload, also die eigentlichen Videodaten, scheinen aber zusätzlich verschlüsselt zu sein. Mit lokalem Zugriff auf die Kamera hat der Angreifer an dieser Stelle aufgrund der unzureichenden Authentifizierung aber ohnehin schon gewonnen. Hinzu kommen dann zwar noch zusätzliche Schwachstellen des lokalen Webservers auf der Kamera, diese fallen dann aber eigentlich auch nicht mehr ins Gewicht, da sie schwerer auszunutzen wären als ein Angriff auf die unsichere Authentifizierung selbst.
Nun kann man über eine ungesicherte lokale Kommunikation je nach Anwendungsszenario eventuell noch hinwegblicken (eine Zertifizierung nach unserem Standard wäre aber so schon in keinem Fall möglich), aber wenn dann auch die Kommunikation über das Internet gravierendere Schwachstellen aufweist, wird es in der Tat kritisch.
Erst einmal zum Positiven: Auch über das Internet scheint der eigentliche Videostream, so wie auch lokal schon, zwar über UDP, aber mit zusätzlich verschlüsselter Payload abzulaufen. Aber auch wie lokal, um direkt zum Negativen überzugehen, ist die Authentifizierung und die Behandlung der Account-Login-Informationen als nicht sicher anzusehen.
So wird das Passwort für den lokalen Kamerazugriff auch online im Klartext übertragen (siehe folgendes Bild). Da dies aber wirklich nur für den lokalen Zugriff dient, kann man an dieser Stelle fast darüber hinwegsehen. Sehr unschön wirkt es aber nichtsdestotrotz.
Betrachtet man den Account-Login sieht auf den ersten Blick alles soweit in Ordnung aus – es wird eine verschlüsselte Verbindung (TLS in Version 1.2) aufgebaut und die Daten dementsprechend adäquat sicher übertragen. Sieht man sich den Netzwerkmitschnitt des Vorgangs allerdings genauer an, fällt außerdem auf, dass zusätzlich auch wieder über UDP kommuniziert wird (was außer für die eigentliche Videoübertragung auch immer wieder für andere Zwecke Verwendung findet). Auf diesem Wege wird dann, z.B. wie im Bild gezeigt bei der Account-Passwortänderung, der Accountname (eMail-Adresse), sowie das Passwort übertragen. Der Accountname wird dabei, wie zu sehen, im Klartext übertragen, das dazugehörige Passwort immerhin als MD5-Hash.
Bei einer ausreichenden Länge, Einzigartigkeit und Komplexität des Passworts (Über 12 Zeichen, Klein-/Großschreibung, Zahlen, Sonderzeichen), sollte dies an und für sich kein Problem darstellen. In der Realität sind schwache Passwörter (die App fordert auch nur minimal 6 Zeichen) aber häufiger als starke Passwörter und dann wird eine Verwendung vom veralteten und nicht mehr ausreichend sicheren MD5 in Verbindung mit unverschlüsselter Übertragung allerdings ein Problem. Hinzu kommt außerdem noch ein fehlender Brute-Force-Schutz beim Login, sodass ein Angreifer hier potentiell unendlich viele Fehlversuche hat, um das Passwort zu erraten.
Bei der Analyse im Rahmen unseres Kurztests fielen außerdem noch weitere Klartextübertragungen von verschiedenen URLs, Tokens und Schlüsseln auf, die wir in dem begrenzten Zeitrahmen noch nicht weiter überprüft haben. Wir sind hier allerdings relativ sicher, dass uns noch weitere Probleme auffallen würden, würden wir nur tief genug graben.
Datenschutz und Privatsphäre
In diesem Bereich fiel uns die HiKam-Lösung hingegen wieder recht positiv auf: Die Datenschutzerklärung (Stand 20.05.2018) der Hikam Pro App informiert sehr umfangreich, ausführlich und transparent über alle wichtigen Themen, wie Datensammlung, -verarbeitung und -speicherung. Diese werden demnach durch die High Infinity Technology GmbH, Deutschland realisiert, die alle Daten innerhalb des Europäischen Wirtschaftsraums speichert und verarbeitet.
Fast schon standardmäßig ist die Formulierung, sich selbst nur als Auftragsverarbeiter für Video- und Audioaufnahmen für den Kunden darzustellen, wonach dieser allein dafür verantwortlich ist, alle von der Kamera gefilmten Personen über die Datenverarbeitung in Kenntnis zu setzen. Klingt wie das Abwälzen von Verantwortlichkeit auf den Kunden, lässt sich aber nach geltendem Recht nur schwer anderweitig für die Hersteller lösen. Alle anderen gesammelten (Meta-)Daten werden vom Anbieter als Verantwortlichem verarbeitet. Die aufgezeichneten Videodaten selbst können zwar laut Datenschutzerklärung auch bei anderen Dienstleistern gespeichert sein, sind dann allerdings zugesichert verschlüsselt. Das Recht zusätzlich aufgezeichnete Daten, z.B. zum Nutzerverhalten und der Appnutzung, für Produkt- und Dienstverbesserung zu nutzen, sichert man sich ebenfalls zu, aber auch dies ist in aktuellen Datenschutzerklärungen beinahe immer festgehalten.
Fazit
Für den veranschlagten Preis bietet die HiKam S6 feature-technisch ein absolut solides Paket: Die Ausstattung ist gut, die Konfigurationsmöglichkeiten weitreichend und die Bedienung unkompliziert. Sicherheitstechnisch fallen im Test allerdings zuviele kleinere und vorallem auch größere Schwachstellen zu offensichtlich auf, als dass wir hier aus sicherheitstechnischer Sicht eine Empfehlung aussprechen könnten. Die Probleme gerade im Bereich Kommunikation kosten die Kamera zuviele Punkte für eine gute Wertung. Dass sie sich im Bereich Applikationssicherheit keine massiv gravierenden Schwachstellen leistet und auch das Thema Datenschutz offensichtlich einigermaßen ernst genommen wird, rettet sie aber zumindest auf einen knappen Stern von drei möglichen.