Soz.-Netzwerke_NutzertrackiUnternehmen wie Facebook und Google verfolgen ihre Nutzerinnen im Internet mithilfe zahlreicher Trackingtechnologien. Dabei werden auf Millionen von Webseiten kleine Code-Schnipsel eingebunden, die Ressourcen von einer Domain des Tracking-Unternehmens laden. Oft erfüllen diese Ressourcen sogar einen bestimmten Zweck und stellen beispielsweise Funktionalitäten wie einen Like-Button, Schriftarten, Werbeeinblendungen oder Webanalyse-Funktionen für die Betreiberinnen der Webseiten zur Verfügung.

Mithilfe von Cookies, sogenannten Flash-Cookies, dem Web-Storage oder auch mit subtileren Techniken wie E-Tag-Tracking, Browser-Fingerprinting oder sogar HSTS-Tracking identifizieren Tracking-Unternehmen heute beinahe alle Internetnutzerinnen auf immer mehr Webseiten und erhalten so einen fast lückenlosen Browserverlauf dieser.

Vollständig schützen können Sie sich vor diesem gigantischen Lauschangriff zwar immer weniger, aber es gibt einige Browser-Plugins, die Sie zumindest teilweise dabei unterstützen, Ihre Privatsphäre gegenüber den großen Tracking-Unternehmen zu wahren.

 

Wie kann eine Internetnutzerin eindeutig identifiziert werden?

Egal welche Technologie zum Tracking einer Internetnutzerin zum Einsatz kommt, alle Technologien müssen ein Problem lösen, nämlich das, jeder Nutzerin einen eindeutigen Namen zu geben[1]. Da der natürliche Name einer Person zum Zwecke der eindeutigen Identifizierung nur bedingt geeignet ist und diese Information den Betreibern häufig auch gar nicht vorliegt, greift man zu diesem Zwecke meist auf eine simplere Lösung zurück: Man weist einfach jeder Person eine Zahl zu.

Sofern die Tracking-Unternehmen die Zahl, die sie einer Nutzerin zuweisen, selbst wählen können, bietet es sich an, Nutzerinnen einfach durchzunummerieren. Da es unendlich viele natürlich Zahlen gibt, gehen diese niemals aus und egal wie viele Menschen bzw. Internetnutzerinnen es auf der Welt gibt, jeder Nutzerin kann anhand der ihr zugeordneten Zahl eindeutig identifiziert werden.

Häufig ist es den Tracking-Unternehmen jedoch nicht möglich, die den Nutzerinnen zugeordneten Zahlen beliebig zu wählen. In diesen Fällen kommt die entsprechende Zahl meist aufgrund von bestimmten Eigenschaften der Nutzerin bzw. ihres Webbrowsers zustande. Man spricht dabei auch von Fingerprinting (siehe Abschnitt Fingerprinting-Technologien). Damit die einer Nutzerin zugeordnete Zahl jedoch eindeutig ist, muss sichergestellt sein, dass keine andere Nutzerin dieselbe Kombination von Eigenschaften besitzt[2].

Wenn man davon ausgeht, dass Eigenschaften stets binär sind, also dass sie von einer Nutzerin jeweils entweder erfüllt werden oder nicht[3] und außerdem vereinfachend davon ausgeht, dass alle diese Eigenschaften unabhängig voneinander erfüllt werden können und mit jeweils gleicher Wahrscheinlichkeit die Werte wahr bzw. falsch annehmen[4], so benötigt man, um alle Menschen (73844498035[5])aufgrund der ihnen eigenen Kombination von Eigenschaften eindeutig zu identifizieren, insgesamt rund 33 verschiedene Eigenschaften, denn damit lassen sich 233=8589934592>7384449803 verschiedene Kombinationen ausdrücken. Nach der Informationstheorie von Shannon (1) würde man sagen, dass 33 bit Informationen nötig sind, um eine Nutzerin zu identifizieren. Mathematisch etwas ausführlicher hat das Peter Eckersley in seinem Artikel „A Primer on Information Theory and Privacy“ betrachtet (2).

