Genauso wie in den vorherigen Jahren werfen wir in diesem Quick Check erneut einen Blick auf eine Smartwatch mit Ortungsfunktion. Auch heute noch erfreuen sich Smartwatches mit Ortungsfunktion großer Beliebtheit bei besorgten Eltern und sind in verschiedenen Farben, Formen und Preisklassen erhältlich. Angesichts unserer bisher eher kritischen Bewertungen in den vergangenen Jahren besteht jedoch die Möglichkeit, dass die S12GPS Kids Smartwatch von PTHTECHUS aus China dieses Mal eine bessere Leistung zeigt und möglicherweise eine Wendung in der Sicherheit von Smartwatches darstellt.
Merkmale
Die PTHTECHUS S12GPS Kids Smartwatch überzeugt mit einer breiten Palette an Eigenschaften, die sowohl die Sicherheit als auch den Spaßfaktor erhöhen. Dank der LBS GPS-Positionierung haben Eltern jederzeit im Blick, wo sich ihr Kind befindet. Das einstellbare Zeitformat (12/24HR) und der integrierte Kalender fördern die Zeitverwaltung auf spielerische Weise. Die Sprachfernsteuerung vereinfacht die Bedienung, während der Voice-Chat die Kommunikation bereichert. Im Notfall kann das SOS-Signal aktiviert werden und die Nachverfolgungsfunktion ermöglicht es Eltern, die Abenteuer ihres Kindes nachzuvollziehen. Die Uhr ist IP68 wasserdicht und hält somit den Herausforderungen des Alltags stand. Zusätzliche Funktionen wie der Wecker, der Silent-Modus, das Zwei-Wege-Gespräch und das Album runden das Gesamtpaket ab. Die Uhr bietet zudem Unterstützung für fünf Sprachen: Englisch, Französisch, Spanisch, Deutsch und Italienisch.
Mobile Applikationen
Für die getestete Kids Smartwatch wurden uns in der Bedienungsanleitung 2 Apps vorgeschlagen. Die erste Applikation ist CarePro+ (com.tgelec.carepro in getesteter Version 1.2.2 für Android) und die zweite Applikation ist SeTracker (org.zywx.wbpalmstar.widgetone.uexaaagg10003 in getesteter Version 4.9.0 für Android).
Beide Apps sind in ihren Grundfunktionen sehr änlich und teilen sich auch die Accounts (wenn man sich bei einem registriert hat kann man sich bei dem anderen auch mit den Zugangsdaten einloggen). Ihr Aussehen ist auch zum Verwechseln ähnlich.
Unser Quick Check begann mit einer statischen Analyse der Applikationen, jedoch stellte sich schnell heraus, dass eine solche Analyse nicht direkt möglich war. Beide Applikationen verwendeten den Tencent Lengu Packer, der die dex-Dateien, die den Programmcode enthalten, in eine komprimierte und verschlüsselte Form umwandelte. Daher konnten wir in unserem ersten Versuch der statischen Analyse nur das Manifest der Android App einsehen. Der Packer erwies sich jedoch als effektiver Schutz gegen Codeanalyse und Tracker-Analyse.
Um diesem Umstand zu begegnen, begannen wir mit intensiver Recherche. Obwohl unsere Rechercheergebnisse begrenzt waren, erwies sich das Gefundene als äußerst wertvoll für den Zugriff auf den komprimierten Code. Ein Blogeintrag aus dem Jahr 2019 beleuchtete diesen Packer und ein entsprechendes Projekt wurde ins Leben gerufen, das dem Zweck diente, den Code zu dekomprimieren und zu entschlüsseln. Trotz der mangelnden Weiterführung seitens der ursprünglichen Entwickler wird dieser Entpackungsmechanismus von der Community aktiv gepflegt und auf dem neuesten Stand gehalten.
Nachdem wir die aufgetretenen Herausforderungen erfolgreich bewältigt haben, gehen wir nun zur statischen Analyse über. Angesichts der bemerkenswerten Ähnlichkeit zwischen den beiden Anwendungen können wir sie in dieser Betrachtung zusammenfassen. Der Hauptunterschied zwischen den beiden Apps liegt darin, dass SeTracker aufdringliche Werbung anzeigt und zudem einen zusätzlichen Reiter mit kleinen Spielen bereitstellt. Bei CarePro+ konnten wir keine Werbung feststellen und es besteht auch keine Möglichkeit, Werbung durch ein Abonnement, wie es bei SeTracker der Fall ist, abzuschalten. Dieses Abonnement wird automatisch verlängert.
Die Analyse der Berechtigungen ergab, dass CarePro+ sämtliche Berechtigungen für bestimmte Funktionen der App benötigte. Dies galt auch für SeTracker. Allerdings benötigt SeTracker, wie erwartet aufgrund der in der App geschalteten Werbung, auch die Ad ID. Diese Kennung mag zwar eventuell nicht vermeidbar sein, ist jedoch unverzichtbar, wenn die App ausschließlich durch Werbeeinnahmen finanziert wird.
Beim Untersuchen des App-Manifests für Android stießen wir auf eine Entdeckung, die in manchen unserer Quick Checks schon potenzielle Probleme aufzeigten. In der SeTracker-App ist die Klartextkommunikation aktiviert, was bedeutet, dass unverschlüsselte Informationen übertragen werden könnten. Im Gegensatz dazu ist diese Funktion in CarePro+ deaktiviert und Android verhindert eigenständig jegliche Form unverschlüsselter Kommunikation.
In Bezug auf die Tracker innerhalb der Apps ergab unsere Untersuchung, dass CarePro+ über keine Tracker verfügte, während in SeTracker verschiedene Tracker identifiziert wurden.
Insbesondere stießen wir auf den Tracker „Google Firebase Analytics“, der sich mit dem Verhalten der App befasst, einschließlich Abstürze, Leistung usw. Ebenso verfolgen „Google AdMob“ sowie „Pangle“ die Auslieferung von Werbung. „Umeng Analytics“ hingegen agiert im Bereich Verhaltensanalyse, Datenerfassung und Statistik.
Lokale und Online-Kommunikation
In Bezug auf die lokale Kommunikation gibt es vergleichsweise wenig zu berichten, da die App ausschließlich mit den Servern in Verbindung steht und die Smartwatch für Kinder ebenfalls ausschließlich über das Mobilfunknetz kommuniziert. Daher kommt es zu keinerlei lokaler Kommunikation zwischen der App und der Smartwatch.
Während unserer Untersuchung der Online-Kommunikation konnten wir feststellen, dass beide Apps grundsätzlich durch Verschlüsselungsmechanismen ihre Kommunikation absichern. Hierbei machen sie Gebrauch von TLS 1.2 und 1.3, um die Kommunikation zu schützen, und setzen zudem QUIC ein.
Im Hinblick auf zusätzliche Sicherheitsvorkehrungen zeigten sich Unterschiede zwischen den beiden Apps. CarePro+ gestattet die Verwendung der standardmäßigen Zertifikate im System, während SeTracker auf SSL Pinning setzt.
Ein Zertifikat stellt grundsätzlich einen Nachweis dafür dar, dass ein öffentlicher Schlüssel mit einer bestimmten Webseite in Verbindung steht. Öffentliche Schlüssel finden Anwendung in der Verschlüsselung von Kommunikation und werden mithilfe des Schlüssels auf dem Server entschlüsselt. Dies ermöglicht eine sichere Kommunikation. Um sicherzustellen, dass der Schlüssel tatsächlich zur Webseite gehört, unterzeichnen Zertifizierungsstellen das Zertifikat, nachdem sie dessen Echtheit überprüft haben. Dies bildet die Grundlage für die Sicherheitsvariante von CarePro+.
Die Methode des SSL-Pinning hingegen setzt in der Anwendung einen spezifischen öffentlichen Schlüssel voraus der zu einem bestimmten Server gehört. Hierbei muss das Zertifikat nicht nur korrekt, aktuell und von einer vertrauenswürdigen Zertifizierungsstelle signiert sein, sondern es muss auch exakt diesen öffentlichen Schlüssel aufweisen. Diese Art des Schutzes mittels SSL-Pinning bietet eine Abwehr gegen Man-in-the-Middle-Angriffe, da die Anzahl der als vertrauenswürdig betrachteten Zertifikate drastisch reduziert wird. Ferner stellt sie eine effektive Verteidigung gegen Angriffe auf Zertifizierungsstellen dar, bei denen gefälschte Zertifikate erzeugt werden könnten. Diese gefälschten Zertifikate würden bewirken, dass Systeme, welche der Zertifizierungsstelle vertrauen, die gefälschten Zertifikate als authentisch akzeptieren und somit eine Verbindung mit einem Angreifer herstellen könnten, der beispielsweise beabsichtigt, die Kommunikation abzufangen. Dies trägt zur Abwehr von Man-in-the-Middle-Angriffen (also dem Abfangen, Entschlüsseln und möglicherweise Manipulieren des Datenverkehrs) sowie von Phishing-Angriffen (wo gefälschte Webseiten involviert sind) bei.
Generell betrachtet ist SSL Pinning eine äußerst empfehlenswerte Praxis, die wir immer dazu ermutigen, zu implementieren. Natürlich bringt sie auch gewisse Herausforderungen mit sich, die jedoch in der Verantwortung der Entwickler liegen. Die erstmalige Implementierung dieses Mechanismus erfordert einen gewissen Aufwand. Hinzu kommt die Tatsache, dass jedes Zertifikat eine begrenzte Gültigkeitsdauer hat und daher häufig ein App-Update erforderlich ist, um das aktuellere Zertifikat zu verwenden. Andernfalls wäre eine Verbindung nicht mehr möglich. Dies erfordert anfangs einen erhöhten Ressourceneinsatz und geht mit einer gesteigerten Wartungsintensität einher. Gleichzeitig gewährleistet es jedoch auch eine erhöhte Sicherheit der Nutzerdaten.
Im Rahmen des Quick Checks haben wir auch die Web-API genauer unter die Lupe genommen, vor allem, um potenzielle Schwachstellen aufzudecken, die möglicherweise einen unautorisierten Zugriff auf Nutzerdaten, Geräte oder Nutzerkonten ermöglichen könnten. Aufgrund der begrenzten Tiefe des Quick Checks konnten wir keine umfassende Analyse durchführen, haben jedoch die Funktionen überprüft, die von den Anwendungen genutzt werden, um Informationen über Nutzer und Geräte abzurufen. Bei ungesicherten APIs besteht oft die Möglichkeit, durch einfache Manipulationen von Geräte- oder Nutzer-IDs in den Anfragen auf Daten oder Funktionen zuzugreifen, die eigentlich außerhalb der eigenen Berechtigungen liegen.
Wir können jedoch zumindest vorerst Entwarnung geben, da wir keine offensichtlichen Probleme festgestellt haben. Es fielen zwar einige Eigenheiten auf, die in keinem Fall direkt als Sicherheitsproblem betrachtet werden können. Zum Beispiel wird beim Anmeldevorgang das Passwort gehasht, allerdings ohne zusätzliche Sicherheitsmechanismen wie Salting und Peppering für das Hashing. Das ermöglicht einem Angreifer, der den Datenverkehr erfolgreich abhören kann, das Passwort mithilfe öffentlich verfügbarer Rainbow-Tabellen zu entschlüsseln. Das Passwort wird zweimal gehasht, zuerst mit MD5 und dann mit SHA256. Dieses mehrfache Hashing bietet keine erhöhte Sicherheit, sondern kann eher als „Security by Obscurity“ angesehen werden, da die Verfahren im Code sichtbar sind.
Zu den weiteren Beispielen gehört, dass der Cookie, der nach einem erfolgreichen Login erzeugt wird, einen kompletten Tag lang seine Gültigkeit behält und auch das Ausloggen ihn nicht ungültig macht. Allerdings ist es positiv anzumerken, dass jede Nachricht über ein Signaturfeld verfügt, das die Integrität der Nachricht gewährleistet. Die Berechnung des Signaturwerts ist jedoch im Quellcode einsehbar und kann selbst nachvollzogen werden. Dies eröffnet die Möglichkeit für Replay-Angriffe innerhalb eines Zeitraums von einem Tag. In Anbetracht dessen, dass die Sicherung durch Trust Manager mittels Zertifikat und SSL-Pinning als funktionierend bewertet wurde, sehen wir hier keine unmittelbare große Gefahr.
Die zentrale Problematik liegt darin, dass der Cookie, der nach einem erfolgreichen Login generiert wird, unverschlüsselt an einen Server von Hangzhou Alibaba Advertising Co. Ltd übertragen wird, wenn auf Werbung zugegriffen wird. Dieser Cookie besteht aus zwei Teilen: einem Token für den aktiven Login und einer SID, die für den Pfad in API-Anfragen erforderlich ist. Ohne den Cookie wäre der Zugriff auf geschützte API-Anfragen nicht möglich. Innerhalb des begrenzten Rahmens unseres Quick Checks konnten wir jedoch allein durch den Cookie keine sensiblen Informationen abrufen. Für diesen Zweck werden auch die zugehörige Device-ID und der entsprechende Login-Name benötigt. Standardmäßig handelt es sich beim Login-Namen um die E-Mail-Adresse, die für die Anmeldung verwendet wird. Ein potenzieller Angreifer hätte die Möglichkeit, sich Zugang zu diesen beiden Informationen auf anderem Wege zu verschaffen. Dadurch könnte er beispielsweise auf den Standort der Smartwatch zugreifen. Dies wird leider durch das Fehlen eines Rate-Limiting auf dem Server begünstigt. Somit sind Angreifer lediglich durch die Bandbreite in der Anzahl der Anfragen an den Server eingeschränkt, um verschiedene E-Mail-Adressen oder Device-IDs auszuprobieren.
In dieser Angelegenheit ist schnelles Handeln dringend erforderlich. Es ist jedoch zu unserem Glück so, dass das Abfangen dieser Nachricht eher zufällig ist, da wir es nicht wiederholen konnten. Aus diesem Grund ist dieser Angriffsvektor für eine einzelne Uhr nicht als äußerst kritisch einzustufen. Dennoch sollte dieses Problem umgehend angegangen und behoben werden. Zudem sollte das Attribut im Manifest für die Klartextkommunikation korrekt eingestellt werden, um dieses Problem von vornherein zu verhindern.
Datenschutz und Privatsphäre
Die Datenschutzerklärungen beider Apps gleichen sich in weiten Teilen stark. Ein bemerkenswerter Unterschied zeigt sich lediglich in den App-Namen und bei SeTracker in Bezug auf zusätzliche Drittanbieter. Die Datenschutzerklärungen sind in Englisch verfasst, jedoch wäre es wünschenswert, deutsche Übersetzungen, ähnlich jener in der Bedienungsanleitung, zu erhalten. Dennoch ist auch eine englische Version durchaus hilfreich.
Schnell wird ersichtlich, dass diese Erklärungen in erster Linie nicht für den europäischen Markt konzipiert wurden. Ein Ansprechpartner ist zwar angegeben, jedoch ist dieser lediglich über WeChat erreichbar. Während WeChat in China allgegenwärtig ist, ist es hier weniger gebräuchlich. Zudem fehlt eine klare Anschrift. Im Gegensatz dazu werden ausführliche Informationen darüber bereitgestellt, welche Daten von welchen Diensten genutzt werden und zu welchem Zweck sie verarbeitet werden. Ebenso sind die verwendeten Berechtigungen im Detail aufgeführt. Es ist zu beachten, dass im Gegensatz zur DSGVO keine rechtlichen Grundlagen angegeben werden und die App bereits vor der Zustimmung des Nutzers bestimmte Berechtigungen benötigt.
Des Weiteren werden verschiedene Szenarien aufgezeigt, in denen eine Datenübermittlung möglich ist. Daten die,
- Direkt im Zusammenhang mit nationaler Sicherheit und nationaler Verteidigungssicherheit;
- Direkt im Zusammenhang mit öffentlicher Sicherheit, öffentlicher Gesundheit und wichtigen öffentlichen Interessen;
- Direkt im Zusammenhang mit kriminellen Ermittlungen, Strafverfolgung, Gerichtsverfahren und Strafvollstreckung;
- Zum Schutz der persönlichen Informationen des Betroffenen oder anderer persönlicher Leben, Eigentum und anderer wichtiger rechtlicher Rechte und Interessen, wenn die Einholung der Zustimmung einer Person schwer ist;
- Die von uns gesammelten persönlichen Informationen sind solche, die Sie selbst öffentlich gemacht haben;
- Personenbezogene Informationen, die aus rechtlich öffentlich zugänglichen Informationen stammen, wie legitime Nachrichtenberichte, Regierungsinformationen usw.;
- Erforderlich, um gemäß Ihrer Anfrage einen Vertrag abzuschließen oder durchzuführen;
- Erforderlich, um den sicheren und stabilen Betrieb der Software und verwandter Dienste aufrechtzuerhalten, z. B. die Erkennung und Behebung von Software- und Dienstausfällen;
- Erforderlich für die rechtliche Nachrichtenberichterstattung;
- Von akademischen Forschungseinrichtungen benötigt, um statistische Forschung oder wissenschaftliche Forschung im öffentlichen Interesse durchzuführen, und um die personenbezogenen Informationen in den Forschungsergebnissen zu anonymisieren, wenn die Ergebnisse der wissenschaftlichen Forschung oder Beschreibung nach außen weitergegeben werden;
- Andere Situationen, wie von Gesetzen und Vorschriften gefordert.
Die Szenarien sind aus der Sicht von China zu sehen, da es sich höchstwahrscheinlich um ein chinesisches Unternehmen handelt: ShenZhen Anquanshouhu Tech Co. Ltd.
Hinsichtlich der Rechte der Nutzer gibt es einen eigens gewidmeten Abschnitt. Allerdings werden nicht sämtliche Rechte umfassend behandelt, und einige der genannten Rechte erweisen sich als schwer nachvollziehbar. Zwar wird erläutert, wie Daten gelöscht werden können, doch fehlen spezifische Unterabschnitte dazu in unserer App. Bei genauerer Analyse wird klar, dass die Datenschutzerklärung für eine erweiterte App-Version verfasst wurde, die eine Einbindung von Chats und Profilen für die Inhaltsfreigabe ermöglicht. Es bleibt unklar, ob diese Funktionen ausschließlich in China verfügbar sind. Dadurch entfallen einige Funktionen, die uns nach der DSGVO zustehen, wie beispielsweise das Löschen von Daten.
Es ist positiv anzumerken, dass geplant ist, Aktualisierungen der Datenschutzerklärung über In-App-Nachrichten zu kommunizieren. Dennoch fällt auf, dass die Datenschutzerklärung voraussichtlich seit 2020 nicht mehr aktualisiert wurde, wie das Copyright von 2020 angibt. Ebenfalls fehlen Informationen über die Tracker von SeTracker.
Insgesamt bietet die Datenschutzerklärung eine detaillierte Aufschlüsselung der verwendeten Daten. Es ist jedoch festzustellen, dass viele der von der DSGVO geforderten Aspekte fehlen. Dies positioniert die Datenschutzerklärung zwar in unserem Quick Check recht gut, jedoch reicht es nicht aus, wenn die Produkte in der EU vermarktet werden. In einem solchen Fall muss die Datenschutzerklärung den EU-Vorgaben entsprechend angepasst sein.
Fazit
Die PTHTECHUS S12GPS Kids Smartwatch hat im Rahmen des statischen Tests der Apps gut abgeschnitten. Es war jedoch beunruhigend, die Tracker und die Klartextkommunikation in der SeTracker App zu sehen. Aus diesem Grund erhält CarePro+ einen Stern, während SeTracker keinen erhält, da die Tracker nicht in der Datenschutzerklärung erwähnt wurden. Im Abschnitt zur Kommunikation vergeben wir einen Stern, da es keine signifikanten Probleme gab. Obwohl die Datenschutzerklärung insgesamt recht gut war, jedoch nicht den Standard der DSGVO erreichte, können wir keinen Punkt vergeben. Insgesamt verleihen wir somit einen Stern.