1. Tracking
User-Tracking im Internet verfolgt ein einfaches Ziel: Die möglichst exakte Wiedererkennung eines Nutzers beim Surfen im Internet – am liebsten seitenübergreifend. Für das (seitenübergreifende) Tracking im Internet nutzt insbesondere die Werbe- und Marketingbranche diverse Techniken wie Cookies, Web Bugs oder Canvas Fingerprinting. Firefox-Addons wie das bereits vorgestellte uBlock Origin oder First Party Isolation können euch gegen einen Großteil dieser Tracking-Techniken schützen.
Eine weitere beliebte Methode des User-Trackings ist das serverseitige Auslesen des HTTP-Referers. Gerade große Anbieter wie Google, die auf über 80% der Webseiten vertreten sind, können den Nutzer mit dieser Technik seitenübergreifend über das Internet verfolgen.
Im vorliegenden Beitrag der Serie »Firefox-Kompendium« möchte ich euch das Addon Smart Referer vorstellen, mit dem sich diese Form des User-Trackings effektiv unterbinden lässt.
- Firefox: Ein Browser für Datenschutzbewusste – Firefox-Kompendium Teil1
- Firefox: uBlock Origin – Firefox-Kompendium Teil2
- Firefox: Decentraleyes – Firefox-Kompendium Teil3
- Firefox: First Party Isolation – Firefox-Kompendium Teil4
- Begleitartikel: Firefox-Kompendium: Warum ein JavaScript-Blocker notwendig ist
- Firefox: NoScript – Firefox-Kompendium Teil5
- Firefox: Smart Referer – Firefox-Kompendium Teil6
- Firefox: Neat URL – Firefox-Kompendium Teil7
- Firefox: Skip Redirect – Firefox-Kompendium Teil8
- Firefox: uMatrix – Firefox-Kompendium Teil9
- Firefox: about:config | user.js – Firefox-Kompendium Teil10
2. Smart Referer
Bevor wir uns mit der Installation und Konfiguration von Smart Referer befassen, möchte ich kurz anhand eines Beispiels aufzeigen, was das Addon (im Hintergrund) leistet.
Du kannst den Blog aktiv unterstützen!
Unabhängig. Kritisch. Informativ. Praxisnah. Verständlich.
Die Arbeit von kuketz-blog.de wird vollständig durch Spenden unserer Leserschaft finanziert. Sei Teil unserer Community und unterstütze unsere Arbeit mit einer Spende.
2.1 Die »unsichtbare« Technik
Ein jeder von uns dürfte heutzutage mindestens einmal am Tag mit seinem Browser im Internet surfen. Allerdings sind wir uns oftmals nicht bewusst, was bei dieser für uns alltäglichen Tätigkeit technisch eigentlich geschieht. Nach der Eingabe einer Domain in die Adresszeile des Browsers wird die entsprechende Webseite vom Browser aufgerufen. Nach dem Erreichen der Webseite erhält der Browser entsprechende Informationen, welche Inhalte er laden soll. Nachdem der Ladevorgang abgeschlossen ist, stellt der Browser den Inhalt der Webseite in einer für den Nutzer lesbaren Form dar.
Welche komplexen Prozesse im Hintergrund notwendig sind, um eine Webseite im Browser darzustellen, können die meisten Nutzer vermutlich nicht einmal erahnen. Die dahinterliegende Technik arbeitet vielmehr meist völlig »geräuschlos«. Dabei ist nur den wenigsten bewusst, wie Webseitenbetreiber durch das Einbinden von externen Ressourcen, wie bspw. JavaScript oder Social-Media-Buttons, die Privatsphäre und insbesondere die Sicherheit ihrer Besucher leichtfertig aufs Spiel setzen.
Hinweis
Welche negativen Auswirkungen mit der Einbindung externer Ressourcen (Bilder, JavaScript etc.) einhergeht, könnt ihr im Detail in folgendem Beitrag nachlesen: Das kranke WWW: Stop using Google Web-Services.2.2 Webseitenaufruf ohne Smart Referer
Viele Webseiten binden bspw. JavaScript-Bibliotheken von Drittquellen wie Google ein – hosten diese also nicht selbst. Bei einem Besuch einer Webseite wird daher bspw. eine Verbindung zu
- ajax.googleapis.com
- code.jquery.com
- […]
aufgebaut und dort die entsprechende JavaScript-Ressource (bspw. Google Analytics) nachgeladen. Systembedingt übermittelt euer Browser beim Laden der Ressourcen eure IP-Adresse sowie HTTP-Headerinformationen an die Drittquellen, die diese Informationen gerne sammeln und zum User-Tracking »missbrauchen«.
Anhand eines Beispiels möchte ich euch zeigen, welche HTTP-Headerinformationen ein standardmäßiger Browser übermittelt. Dazu habe ich Spiegel-Online aufgerufen und mir eine der 304 Verbindungen herausgepickt, die von eurem Browser bei einem Besuch initiiert werden. Spiegel-Online bindet JavaScript von der Quelle »www.googletagmanager.com« ein. Besucht ihr Spiegel-Online übersendet euer Browser folgende HTTP-Headerinformationen an Google:
Host: "www.googletagmanager.com" User-Agent: "Mozilla/5.0 (Windows NT 6.1; rv:52.0) Gecko/20100101 Firefox/52.0" Accept: "*/*" Accept-Language: "en-US,en;q=0.5" Accept-Encoding: "gzip, deflate, br" Referer: "http://www.spiegel.de/" Connection: "keep-alive" Cache-Control: "max-age=0"
Sobald euer Browser das JavaScript vom Server »www.googletagmanager.com« nachlädt, übermittelt er nicht nur die IP-Adresse, sondern auch den HTTP-Referer »http://www.spiegel.de/« an Google. Diese Informationen genügen bereits, damit euch Google fast über das gesamte Internet verfolgen kann.
Visuell dargestellt würde also Folgendes im Hintergrund ablaufen:
Beim Aufruf von Spiegel-Online hat der Betreiber externes JavaScript [1] vom Host »googletagmanager.com« in den Kontext der Webseite eingebunden. Der Browser wird diese Anfrage im Hintergrund bearbeiten und eine Verbindung zur Adresse »googletagmanager.com« aufbauen [2], um das JavaScript von Google nachzuladen. Bei diesem Vorgang übersendet der Browser eine ganze Reihe von Metadaten [3], wie die aktuell besuchte Webseite (HTTP-Referer: »http://www.spiegel.de/«) und die IP-Adresse, an die externe Quelle. Zum Schluss wird die Anfrage des Browsers bearbeitet und das JavaScript vom Host »googletagmanager.com« in den Kontext der Webseite [4] nachgeladen.
Wie die Studie »Privacy leakage vs. Protection measures: the growing disconnect« aufzeigt, übermitteln viele Seiten darüber hinaus personenbeziehbare Daten (bspw. E-Mail-Adresse) über den HTTP-Header an Drittseiten:
Host: "https://ad.doubleclick.net/adj/[...]" Referer: "http://submit.sports.com/...?email=john.doe@email.com" Cookie: "id=35c192bcfe0000b1"
Da der HTTP-Referer standardmäßig von eurem Browser übermittelt wird, haben sich die meisten von euch vermutlich noch nicht vor Augen geführt, welches Tracking-Potenzial in dieser unscheinbaren Header-Information stecken kann.
2.3 Webseitenaufruf mit Smart Referer
Schauen wir uns den Verlauf nach der Installation von Smart Referer noch einmal an. Dazu habe ich erneut Spiegel-Online aufgerufen und dieselbe Verbindung bzw. Ressource von der Quelle »www.googletagmanager.com« analysiert. Besucht ihr nach der Installation von Smart Referer Spiegel-Online, übermittelt eurer Browser beim Aufruf der JavaScript-Ressource folgende HTTP-Headerinformationen an Google:
Host: "www.googletagmanager.com" User-Agent: "Mozilla/5.0 (Windows NT 6.1; rv:52.0) Gecko/20100101 Firefox/52.0" Accept: "*/*" Accept-Language: "en-US,en;q=0.5" Accept-Encoding: "gzip, deflate, br" Referer: "https://www.googletagmanager.com/gtm.js?id=GTM-WJQWWTD" Connection: "keep-alive" Cache-Control: "max-age=0"
Systembedingt übermittelt euer Browser weiterhin die IP-Adresse an die Server von Google – allerdings kann Google nun nicht mehr einordnen, von welcher Seite (Spiegel-Online) der Aufruf bzw. die Einbindung der JavaScript-Ressource erfolgte. Smart Referer unterbindet die ursprüngliche Übersendung des HTTP-Referers und übermittelt an den Host »www.googletagmanager.com« einfach den eigenen Hostnamen gefolgt vom Pfad und dem jeweiligen Parameter der aufgerufenen Ressource:
- Hostname: www.googletagmanager.com
- Pfad zur Ressource: /gtm.js
- Parameter: ?id=GTM-WJQWWTD
3. Smart Referer: Anfänger
Bevor wir mit der Installation und Konfiguration von Smart Referer beginnen, möchte ich euch noch ein paar Hinweise mit auf den Weg geben:
- Grüne Wiese: Im Idealfall habt ihr euren Firefox neu installiert (oder ein neues Profil angelegt) und habt bisher lediglich den ersten, zweiten, dritten, vierten und fünften Teil der Artikelserie umgesetzt.
- Ausmisten: Wer hingegen sein bestehendes Firefox-Profil als Ausgangspunkt nimmt, der sollte vor der Installation mögliche Änderungen in der about:config überdenken.
3.1 Installation
Wie bei Firefox üblich wird Smart Referer am besten direkt über die Addon-Seite von Mozilla installiert. Folgt einfach diesem Link und klickt auf »+ Zu Firefox hinzufügen«.
Anschließend muss die Installation mit einem Klick auf »Hinzufügen« bestätigt werden:
Nach einer erfolgreichen Installation wird das Icon von Smart Referer in der Symbolleiste (rechts oben im Eck) auftauchen:
Die Installation ist damit abgeschlossen und Smart Referer arbeitet mit den Standardeinstellungen, die wir so belassen können. Falls Webseiten in seltenen Fällen nicht einwandfrei funktionieren, kann es notwendig sein, Smart Referer zu deaktivieren. Mit einem Klick auf das Icon könnt ihr zwischen aktiviert und deaktiviert wechseln:
4. Smart Referer: Fortgeschrittene
Bereits in der Standardeinstellung übermittelt Smart Referer nicht mehr den ursprünglichen HTTP-Referer. Eine Ausnahme stellen allerdings Subdomains dar. Zwischen »a.example.com« und »b.example.com« werden auch nach der Installation des Addons weiterhin die echten HTTP-Referer-Informationen ausgetauscht. Wer das nicht möchte, der sollte die Voreinstellung von Smart Referer anpassen.
4.1 Smart Referer anpassen
Öffnet die Optionen des Addons und aktiviert dort »Strikter Modus«:
Es ist empfehlenswert diese Option zu aktivieren, da sich Trackinganbieter gerne über Subdomains einer Webseite einnisten, um darüber User-Tracking zu betreiben.
4.2 Whitelist
Standardmäßig wird bei Smart Referer eine Whitelist mitgeliefert. Bei Bedarf könnt ihr diese deaktivieren und eigene Ausnahmen definieren:
5. Fazit
Über welchen Suchbegriff ein Besucher auf eine Webseite gelangt ist oder welche Webseite sich jemand gerade anschaut, mag für einige Protagonisten eine wertvolle Information darstellen. Aus Nutzersicht kann die Sammlung und Auswertung der HTTP-Referer-Informationen allerdings einen Eingriff in die Privatsphäre darstellen, den niemand einfach tolerieren muss. Mittels Smart Referer wird der ursprüngliche HTTP-Referer so umgeschrieben, dass der jeweilige Empfänger daraus keine verwertbaren Informationen extrahieren kann.
In den nachfolgenden Teilen der Serie »Firefox-Kompendium« werde ich euch weitere Firefox-Addons und Einstellungen vorstellen und diese (weiter) aufeinander abstimmen.
Wenn du über aktuelle Beiträge informiert werden möchtest, hast du verschiedene Möglichkeiten, dem Blog zu folgen:
8 Ergänzungen zu “Firefox: Smart Referer – Firefox-Kompendium Teil6”
Forum oder der Chat geeignete Anlaufstellen, um dein Anliegen zu diskutieren. Per E-Mail beantworte ich grundsätzlich keine (Support-)Anfragen – dazu fehlt mir einfach die Zeit. Kuketz-ForumAbschließender Hinweis
Blog-Beiträge erheben nicht den Anspruch auf ständige Aktualität und Richtigkeit wie Lexikoneinträge (z.B. Wikipedia), sondern beziehen sich wie Zeitungsartikel auf den Informationsstand zum Zeitpunkt des Redaktionsschlusses.Kritik, Anregungen oder Korrekturvorschläge zu den Beiträgen nehme ich gerne per E-Mail entgegen.
Inwiefern unterscheidet sich, ob man nun dieses Addon nutzt oder sich an die Anweisungen des folgenden Links hält?
https://privacy-handbuch.de/handbuch_21p.htm
Dort wird erklärt, dass man Referer mit einem einfachen Eintrag in der about:config abschalten kann.
Man kann den HTTP-Referer auch über die about:config beeinflussen: Security/Referrer.
Ist halt die Frage, ob du die eine Whitelist bzw. die schnelle Deaktivierung bzw. Aktivierung via Icon benötigst. Wenn nicht, kannst du den HTTP-Referer auch über die about:config beeinflussen.
Vielen Dank für diese Ergänzung!
Via uMatrix und den Firefox Containern lässt sich der Referer übrigens auch verschleiern
Danke für den Beitrag! Wieder einmal sehr, sehr gut!
Ich habe den referrer seit ca. 10 Jahren ausgeschaltet beim Surfen und keinerlei Nachteile erlitten, weder beim Onlinebanking noch sonstwo.
(Seit ca. sechs Monaten nutze ich allerdings uMatrix’s referrer-Verschleierung. Auch ohne Nachteile.)
Es ist absolut erstaunlich, wie schnell und frei das Internet sein kann, wenn man den ganzen, ungeheuren Mist – beim SPIEGEL zeigt mir uMatrix ca. 130 sekundäre Quellen an – unterbindet. Alles nicht im Interesse des Nutzers.
Besten Dank für die super einfach formulierten Anleitungen! Die Einteilung in „Anfänger“ und Fortgeschrittene sollte ein Beispiel für alle anderen IT-Spezialisten werden, die sich um Datenschutz bemühen.
Vielen Dank für diese Einführung in „Smart Referer“.
Meine Frage: Könntest Du bitte kurz auf Deine Sicht des Hinweises von Cane eingehen, der entschieden davon abrät, den Referer zu manipulieren, da dies gerade dazu führen würde, einen deutlich zu erkennenden Fingerprint zu erzeugen: siehe letzter Absatz.
Vielen Dank.
Das ist korrekt. Würde der Referer komplett entfernt, dann wäre dies vermutlich ein zusätzliches Fingerprinting-Merkmal – das tun wir aber mit Smart Referer nicht. Wir entfernen den Referer nicht vollständig sondern ersetzen ihn mit anderen Werten / Inhalten.