In der Praxis sind die Eigenschaften der Nutzerinnen allerdings selten unabhängig voneinander und auch die Wahrscheinlichkeit dafür, dass eine Nutzerin eine bestimmte Eigenschaft erfüllt, ist nicht für alle Eigenschaften gleich groß. Zum Beispiel kann eine Nutzerin, wenn Sie den Firefox als Webbrowser nutzt, nicht gleichzeitig den Safari nutzen[6]. Außerdem ist die Wahrscheinlichkeit, dass eine Nutzerin den Firefox nutzt, vermutlich wesentlich größer als die Wahrscheinlichkeit dafür, dass sie den Konsolenbrowser Lynx nutzt. Der Informationsgehalt einzelner Eigenschaften ist also unterschiedlich groß. Tatsächlich kann eine Eigenschaft wie die Fenstergröße des Browsers einen so großen Informationsgehalt haben, dass Sie als Nutzerin bereits ausschließlich anhand dieser Eigenschaft eindeutig identifiziert werden können. Der Informationsgehalt einer Eigenschaft kann nach Eckersley mithilfe von Formel 1.1 bestimmt werden (2).


S=−log2(nE/N)

(1.1)

Dabei bestimmt nE die Anzahl der Nutzerinnen, die die Eigenschaft E erfüllen und N die Anzahl aller Nutzerinnen. Wenn man also eine Eigenschaft findet, die von nur einer einzigen Nutzerin erfüllt wird, ergibt sich für diese Eigenschaft ein Informationsgehalt von S=−log2(nE/N)=−log2(1/7384449803)=32,78 bit. Das entspricht dem Informationsgehalt, den wir für unabhängige Eigenschaften mit jeweils gleicher Wahrscheinlichkeit von 50% angenommen hatten.

Welche Trackingtechnologien gibt es?

Grundsätzlich kann man zwei verschiedene Trackingtechnologien unterscheiden. Bei Technologien, die sich einen frei beschreibbaren, persistenten Speicher auf dem Gerät einer Nutzerin zunutze machen, um dort eine für die jeweilige Nutzerin eindeutige ID abzulegen, ergeben sich kaum Probleme dabei, eine Nutzerin wiederzuerkennen. Stattdessen gibt es zum Teil Probleme damit, persistent beschreibbaren Speicher nutzbar zu machen, bzw. zu verhindern, dass dieser regelmäßig gelöscht wird.

Fingerprinting-Technologien folgen einem anderen Ansatz und versuchen Personen bzw. Rechner anhand von Kombinationen ihrer Eigenschaften zu identifizieren. Hier geht es weniger darum, dass diese Eigenschaften persistent bleiben, sondern es muss vor allem das Problem gelöst werden, überhaupt eine eindeutige Kombination von Eigenschaften zu bestimmen, mit der eine Nutzerin identifiziert werden kann. Momentan werden Fingerprinting-Technologien noch wesentlich seltener eingesetzt, als Technologien zur Nutzung persistenter Speicherbereiche, in Zukunft ist aufgrund der sich langsam durchsetzenden Private-Browsing-Modi der unterschiedlichen Browser eine Umkehrung dieses Verhältnisses zu erwarten.

 

Tracking mithilfe von persistentem Speicher

Die wohl älteste und einfachste Form von Tracking mithilfe von persistentem Speicher sind sogenannte Cookies. Dabei handelt es sich um kleine Textdateien die vom Browser auf dem Rechner der Nutzerinnen abgelegt werden. Wird eine Anfrage an eine Seite gesendet, werden alle, dieser Seite zugeordneten Cookies, an diese angehängt. Der Betreiber der Seite ist also ohne weiteres in der Lage dazu, einen für die jeweilige Nutzerin eindeutigen Wert in einem (oder mehreren) Cookie(s) zu speichern und diese bei einem erneuten Seitenbesuch wiederzuerkennen.

