- Die seit iOS 9 verfügbare HotspotHelper API ermöglicht es Apps, Informationen zu WLAN-Zugangspunkten in der Umgebung zu erhalten, und kann damit zu einem Weg für Standortverfolgung ohne Zustimmung der Nutzer werden
- Apps können in einem registrierten Callback die SSID und BSSID umliegender Netzwerke auslesen und an einen Server senden, um sie für Logik zur Standortschätzung zu nutzen
- Da WLAN-Zugangspunkte meist fest installiert sind, ist in Kombination mit öffentlichen Diensten wie Precisely oder der Google Geolocation API eine WLAN-basierte Standortschätzung möglich
- Dieses Verhalten tritt nicht nur auf, während Nutzer in den Einstellungen etwas bedienen, sondern kann auch auftreten, wenn das Gerät gesperrt ist und WLAN-Netze in der Umgebung scannt; Nutzer haben keine Möglichkeit, es zu erkennen oder abzuschalten
- Auch Apps mit großer Reichweite wie WeChat und Alipay haben diese Funktion implementiert, was zu Forderungen führt, Apple solle wie bei Standort- und Benachrichtigungsberechtigungen eine explizite Option zum Erlauben/Ablehnen bereitstellen
Von der HotspotHelper API offengelegte WLAN-Informationen
- Apple stellt seit iOS 9 die HotspotHelper API bereit, mit der Apps eine Funktion anfordern können, die das System beim Verbinden mit WLAN-Zugangspunkten unterstützt
- Beispielcode zeigt den Ablauf, bei dem eine App über
NEHotspotHelper.registerWLAN-Netzwerkinformationen erhält- Aus
command.networkListwird die Liste der Netzwerke in der Umgebung abgerufen - Aus jedem Netzwerk werden
network.ssidundnetwork.bssidgelesen - Diese Werte können an Logik zur Standortverfolgung wie
trackLocation(withSSID:andMACAddress:)übergeben werden
- Aus
- Der ursprüngliche Zweck kann die Unterstützung reibungsloser Verbindungen sein, doch Apps können die erhaltenen SSID und BSSID auch als Daten zur Standortverfolgung verwenden
Ein Weg zur Standortschätzung ohne Zustimmung der Nutzer
- Informationen zu WLAN-Zugangspunkten in der Umgebung können als Referenzpunkte dienen, um den Standort eines Nutzers zu schätzen
- Die meisten WLAN-Zugangspunkte bewegen sich nach der Installation nicht
- Über die Liste umliegender Zugangspunkte lässt sich der aktuelle Standort des Nutzers per Triangulation bestimmen oder schätzen
- Beispiele für öffentliche APIs sind Precisely Location By Wi-fi Access Point und Google's Geolocation API
- Diese Funktion wird nicht nur aktiviert, wenn Nutzer ausdrücklich den Einstellungsbildschirm bedienen
- Registrierte Apps können ausgeführt werden, wenn das Gerät WLAN-Zugangspunkte in der Umgebung scannt
- Das umfasst auch Fälle, in denen das Gerät gesperrt ist und sich in der Tasche des Nutzers befindet
- Apps können umliegende SSIDs und MAC-Adressen erfassen und an Server senden; wenn Entwickler es wollen, ist nahezu echtzeitnahe Standortverfolgung möglich
- Für Nutzer ist auf dem Bildschirm schwer zu erkennen, ob dieser Vorgang stattfindet, und es gibt auch keine Option, die Funktion zu deaktivieren
Fälle WeChat und Alipay
- WeChat und Alipay werden als wichtige Apps genannt, die diese Funktion bereits implementiert haben
- Beide Apps werden auf dem chinesischen Festland sehr breit genutzt und greifen in viele Bereiche des Alltags ein
- Wenn bei derart weit verbreiteten Apps die Möglichkeit zur Standortverfolgung ohne Zustimmung der Nutzer entsteht, ist die potenzielle Reichweite groß
- Selbst wenn der Zweck der Datenerfassung in der Verbesserung der User Experience oder der Unterstützung bei Verbindungen mit nahegelegenen WLANs liegen kann, bleibt wegen undurchsichtiger serverseitiger Logik ein Problem bei Transparenz und Verantwortlichkeit bestehen
Apples Reaktion und das nötige Berechtigungsmodell
- Das Problem wurde vor etwa zwei Jahren entdeckt und als Video auf Bilibili geteilt, erreichte öffentlich jedoch nur begrenzte Aufmerksamkeit
- Auch Apple wurden die Bedenken übermittelt, und es gab eine Antwort per E-Mail, danach jedoch keine weiteren Updates
- Apple sollte Nutzern wie bei Datenschutzeinstellungen für Standort und Benachrichtigungen eine Option bieten, diese Funktion zu deaktivieren
- Bevor eine App auf diese Funktion zugreift, sollte sie ausdrücklich eine Berechtigung anfordern, und Nutzer sollten den Zugriff während der App-Nutzung erlauben oder ablehnen können
- HotspotHelper bleibt ein umstrittener Punkt zwischen Apples Datenschutzversprechen und dem Schutz von Nutzerdaten
3 Kommentare
Hacker-News-Kommentare
Wenn man sich das verlinkte Dokument ansieht, scheint diese API dafür gedacht zu sein, dass Apps, die von Besitzern von Wi-Fi-Hotspots erstellt wurden, Nutzern helfen, sich mit dem jeweiligen Hotspot zu verbinden: https://developer.apple.com/documentation/networkextension/h...
NEHotspotHelperermöglicht es Apps, am Authentifizierungsprozess von Wi-Fi-Netzwerken teilzunehmen, bei denen Nutzer mit dem Netzwerk interagieren müssen, um Zugriff auf das weitere Internet zu erhalten – also bei Hotspot-Netzwerken.Außerdem heißt es dort, dass es nur für die Hotspot-Integration nützlich ist und dass für andere Aufgaben wie Zubehör-Integration oder Wi-Fi-basierte Standortbestimmung technische und geschäftliche Einschränkungen gelten; vor der Nutzung ist zudem Apples Genehmigung für die spezielle Berechtigung
com.apple.developer.networking.HotspotHelpererforderlich.Dann stellt sich die Frage, warum Apps wie WeChat oder Alipay diese Berechtigung erhalten haben.
Die Nutzung einer solchen API sollte einen für den Nutzer sichtbaren Berechtigungsdialog anzeigen, bevor die App Hintergrundbenachrichtigungen erhält, und der Nutzer sollte zwischen „Nur einmal erlauben“, „Beim Verwenden erlauben“, „Im Hintergrund erlauben“ und „Nicht erlauben“ wählen können.
Die App-Aktivität sollte außerdem im App-Datenschutzbericht angezeigt werden.
Bei WeChat kann man noch argumentieren, dass es eine „Super-App“ ist und auch für Wi-Fi-Hotspot-Verbindungen genutzt werden kann, aber bei Alipay fällt mir keine gute Erklärung ein.
CoreLocation-API verwendet und vom Nutzer die Genehmigung für den Zugriff auf den genauen Standort erhalten hat. Da sie dann ohnehin bereits den genauen Standort bekommt, wirkt das harmlos.NEHotspotConfiguration-API konfiguriert hat. Genau das scheint in den Umfang dieses Artikels zu fallen.NEDNSSettingsManager-Konfiguration installiert ist. Ich weiß nicht genau, was das ist, aber es wirkt ähnlich wie der VPN-Fall.Zur Einordnung: Um diese API zu nutzen, braucht man eine spezielle Berechtigung, die man nur erhält, wenn man sie bei Apple beantragt und den Verwendungszweck rechtfertigt.
Es ist keine allgemeine API, die jede beliebige App nutzen kann.
Natürlich sind das „Super-Apps“, und Wi-Fi-Hotspot-Dienste könnten zu ihren angebotenen Funktionen gehören, aber gerade deshalb sollte es eine Berechtigung sein, die Nutzer vergeben können – ähnlich wie „Zugriff auf lokales Netzwerk“.
Wenn ich mich nicht für die Hotspot-Funktion interessiere, möchte ich nicht, dass die App diese Fähigkeit hat.
Ohne die Test-App selbst auszuprobieren, weiß ich nicht, ob das auch bei dieser Berechtigung so ist, aber meiner Meinung nach sollte die Nutzererlaubnis abgefragt werden.
Ich frage mich, ob Apple die Nutzung der Berechtigung analysiert und sie bei Missbrauch entzieht.
Ähnlich erinnere ich mich daran, dass Apple beim Facebook-VPN-„Skandal“ Facebooks Enterprise-Signaturzertifikat entzogen hat.
Es klingt wie: „Keine Sorge, du oder ich können es nicht missbrauchen, nur Großunternehmen und Datensammler können das.“
Der Autor scheint Chinese zu sein und sich deshalb um WeChat und Alipay zu sorgen; ich frage mich, wie es bei Facebook und Google aussieht.
Ich dachte bereits, dass Nutzer eine Aufforderung bekommen, diese Berechtigung zu erlauben
Heutzutage fragen ziemlich viele Apps, ob sie Zugriff auf das „lokale Netzwerk“ bekommen dürfen; ich verstehe das als Fähigkeit, lokale Wi-Fi-Hotspots zu sehen, und lehne es fast immer ab
Nach dem Lesen dieses Artikels habe ich es auch bei Spotify deaktiviert
Allerdings wissen die meisten Nutzer nicht, dass sich aus diesen Informationen der Standort ableiten lässt, daher muss der Berechtigungsdialog verbessert werden
Erstens ist die Umsetzung schlampig. Anders als bei anderen Berechtigungen gibt es keine Möglichkeit, den Prompt explizit anzuzeigen; er erscheint plötzlich, wenn Apple es für passend hält
Selbst wenn er für eine Kernfunktion nötig ist, gibt es keine Möglichkeit, Nutzer sauber darauf vorzubereiten, und auch keine Möglichkeit zu prüfen, ob die Berechtigung erteilt wurde
Zweitens, und wichtiger: Apples eigene Apps zeigen diese Warnung nicht an, wodurch die Wettbewerbsbedingungen unfair sind
AirPlay und Ähnliches funktionieren nahtlos, konkurrierende Technologien aber nicht; und weil Entwickler den Berechtigungsstatus nicht kennen, wird die User Experience schlechter
Wenn Apple Einschränkungen einführt, sollten sie auch für die eigenen Apps gelten. AirPlay und AirDrop müssten jeweils nach Bluetooth- und lokalem Netzwerkzugriff fragen, die Photos-App müsste beim Start den Prompt „Fotos auswählen, alle erlauben, ablehnen“ anzeigen, und die Camera-App dürfte ohne denselben Prompt ebenfalls nicht in die Fotomediathek schreiben
Nur so hätte Apple einen Anreiz, die User Experience rund um solche Einschränkungen ordentlich zu gestalten und statt verwirrender Dialoge kreativere Lösungen zu finden
Derzeit gibt es keinen Anreiz für gutes Design. Jeder iOS-Entwickler, der mit diesen APIs gearbeitet hat, weiß, dass das Design wegen willkürlicher und unerwarteter Einschränkungen miserabel ist
AirPlay benötigt diese Berechtigung nicht
Dokumentation: https://developer.apple.com/documentation/technotes/tn3111-i...
Die Prüfung wird kleine Spam-Apps wohl blockieren, aber wie der Autor und andere sagen, vermutlich keine großen Player
Unklar bleibt aber weiterhin, ob bei vorhandener Berechtigung ein Prompt erscheint, mit dem Nutzer die Nutzung der API ablehnen können
Gibt es eine Möglichkeit herauszufinden, welche populären Apps das verwenden?
Wie die meisten hier habe ich WeChat oder Alipay nicht installiert, aber mich würden Apps wie Instagram, Facebook, WhatsApp, Twitter, TikTok, Snapchat, Chrome, Firefox, Photoshop oder Lightroom interessieren
Man sollte eine App nicht herunterladen und installieren müssen, nur um zu sehen, welche Aktionen sie versuchen wird
Der App Store kennt diese Informationen bereits, und sie vor dem Download in den App-Details anzuzeigen, wäre sehr einfach
Man sollte auch darüber sprechen, dass iOS/macOS bei jedem Systemupdate Wi-Fi- und Bluetooth-Funkgeräte einschaltet
Entgegen dem Wiegenlied aus dem Marketing wirkt es fast wie ein Gerät, das absichtlich dafür gebaut wurde, Überwachung zu maximieren
99 % der Leute nutzen oder brauchen sie, also hat Apple sich wohl dafür entschieden, den Einstellungszustand nicht nachzuverfolgen; außerdem mag Apple Bluetooth-Tastaturen und -Mäuse
Jetzt bin ich neugierig. Welche anderen Apps haben diese Berechtigung?
Gibt es eine Möglichkeit herauszufinden, welche der auf meinem Telefon installierten Apps diese Berechtigung haben?
Eines der großen Probleme einer vollständig geschlossenen Plattform
Dass der Plattformbetreiber die Privatsphäre respektiert und Übergriffe anderer verhindert, ist am Ende nicht mehr als ein Versprechen per kleinem Finger
Sicherheit von Computing-Plattformen ist grundsätzlich schwierig, und gerade Privatsphäre ist kulturell viel unschärfer definiert als klassische Computersicherheit, die über technische Umgehungen von Zugriffskontrollen definiert wird
Der Kern ist, ob Apple versuchen will, als Kurator des Ökosystems aufzutreten
Als Uber früher fragwürdige Dinge getan hat, hat Apple auch einmal ein Chicken Game gespielt, um sie zum Aufhören zu bringen
Natürlich könnten Alipay und WeChat schwieriger sein, weil der chinesische Markt für Apple sehr groß und für den aktuellen Erfolg wichtig ist
Es wird interessant sein zu sehen, wie Apple sich in den nächsten Jahren daran anpasst
Offene Plattformen haben solche Probleme ebenfalls und verlassen sich vielleicht sogar noch stärker auf Versprechen per kleinem Finger
Wenn nicht gemeint ist: „Falls dieses Problem nicht gelöst wird, ist eine offene Plattform besser“, verstehe ich den Punkt nicht ganz
Das Problem an dieser Logik ist, dass dies nur ein einzelner Fehlschlag unter vielen Problemen ist und später gelöst werden kann, während offene Plattformen neben diesem Problem noch viele weitere ungelöste Probleme haben
Ich habe Beschwerden gehört, dass dieser Titel übertrieben sei; wenn es bessere, genauere und neutralere Titelvorschläge gibt, kann er gern geändert werden
Ganz sicher bin ich nicht, aber nach dem Lesen des Artikels wirkt der aktuelle Titel nicht wirklich wie eine Tatsache
Für die Nutzung von
NEHotspotHelperist die spezielle Berechtigungcom.apple.developer.networking.HotspotHelpererforderlich, die beantragt werden muss; Apple wird sie Apps vermutlich nicht erteilen, wenn kein berechtigter Bedarf besteht.Allerdings scheint das die Unvereinbarkeit zwischen Apples Datenschutzstrategie und Super-Apps wie WeChat oder Alipay zu zeigen.
Wenn ein Unternehmen alle Funktionen in eine einzige App packt, hat diese App plötzlich alle Berechtigungen, und es wird schwer nachvollziehbar, wann und wie sensible Daten verwendet werden.
Im Westen werden Apps normalerweise nicht so gebaut. Comcast hat zum Beispiel eine separate „WiFi Hotspots“-App.
Witzigerweise wurde vor zwei Tagen angekündigt, diese Funktion in die Haupt-App Xfinity zu integrieren; vielleicht holt der Westen also gerade auf.
Ich lehne sie sofort ab, und wenn dadurch Funktionen der App kaputtgehen, lösche ich die App gleich mit.
Auch dass Google Maps ständig drängt, die genaue Standortbestimmung zu aktivieren, fragt, ob ich statt eines Freundes gerade navigiere, und Zugriff auf Kontakte erlauben will, lehne ich ab.
com.apple.developer.networking.HotspotHelperunter iOS widerrufen?Unter Einstellungen → Datenschutz & Sicherheit → Lokales Netzwerk, oder an anderer Stelle?
Ein Unternehmen, das Datenschutz als Verkaufsargument nutzt, greift hinter den Kulissen offenbar Nutzerbenachrichtigungen und Standortdaten ab.
Ich dachte, diese Funktion sei gesperrt, deshalb seien Ein- und Ausstiegsbenachrichtigungen in der U-Bahn nicht möglich, aber offenbar gab es die Funktion schon. Warum funktioniert das dann nur auf dem iPhone nicht...