Eine Forschungsgruppe von Mozilla, der Universität Iowa und der Universität Kalifornien hat die Ergebnisse einer Untersuchung zur Anwendung von Code zur versteckten Identifikation von Benutzern auf Websites zusammengefasst. Unter versteckter Identifikation versteht man die Generierung von Identifikatoren basierend auf indirekten Daten über die Funktionsweise des Browsers, wie zum Beispiel , eine Liste unterstützted MIME-Typen, spezifische Parameter in den Headern ( und ), die Analyse installierter , die Verfügbarkeit bestimmter Web-APIs, die spezifisch für Grafikkarten sind Rendering mit WebGL und , mit CSS, , von Netzwerkports, Analyse der Besonderheiten der Interaktion mit und .
Die Untersuchung von 100.000 der beliebtesten Websites laut Alexa-Ranking hat gezeigt, dass auf 9.040 davon (10,18%) Code zur versteckten Identifikation von Besuchern angewendet wird. Betrachtet man die tausend beliebtesten Websites, so wurde solcher Code in 30,60% der Fälle (266 Websites) identifiziert, und unter den Websites, die im Ranking von Platz tausend bis zehntausend liegen, in 24,45% der Fälle (2.010 Websites). In erster Linie wird die versteckte Identifikation in Skripten verwendet, die von externen Diensten bereitgestellt werden, um und Bots auszusondern, sowie durch Werbenetzwerke und Systeme zur Verfolgung von Benutzern.
Um den Code zur versteckten Identifikation zu identifizieren, wurde ein Werkzeug entwickelt, , dessen Code unter der MIT-Lizenz steht. Im Werkzeug werden Methoden des maschinellen Lernens in Kombination mit statischer und dynamischer Analyse von JavaScript-Code eingesetzt. Es wird behauptet, dass der Einsatz von maschinellem Lernen die Genauigkeit der Identifikation des Codes zur versteckten Identifikation deutlich erhöht hat und 26% mehr problematische Skripte identifiziert wurden
im Vergleich zu einer manuell festgelegten Heuristik.
Viele der identifizierten Identifikationsskripte fehlten in typischen Blocklisten , , DuckDuckGo, und .
Nach dem Versand von den Entwicklern der Blockliste EasyPrivacy wurde ein separater Abschnitt für Skripte zur versteckten Identifikation erstellt. Darüber hinaus ermöglichte der FP-Inspector die Identifikation einiger neuer Methoden zur Nutzung von Web-APIs zur Identifikation, die zuvor in der Praxis nicht vorkamen.
Zum Beispiel wurde die Verwendung von Informationen zur Identifizierung des Tastaturlayouts (getLayoutMap), von Restdaten im Cache (über die Performance-API, die Verzögerungen bei der Datenrückgabe analysiert und ermöglicht, festzustellen, ob der Benutzer auf eine bestimmte Domain zugegriffen hat oder nicht, sowie ob eine Seite zuvor geöffnet wurde), von im Browser festgelegten Berechtigungen (Informationen über den Zugriff auf Notification-, Geolocation- und Camera-API), das Vorhandensein spezialisierter Peripheriegeräte und seltener Sensoren (Gamepads, Virtual-Reality-Headsets, Näherungssensoren) festgestellt. Darüber hinaus wurde die Berücksichtigung bei der Identifizierung des Vorhandenseins spezialisierter APIs für bestimmte Browser und Unterschiede im Verhalten von APIs (AudioWorklet, setTimeout, mozRTCSessionDescription) sowie die Verwendung der AudioContext-API zur Bestimmung der Eigenschaften des Soundsystems dokumentiert.
Im Rahmen der Untersuchung wurde auch die Frage der Beeinträchtigung der regulären Funktionalität von Websites bei Anwendung von Methoden zum Schutz gegen versteckte Identifizierung untersucht, die zu Blockierungen von Netzwerkrequests oder zu Einschränkungen beim Zugriff auf APIs führen. Es wurde gezeigt, dass eine selektive Einschränkung von APIs nur für Skripte, die vom FP-Inspector identifiziert wurden, zu geringeren Beeinträchtigungen in der Funktionalität führt als bei der Anwendung strengerer allgemeiner Einschränkungen der API-Aufrufe in Brave und Tor Browser, die potenziell zu Datenlecks führen können.

Quelle: opennet.ru
