Webtracking auf Schweizer Websites (Fingerprinting und Session Replay)

In den letzten Jahren wurden die Verfahren zum Tracking von Besuchern auf Websites ausgefeilter. Als Alternative zu Cookies können individuelle Fingerabdrücke des Browsers («Fingerprinting») genommen werden, die – anders als Cookies – durch den Besucher nicht gelöscht werden können. Ferner sind Betreiber in der Lage den Besuch inkl. Texteingaben und Mausbewegungen einer Website ohne Kenntnis des Benutzers aufzuzeichnen («Session Replay») oder je nach Anbieter live zu beobachten. Fälschlicherweise eingegebene Passwörter oder Kreditkartendaten können theoretisch ohne explizite Kenntnis des Nutzers zum Betreiber gelangen.

Ergebnisse aus der Untersuchung von ausgewählten Schweizer Websites

Eine nicht-abschliessende Untersuchung von 374 populären Schweizer Websites im März 2018 ergab, dass mindestens 24% der Websites moderne Fingerprinting-Verfahren nutzen (darunter Digitec, NZZ, Swiss und Zalando). Knapp acht Prozent der Websites nutzen Session-Replay-Verfahren (darunter Doodle, Jobs.ch, Migros-Magazin, Moneyhouse, Siroop). Die vollständigen Ergebnisse hier.

SwissBlockierter Canvas Finterprinting-Versuch beim Besuch von Swiss.com

Vorgehen und Ergebnisse

Zunächst wurden populäre Websites der Schweiz ermittelt. Dazu wurde die Alexa Top 500 Schweiz sowie der Net-Metrix Report konsolidiert (beides Stand 2.3.18) und Seiten ohne direkten Schweizer Bezug herausgefiltert (z.B. amazon.com, google.com). Mobile Websites und Apps wurden nicht betrachtet. Insgesamt ergaben sich als Untersuchungsgegenstand 374 relevante Schweizer Websites.

Anschliessend wurden die Websites mittels Open WPM automatisiert untersucht (zustandslos). Dabei wurden die Websites mittels Firefox 52 besucht und u.a. Script-Aufrufe aufgezeichnet. Die aufgezeichneten Daten wurden manuell auf Fingerprinting und Session-Replay untersucht.

Bei der Analyse des Fingerprintings standen Canvas Fingerprinting (gefunden auf 49 Websites), Canvas-Font Fingerprinting (3 Websites) und WebRTC Fingerprinting (2 Websites) sowie die Suche nach populären Fingerprinting Scripts (z.B. Valve, Dakt) im Mittelpunkt (Scripts gefunden auf 90 Websites). Andere verbreitete Fingerprinting-Verfahren (z.B. HTTP-Header, IP, Plugins) und spezielle Verfahren (z.B. Batterie-Eigenschaften) wurden genauso wenig untersucht wie Tracking durch clientseitig-gepeicherte Trackingcodes (z.B. Cookies) oder Webbeacons.

Die Suche nach Session-Replay-Scripts beschränkte sich auf 14 populäre Anbieter. Die auf 28 Websites gefundenen Scripts stammen von Hotjar (23 Websites), Yandex Metrika (2), Clicktale (1) Smartlook (1), Mouseflow (1) und Luckyorange (1).

Hintergrund Fingerprinting

Beim Fingerprinting wird auf Basis von verschiedenen Browsermerkmalen (z.B. IP, Bildschirmauflösung, vorhandene Schriftarten, installierte Plugins) ein nahezu einzigartiger Fingerabdruck des Browsers erstellt und als Identifikator beim Betreiber gespeichert und zum Tracking benutzt. Da sich die Browsermerkmale und damit der Fingerabdruck selten ändern, kann ein Nutzer beim erneuten Besuch einer Website oder über verschiedene verbundene Websites (z.B. NZZ Netzwerk, Tamedia) wieder identifiziert werden.

Beim Canvas Fingerprinting wird eine für den Nutzer unsichtbare Grafik erzeugt. Da diese in jedem Browser minimal anders erzeugt wird, kann sie als individueller Fingerabdruck des Browsers genutzt werden («toDataUrl»). In der Abbildung oben ist die Grafik des Standardscripts von “Valve” zu sehen, die auf Swiss.com zum Fingerprinting erzeugt wurde.

Im Gegensatz dazu werden beim HTML Canvas-Font Fingerprinting verschiedene, unsichtbare Texte erzeugt. Da auch diese von Browser zu Browser minimal unterschiedlich dargestellt werden, kann auf Basis des Textbreite ein individueller Fingerabdruck erzeugt werden («measureText»).

Schliesslich wird beim WebRTC Fingerprinting ein Interface zum genutzt Fingerprinting (z.B. auf Basis verschiedener Netzwerkadressen), das eigentlich zur Kommunikation zwischen Nutzern gedacht ist.

Hintergrund Session Replay

Beim Session Replay zeichnet eine JavaScript kontinuierlich die Benutzereingaben im Browser auf. Dazu gehören Mausbewegungen und Formulareingaben. Selbst wenn der Benutzer ein Formular nicht ausdrücklich abschickt, können Eingaben «mitgeschnitten» werden und ja nach Scriptanbieter auch live beobachtet werden. Betreiber nutzen Session Replay zur Verbesserung der Benutzbarkeit ihrer Websites. Allerdings können auch ohne explizite Kenntnis der Benutzer sensitive Daten an den Betreiber gelangen. Session Replay wird häufig mit Fingerprinting kombiniert, um den Nutzer beim erneuten Besuch der Website wieder zu identifizieren (z.B. Hotjar)

Weiterführende Informationen:

 

2 thoughts on “Webtracking auf Schweizer Websites (Fingerprinting und Session Replay)

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s