Bis 2016 stützte sich die Debatte über Online-Tracking auf Anekdoten und kleine Stichproben. Eine Zusammenarbeit aus dem Jahr 2014 hatte gezeigt, dass Websites unsichtbare Bilder einbinden, um Geräte zu fingerprinten, doch niemand hatte das Tracking-Ökosystem im großen Maßstab vermessen: wie viele Dritte es tatsächlich gibt, wie sich Tracking in Richtung zustandslosem Fingerprinting verschiebt oder ob Datenschutzwerkzeuge tatsächlich funktionieren.
Die üblichen Methoden zur Untersuchung des Problems konnten es nicht erfassen. Die Inspektion von HTML ohne dessen Ausführung übersieht Code, der nur innerhalb eines Browsers läuft; die manuelle Prüfung einiger hundert populärer Websites verbirgt den langen Schwanz der Tracker; und Blocklisten und Datenschutz-Erweiterungen wurden ohne Evidenzbasis verteidigt und angegriffen. Insbesondere Fingerprinting ist unsichtbar, sofern eine Seite nicht tatsächlich geladen wird.
Die Princeton-Forscher Steven Englehardt und Arvind Narayanan bauten OpenWPM, einen automatisierten Crawler, der einen vollständig instrumentierten Firefox-Browser steuert, und ließen ihn im Januar 2016 über die Top 1 Million Websites laufen, wobei über 90 Millionen Anfragen gestellt wurden. Getrennte zustandsbehaftete und zustandslose Crawls unterschieden cookiebasiertes Tracking von Fingerprinting, und zwei Crawls über 55.000 Websites mit Ghostery und mit der Drittanbieter-Cookie-Blockierung von Firefox quantifizierten die Wirkung des jeweiligen Werkzeugs.
Der Maßstab verwandelte Messung in Struktur: Es existieren über 81.000 Dritte, doch nur 123 erscheinen auf mehr als 1 % der Websites, alle der Top 5 und 12 der Top 20 gehören Google, und Google, Facebook und Twitter sind die einzigen Entitäten, die auf über 10 % der Websites präsent sind. Canvas-Fingerprinting trat auf 14.371 Websites auf, drei zuvor nie gemessene Techniken – AudioContext, Canvas-Font und WebRTC – wurden dokumentiert, und bei 54 % der Dritten wurde festgestellt, dass sie nur über HTTP laden, was ein Hindernis für die HTTPS-Einführung darstellt.
Den Browser selbst instrumentieren und dann eine Million Websites beobachten
Das Ausführen vollständiger Seiten in einem instrumentierten Browser erfasst JavaScript-getriebenes Fingerprinting, das statische Analyse und Blocklisten nicht sehen können
Getrennte zustandsbehaftete und zustandslose Crawls ordneten Tracking Cookies gegenüber Geräte-Fingerabdrücken zu, sodass jede Technik sauber gemessen werden konnte
Der Maßstab von einer Million Websites legte die Struktur des Marktes offen: ein steiler langer Schwanz mit Google, Facebook und Twitter als den einzigen Entitäten auf über 10 % der Websites
Nebeneinander durchgeführte blockierte Crawls lieferten die ersten harten Zahlen zu Datenschutzwerkzeugen – Ghostery reduzierte Drittanbieter-Einbindungen von 17,7 auf 3,3 pro Website
Die Veröffentlichung von OpenWPM und der Datensätze verwandelte eine einzelne Studie in eine gemeinsame Infrastruktur, die andere Forscher überprüfen und auf der sie aufbauen konnten
Wenn das Phänomen nur innerhalb der clientseitigen Ausführung existiert, argumentiere nicht mit Blocklisten oder Stichproben – instrumentiere die Laufzeitumgebung, messe im vollen Maßstab und veröffentliche Werkzeug und Daten zur Überprüfung.
Die Datensätze des Crawls vom Januar 2016 wurden als PostgreSQL-Dumps und OpenWPM als offene Plattform veröffentlicht; das Princeton-WebTAP-Projekt listet darauf aufbauende Studien auf, und das OpenWPM-Repository berichtet inzwischen von über 75 Studien, die das Framework nutzen. Die Erhebung dokumentierte zudem, wie sich Fingerprinting seit der Canvas-Studie von 2014 entwickelt hatte: Die prominentesten Tracker stellten nach öffentlichem Gegenwind weitgehend die Nutzung von Canvas-Fingerprinting ein, während die Zahl der Domains, die es einsetzten, wuchs und sich seine Verwendung vom verhaltensbasierten Tracking hin zur Betrugserkennung verschob.
DEN BELEGEN FOLGEN
Die Quellen
- Online tracking: A 1-million-site measurement and analysis Princeton WebTAP · webtransparency.cs.princeton.edu
- OpenWPM: A web privacy measurement framework GitHub · github.com