Von Zeit zu Zeit löschen jedoch selbst die nachlässigsten Benutzerinnen ihre Cookies und zudem gibt es mit Browser-Plugins wie beispielsweise Self-Destructing Cookies[7] mittlerweile äußerst effiziente Strategien, um sich gegen ein Tracking auf Basis von Cookies zu wehren. Deshalb suchen Tracking-Unternehmen ständig nach neuen Wegen, persistenten Speicher auf den Rechnern der Nutzerinnen zu beschreiben und diesen auszulesen.

Lange Zeit galten dabei sogenannte Flash Cookies[8] weit verbreitet[9]. Der Vorteil gegenüber Cookies: Flash Cookies werden so gut wie nie gelöscht. Außerdem kann eine Nutzerin, da Flash Cookies nicht vom Browser, sondern vom darin genutzten Flash-Plugin abgelegt werden, selbst dann, wenn sie einen anderen Browser nutzt, um eine Webseite zu besuchen, wiedererkannt werden.

Neben klassischen Cookies und Flash Cookies gibt es eine ganze Reihe weiterer Tracking-Technologien, die sich persistente Speicherbereiche auf dem Rechner der Nutzerin zunutze machen, die wohl gemeinste von allen ist jedoch das sogenannte HSTS-Tracking. HSTS steht eigentlich für HTTP Strict Transport Security und bezeichnet eine Strategie, bei der unsichere Verbindungen zu einer Webseite, dank eines von der Seite gesetzten Wertes, in Zukunft stets automatisch zu sicheren Verbindungen aufgewertet werden. Das ist eigentlich eine super Sache, schließlich lassen sich durch den Einsatz von HSTS viele Angriffe auf die Verbindungen einer Nutzerin schon im Vorfeld unterbinden. Das Problem ist jedoch, dass die Betreiber einer Seite sehr einfach testen können, ob der HSTS-Header für eine bestimmte Webseite schon einmal gesetzt wurde oder nicht. Dazu müssen sie die Nutzerin lediglich auf die entsprechende Domain via unverschlüsselter Verbindung verweisen und können dann beobachten, ob eine sichere oder tatsächlich eine unsichere Verbindung aufgebaut wird. Indem die Betreiber dieses Vorgehen für mehrere Domains anwenden, können Sie eine eindeutige ID auf dem Rechner der Benutzerin codieren, indem sie den gesetzten bzw. nicht gesetzten HSTS-Header einer Domain als gesetztes bzw. nicht gesetztes Bit auffassen[10].

Der Grund, dass diese Technologie so bösartig ist, ist die Tatsache, dass auf diese Art und Weise ein wichtiges Sicherheitskonzept ausgenutzt wird, um den Nutzerinnen ihre Privatsphäre zu stehlen.

 

Fingerprinting-Technologien

Fingerprinting-Technologien nutzen zahlreiche verschiedene Eigenschaften des Browsers einer Nutzerin, um diese eindeutig zu bestimmen. In aller Regel handelt es sich hier um Werte wie den User-Agent, der Name und Version des Browsers, sowie des Betriebssystems, Informationen über Browser-Plugins, installierte Schriftarten, Bildschirmabmessungen, usw. Nach einer Studie von Peter Eckersley lassen sich auf diese Art und Weise über 90 Prozent (94,2%) aller Browser mit JavaScript oder Flash eindeutig identifizieren (4).

Doch das ist nicht die einzige Technologie mit der sich Nutzerinnen aufgrund von Browsereigenschaften identifizieren lassen. Sogenanntes Canvas Fingerprinting (5) ist ebenso wie Micro-Performance Benchmarks (6) eine geeignete Strategie, um Nutzerinnen mithilfe von Fingerprinting-Technologien wiederzuerkennen. Es ist und bleibt ein Wettrüsten zwischen Browser-Herstellern und Tracking-Unternehmen, das über die Privatsphäre der Internetnutzerinnen entscheidet, doch zumindest im Moment sieht es so aus, als hätten die Tracking-Unternehmen die Nase vorn.

 

Referenzen

(1) Shannon, Claude E.: A Mathematical Theory of Communication, 1948, The Bell System Technical Journal, AT&T (New York), Ausgabe: XXVII (Nr. 3), S. 379 – 423, http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6773024&tag=1, letzter Zugriff: 2015-11-30 15:00:00

