Unser Nutzungs- und Surfverhalten im Internet ist für viele Unternehmen – vor allem im Marketing-Bereich – von großem Interesse. Dabei geht es hauptsächlich um die Wiedererkennung respektive das Tracking der Nutzer, um ihnen passende Werbung anzuzeigen. Dass dafür u.a. Browser-Cookies genutzt werden, ist kein großes Geheimnis mehr. Damit ein Tracking der Benutzer auch ohne bzw. bei deaktivierten Cookies funktioniert, verwenden Werbe- und Tracking-Anbieter verstärkt sogenannte Device/Browser-Fingerprinting-Methoden. Eine neue Variante stellt z.B. das Tracking durch HSTS-Einträge dar.

HSTS-Verfahren

Das im Jahr 2012 eingeführte HTTP Strict Transport Security- oder kurz HSTS-Verfahren (RFC 6797) erlaubt es, die Nutzung eines Webangebots nur über sichere HTTPS-Verbindungen zu ermöglichen und dient in erster Linie als Maßnahme gegen sogenannte Man-in-the-middle-Angriffe: Sofern eine Webseite HSTS implementiert, werden aufrufende Browser veranlasst, anstatt unverschlüsselter HTTP-Anfragen während der gesamten Kommunikation nur verschlüsselte HTTPS-Verbindungen zu nutzen. Weiterhin akzeptieren die Browser keine ungültigen oder selbstsignierten SSL/TLS-Zertifikate, bei denen die Vertrauenswürdigkeit der Zertifikate nicht vollständig sichergestellt werden kann.

Damit das HSTS-Verfahren funktioniert und bei einem erneuten Webseitenaufruf automatisch das sichere HTTPS verwendet wird, muss sich der Browser des Benutzers merken, auf welchen Webseiten HSTS genutzt werden soll. Dafür werden die entsprechenden Einträge, ähnlich zu Cookies, in einer Browserdatenbank gespeichert. Anders als gewöhnliche Cookies werden die HSTS-Einträge allerdings aufgrund der eigentlichen Sicherheitsfunktion auch im privaten Modus des Browsers – mit Unterschieden zwischen den einzelnen Herstellern – aktiviert und können von den besuchten Webseiten überprüft werden. Dies macht die HSTS-Funktion für Werbe- und Trackingnetzwerke zu einer durchaus effektiven Alternative zur Nutzerverfolgung mittels Browser-Fingerprinting-Methoden und erhebt die HSTS-Einträge in den Rang der sogenannten „SuperCookies“.

Tracking mittels HSTS-SuperCookies

Die Wiedererkennung der Benutzer erfolgt durch die Erzeugung einer persistenten Identifikationsnummer respektive eines SuperCookies im Browser des Nutzers, indem eine Kombination von HSTS-Einträgen für unterschiedliche (Sub-)Domains generiert wird. Durch eine Erhöhung der Kombinationsmöglichkeiten kann die Zuverlässigkeit des Trackings dabei beliebig gesteigert werden. Beispielsweise kann eine Tracking-Agentur HSTS für die Domain tracker-domain.de aktivieren, indem beim Aufruf einer Webseite zusätzlich ein simples Bild über https://www.tracker-domain.de/tracking.png angefordert wird und der Server mit dem entsprechenden HSTS-Header antwortet. Dabei besteht zwar die Möglichkeit, HSTS gleich für alle Sub-Domains (*.tracker-domain.de) zu aktivieren, allerdings kann  ein extra HSTS-Eintrag auch für jede beliebige Sub-Domain generiert werden. Die Tracking-Agentur würde daher zum Beispiel jeweils einen Eintrag für https://id-1.tracker-domain.de/tracking.png, https://id-2.tracker-domain.de/tracking.png, https://id-3.tracker-domain.de/tracking.png, usw. erstellen. Diese werden je Nutzer unterschiedlich kombiniert, um einen möglichst eindeutigen Fingerprint in der HSTS-Browserdatenbank zu erzeugen. Diese Methode wurde bereits im April 2012 von Mikhail Davidov beschrieben, was allerdings keine großen Reaktionen auslöste. Der britische IT-Berater Sam Greenhalgh hat nun gezeigt, dass auch die automatische Erzeugung der HSTS-Einträge per JavaScript kein Problem darstellt. Greenhalgh erstellt in seinem Testszenario 32 dieser Einträge, woraus sich mehr als vier Milliarden Kombinationen ergeben, um einen Browser zu identifizieren. Sobald die Einträge angelegt sind, kann jede andere Webseite den Fingerprint auslesen, indem die automatische Weiterleitung von HTTP auf HTTPS für die einzelnen Sub-Domains überprüft wird.

Reaktion der Browser-Hersteller

Die Browser-Hersteller haben mittlerweile – teilweise sehr unterschiedlich – auf das Datenschutzproblem reagiert. Mozilla hat sich dazu entschieden, den Datenschutz über die Sicherheit zu stellen und lässt einen Zugriff auf die HSTS-Einträge ab Firefox-Version 34.0.5 in privaten Sitzungen nicht mehr zu. Google ist dagegen der Meinung, dass die meisten Maßnahmen gegen Browser-Fingerprinting-Methoden auch fundamentale Funktionen des Internets einschränken und implementiert daher keinen Schutz gegen die HSTS-Datenschutzlücke. Der Internet Explorer unterstützt HSTS erst gar nicht und bietet daher weder die damit verbunden Sicherheitsvorteile noch die Tracking-Möglichkeiten.