(2) Eckersley, Peter: A Primer on Information Theory and Privacy, Jan. 2010, Electronic Frontier Foundation, https://www.eff.org/deeplinks/2010/01/primer-information-theory-and-privacy, letzter Zugriff: 2015-11-30 15:00:00

(3) Soltani, Ashkan, Canty, Shannon, Mayo, Quentin, Thomas, Lauren und Hoofnagle, Chris Jay: Flash Cookies and Privacy, 2009.

(4) Eckersley, Peter: How Unique Is Your Web Browser, 2010, Privacy Enhancing Technologies, Springer (Berlin/Heidelberg), S. 1 – 18, https://panopticlick.eff.org/browser-uniqueness.pdf, letzter Zugriff: 2015-11-30 15:00:00

(5) Mowery, Keaton und Shacham, Hovav: Pixel Perfect: Fingerprinting Canvas in HTML5, 2012, Proceedings of W2SP 2012, IEEE Computer Society. http://w2spconf.com/2012/papers/w2sp12-final4.pdf, letzter Zugriff: 2015-11-30 15:00:00

(6) Mowery, Keaton, Bogenreif, Dillon, Yilek, Scott und Shacham, Hovav: Fingerprinting Information in JavaScript Implementations, 2011, Proceedings of W2SP 2011, IEEE Computer Society, http://www.w2spconf.com/2011/papers/jspriv.pdf, letzter Zugriff: 2015-11-30 15:00:00

 

Fußnoten

[1] In der natürlichen Sprache nutzt man zum Zwecke der eindeutigen Identifizierung einer Person den Vor- und Nachnamen derselben. Das löst das Problem der Eindeutigkeit regional in aller Regel sehr gut, will man jedoch die Gesamtheit der Menschheit betrachten, ergibt sich dabei das Problem, dass viele Kombinationen aus Vor- und Nachname mehr als einmal auftreten. Damit ist nicht mehr eindeutig bestimmbar, um welche Person es sich handelt, wenn einen solchen, von mehreren Personen getragenen Namen nennt. Man benötigt in einem solchen Fall weitere Informationen über die benannte Person, beispielsweise deren Geburtsdatum, um eindeutig zu bestimmen, wer gemeint ist.

[2] In diesem Fall wäre die entsprechende Zahl schließlich nicht mehr eindeutig.

[3] Diese Annahme kann man ohne Beschränkung der Allgmeinheit durchaus treffen, denn man kann alle Eigenschaften, die mehr als zwei Werte haben können, in mehrere binäre Eigenschaften umwandeln. So kann man beispielsweise die Eigenschaft Browser, die die Werte Firefox, Internet Explorer, Google Chrome, Safari, usw. annehmen kann, als n Eigenschaften darstellen: ist Firefox? mit den möglichen Werten wahr und falsch, ist Internet Explorer? mit den möglichen Werten wahr und falsch, usw. Allerdings sind diese, ursprünglich aus einer einzigen Eigenschaft entstandenen Eigenschaften in aller Regel nicht unabhängig voneinander.

[4] Diese beiden Annahmen stellen allerdings eine Einschränkung der Allgemeinheit dar, wie Sie im folgenden Abschnitt sehen werden.

[5] Quelle: Stiftung Weltbevölkerung

[6] Tatsächlich ergeben sich bei dieser Annahme Probleme mit Nutzern die mehrere Geräte und Browser gleichzeitig nutzen, das wollen wir bei dieser Einführung allerdings vernachlässigen.

[7] Sie können dieses Plugin für den Firefox Webbrowser hier herunterladen und installieren.

[8] Eigentlich Local Shared Objects genannt.

[9] Nach einer Studie von Soltani, Canty, Mayo, Thomas und Hoofnagle (3) wurden im Jahr 2009 auf über 50% der von der Forschergruppe untersuchten Webseiten eingesetzt (3).

[10] Eine ausführlichere Erklärung des HSTS-Trackings finden Sie beispielsweise hier.