Überflüssige Cloud-Dienste in Firefox deaktivieren
Firefox bietet mehrere Dienste, die die "User Experience" verbessern sollen und dafür irgendwelche Daten auf irgendwelche Cloud Server hochladen:
Pocket-API ist eine Erweiterung, mit der man Webseiten komplett in einem "Pocket" in der Cloud speichern und später lesen kann. In der Praxis kann man natürlich auch Lesezeichen dafür nutzen oder die Download Funktion, wenn man eine Webseite später in genau diesem Zustand lesen möchte.
Die Pocket-API ist überflüssig, kann man unter "about:config" deaktivieren:
extensions.pocket.enabled = false
Screenshots ist eine Erweiterung, mit der man Bildschirmfotos erstellen kann, die automatisch auf den Cloud-Server "screenshots.mozilla.com" hochgeladen werden und von dort mit einem Klick auf Social Media Webseiten verbreitet werden könnten.
In den Datenschutzhinweisen weist Mozilla darauf hin, dass nicht nur der Upload der Screenshots protokolliert wird, sondern auch jeder Abruf durch Dritte, die Screenshot auf irgendwelchen Social Media Webseiten betrachten, wo sie veröffentlicht wurden.
Den Upload von Screenshots kann man mit folgendem Parameter deaktivieren:
extensions.screenshots.upload-disabled = true
Wenn ich einen Screenshot haben möchte, dann gibt es dafür genügend Tools, die Screenshots erstellen können und ich entscheide dann, wie ich sie publiziere.
Die Screenshot Extension von Firefox kann man auch komplett deaktivieren:
extensions.screenshots.disabled = true
Keine Daten beim Ausfüllen von Formularen speichern
Firefox bietet die Möglichkeit, Daten aus Formularen zu speichern und später ähnliche Formulare automatisch auszufüllen. Seit Version 55 können Adressdaten erkannt und gespeichert werden, Firefox 58+ kann Kreditkartennummern erkennen und speichern. Damit soll vor allem "Power-Shoppern" das Einkaufen im Internet etwas erleichtert werden.
Firefox bietet einige Schutzfunktionen gegen Phishing Angriffe auf automatisch ausgefüllte Formularedaten. Trotzdem ist es nicht auszuschließen, dass raffinierte Angreifer Wege finden werden, um unsichtbare Formulare automatisch ausfüllen zu lassen und die Daten auslesen.
Lokale Angreifer (z.B. jüngere Familienangehörige?) könnten unerlaubt Einkäufe ausführen.
Unter
"about:config" kann man das Speichern von Formulardaten abschalten:
browser.formfill.enable = false
Zusätzlich kann man folgende Features deaktivieren:
extensions.formautofill.addresses.enabled | false |
extensions.formautofill.creditCards.enabled | false |
extensions.formautofill.heuristics.enabled | false |
Damit wird nicht(!) der Login Manager konfiguriert, der die Credentials für Webseiten speichert. Die Konfiguration des Login Managers ist unter
Passwörter & 2FA beschrieben.
Geolocation API
Mit Hilfe der Geolocation API kann die geografische Position des Surfer relativ genau bestimmt werden. Zur Ortsbestimmung können je nach vorhandener Hardware im Rechner die WLANs in der Umgebung genutzt werden oder GPS-Hardware...
Aktuelle Firefox Versionen fragen nach, bevor der Zugriff auf die Geolocation API erlaubt wird. Das ist als Schutz gegen unerwünschte Lokalisierung ausreichend.
Ein vollständiges Abschalten der Geolaction API (wie es früher nötig war) oder das standardmäßige Blockieren des Zugriffs über die Berechtigungen schafft ein Erkennungsmerkmal beim Fingerprinting des Browsers, welches den Browser von der Masse der anderen Nutzer unterscheidet.
Die Standortbestimmung anhand der IP-Adresse kann man nicht deaktivieren, da eine Webseite diese Standortbestimmung immer ohne Mithilfe des Nutzers vornehmen kann. Es ist relativ ungenau, lediglich die Stadt lässt sich mit einiger Sicherheit anhand der IP-Adresse bestimmen.
WebGL
WebGL stellt eine Javascript-API für das Rendering von 3D-Objekten bereit. Anhand der Debug Renderer Inormationen kann der Typ der Grafikkarte ausgelesen, was sich gut für das Fingerprinting der Hardware eignet. Diese Information sollte man immer deaktivieren:
webgl.enable-debug-renderer-info = false
WebGL kann für das Fingerprinting der Performance von Hardware und OpenGL genutzt werden, wie die Studie
Perfect Pixel: Fingerprinting Canvas in HTML5 zeigt. Das Fingerprinting via WebGL kann mit folgenden Einstellungen verringert werden:
webgl.disable-extensions | = true |
webgl.min_capability_mode | = true |
webgl.disable-fail-if-major-performance-caveat | = true |
Außerdem kann WebGL ein (unnötiges) Sicherheitsrisiko sein, weil Angriffe auf das Betriebssystem möglich werden. Durch nachgeladene Schriften können Bugs in den Font Rendering Bibliotheken ausgenutzt werden, das gab es für Linux (
CVE-2010-3855), Windows (
ms11-087) oder OpenBSD (
CVE-2013-6462). Die WebGL Shader Engines haben auch gelegentlich Bugs, wie z.B.
MFSA 2016-53. Für hohe Sicherheitsanforderungen kann man WebGL komplett zu deaktivieren, um das Risiko zu reduzieren:
webgl.disabled | = true |
webgl.enable-webgl2 | = false |
Timing APIs deaktivieren
Die hochgenauen Timing APIs können von Webanwendungen zur Analyse des Ladens von Resourcen oder des Nutzerverhaltens missbraucht werden (
Timing Attacks on Web Privacy, PDF). Wenn man seinen Browser zum Lesen von Webseiten und nicht vorrangig für Games verwendet, sollte man die APIs deaktivieren:
dom.enable_resource_timing = false
dom.enable_performance = false
dom.enable_performance_navigation_timing = false
Clipboard Events deaktivieren
Mit den Clipboard Events informiert Firefox eine Webseite, dass der Surfer einen Ausschnitt in die Zwischenablage kopiert hat oder den Inhalt der Zwischenablage in ein Formularfeld eingefügt hat. Es werden die Events
oncopy, oncut and
onpaste ausgelöst, auf die die Webseite reagieren könnte. Man kann diese Events unter
"about:config" deaktivieren:
dom.event.clipboardevents.enabled = false
Da es mit der Deaktivierung häufig Probleme bei einigen Webseiten gibt, ist diese Einstellung nur in der strengen user.js aktiviert.
Spekulatives Laden von Webseiten
Firefox beginnt in einigen Situationen bereits mit dem Laden von Webseiten, wenn sich der Mauszeiger über einem Link befindet, also bevor man wirklich klickt. Damit soll das Laden von Webseiten einige Millisekunden beschleunigt werden. Wenn man Verbindungen mit unerwünschten Servern vermeiden möchte, kann man es abschalten:
network.http.speculative-parallel-limit = 0
Kill Switch für Add-ons abschalten
Die
Extension blocklist kann Mozilla nutzen, um einzelne Add-ons im Browser zu deaktivieren. Es ist praktisch ein
kill switch für Firefox Add-ons und Plug-ins. Beim Aktualisieren der Blockliste werden detaillierte Informationen zum realen Browser und Betriebssystem an Mozilla übertragen.
https://addons.mozilla.org/blocklist/3/%7Bec8030f7-c20a
-464f-9b0e-13a3a9e97384%7D/10.0.5/Firefox/20120608001639
/Linux_x86-gcc3/en-US/default/Linux%202.6.37.6-smp%20
(GTK%202.24.4)/default/default/20/20/3/
Ich mag es nicht, wenn jemand remote irgendetwas auf meinem Rechner deaktiviert oder deaktivieren könnte. Unter
"about:config" kann man dieses Feature abschalten:
extensions.blocklist.enabled = false
Update der Metadaten für Add-ons deaktivieren
Seit Firefox 4.0
kontaktiert der Browser täglich den AMO-Server von Mozilla und sendet eine genaue Liste der installierten Add-ons und die Zeit, die Firefox zum Start braucht. Als Antwort sendet der Server Statusupdates für die installierten Add-ons. Diese Funktion ist unabhägig vom Update Check für Add-ons, es ist nur eine zusätzliche Datensammlung von Mozilla. Unter
"about:config" kann man diese Funktion abschalten:
extensions.getAddons.cache.enabled = false
HTML5 Beacons deaktivieren
Mit Beacons kann ein Browser beim Verlassen/Schließen einer Webseite Daten zur Analyse an den Webserver senden, die via Javascript gesammelte wurden. Unter
"about:config" kann man dieses Feature abschalten:
beacon.enabled = false
Wenn man HTML5 Beacons abschaltet, kann es vorkommen, dass eine Webseite nach einem Klick nicht aktualisiert wird. eBay.com ist ein Beispiel dafür. Man muss oft den Reload Button klicken, um eine wirklich aktuelle Seite zu sehen. Deshalb ist dieses Feature nur in der strengen user.js Konfiguration deaktiviert.
Safebrowsing deaktivieren
Wenn die Safebrowsing Funktion aktiv ist, dann holt Firefox alle 30min aktualisierte Blocklisten von den Safebrowsing Providern. Alle Seitenaufrufe werden lokal mit den Listen abgeglichen. Bei einem Treffer sendet Firefox einen Hash der URL an den Safebrowsing Provider, um zu prüfen, ob die Seite noch auf der Liste steht.
Unter Windows werden außerdem alle Downloads von Anwendungen geprüft. Firefox sendet Informationen zur heruntergeladenen Datei (Name, Herkunft, Größe, Hash) an den "Google Safe Browsing Service". Dabei gelten die Datenschutzbestimmungen von Google.
Um Safebrowsing zu deaktivieren kann man unter
"about:config" folgende Werte setzen:
browser.safebrowsing.phishing.enabled | false |
browser.safebrowsing.malware.enabled | false |
browser.safebrowsing.blockedURIs.enabled | false |
browser.safebrowsing.downloads.enabled | false |
browser.safebrowsing.downloads.remote.enabled | false |
browser.safebrowsing.downloads.remote.block_dangerous | false |
browser.safebrowsing.downloads.remote.block_dangerous_host | false |
browser.safebrowsing.downloads.remote.block_potentially_unwanted | false |
browser.safebrowsing.downloads.remote.block_uncommon | false |
browser.safebrowsing.downloads.remote.url | (leerer String) |
browser.safebrowsing.provider.*.gethashURL | (leerer String) |
browser.safebrowsing.provider.*.updateURL | (leerer String) |
Gegen
Phishing Angriffe schützen keine technische Maßnahmen vollständig sondern in erster Linie das eigene Verhalten. Und gegen
Malware schützen regelmäßige Updates des Systems besser als Virenscanner und URL-Listen.
Healthreport und Telemetriedaten für Mozilla
Firefox ist einer der wenigen Browser, bei denen man die Übertragung von Telemetriedaten an den Hersteller abschalten kann. Seit Firefox 41 gibt es dafür einen globalen Kill-Switch:
datareporting.policy.dataSubmissionEnabled = false
Daneben gibt es Parameter für einzelne Reports, die man zusätzlich deaktivieren kann, was aber eigentlich mit dem globalen Kill-Switch erledigt ist.
datareporting.healthreport.uploadEnabled | = false |
Zur Deaktivierung des Telemetrie Toolkit setzt man folgenden Werte unter
"about:config":
toolkit.telemetry.unified = false
Einzelne Aktionen der Telemetrie können mit folgenden Optionen deaktiviert werden:
toolkit.telemetry.archive.enabled | = false |
toolkit.telemetry.firstShutdownPing.enabled | = false |
toolkit.telemetry.hybridContent.enabled | = false |
toolkit.telemetry.bhrPing.enabled | = false |
toolkit.telemetry.newProfilePing.enabled | = false |
toolkit.telemetry.shutdownPingSender.enabled | = false |
toolkit.telemetry.updatePing.enabled | = false |
Im August 2018 hat Mozilla festgestellt, dass es keine Daten darüber gibt, wie viele Nutzer die Übertragung der Telemetriedaten abgeschaltet haben. Deshalb wurde das Add-on Telemetrie Coverage gebaut und an 1% der Nutzer verteilt. Das Add-on ignoriert die Einstellungen zur Telemetrie und sendet folgende Daten an Mozilla: Firefox Version, Update Channel, Betriebssystem und -version sowie die Information, ob die Übertragung von Telemetriedaten deaktiviert wurde.
Um diese Datenübertragung an Mozilla ebenfalls zu deaktivieren, muss man unter
"about:config" folgende Variablen neu anlegen:
toolkit.coverage.endpoint.base | = "" | (leerer String) |
toolkit.coverage.opt-out | = true | (laut Mozilla Doku) |
toolkit.telemetry.coverage.opt-out | = true | (im Code verwendet) |
Firefox Location Tracking
Seit Firefox 80 trackt Firefox den Standort der Nutzer. Bei jedem Start wird der Server location.services.mozilla.com angepingt und anhand der IP-Adresse das Land ermittelt, in dem der Nutzer sich aufhält. Die Daten werden in zwei Varibalen gespeichert:
Region.current | (das aktuelle Land, in dem der Nutzer sich aufhält) |
Region.home | (das vermutete Heimatland des Nutzers) |
Laut Dokumentation verwendet Mozilla diese Daten, um irgendwelchen "relevanten" Content auszuwählen und die Standardsuchmaschine zu definieren (in Abhängigkeit von den Verträgen, die Mozilla mit unterschiedlichen Suchdiensten abgeschlossen hat).
Das Aktualisieren des Standortes verhindert man mit folgenden Einstellungen:
browser.region.update.enabled | = false |
browser.region.network.url | = "" (leerer String) |
Speicherung von Screenshots der besuchten Webseiten
Firefox speichert Screenshots von jeder besuchten Webseite auf der Festplatte, um sie später als Thumbnails auf der New Tab Page einzublenden. Diese Speicherung gefällt mir nicht, da ich mein Surfverhalten nicht protokollieren möchte, auch nicht auf dem eigene Rechner.
Um diese Speicherung
abzuschalten, kann man eine neue Variable vom Typ Boolean unter
"about:config" erstellen und auf
"true" setzen:
browser.pagethumbnails.capturing_disabled = true
Mozillas Werbung nach einem Update
Nach jedem Update von Firefox wird eine Webseite aufgerufen, die Mozilla für Werbung sowie statistische Auswertungen nutzt und die ein bisschen nervt. Unter der Adresse
"about:config" kann man diese Einblendung abschalten:
browser.startup.homepage_override.mstone = ignore
Mozillas Bewertungsfeature
Im Rahmen von Stichproben bittet Mozilla die Nutzer, ihre Erfahrungen mit Firefox zu bewerten. Die Bewertungsfunktion baut bei jedem Start von Firefox eine Verbindung zum Mozilla Server auf. Mit folgender Option unter \textit{about:config} deaktiviert man die Bewertungsfunktion und die Verbindungsaufbau:
app.normandy.enabled = false
Deaktivierung der Add-ons auf Mozillas Webseiten
Standardmäßig werden Add-ons auf Webseiten von Mozilla deaktiviert, um die Funktionalität der Dienste sicherzustellen, die auch für interne Funktionen von Firefox genutzt werden:
-
accounts-static.cdn.mozilla.net
accounts.firefox.com
addons.cdn.mozilla.net
addons.mozilla.org
api.accounts.firefox.com
content.cdn.mozilla.net
discovery.addons.mozilla.org
install.mozilla.org
oauth.accounts.firefox.com
profile.accounts.firefox.com
support.mozilla.org
sync.services.mozilla.com.
Damit gibt es auf diese Webseiten zum Beispiel praktisch keinen Trackingschutz mehr, obwohl die Webseiten teilweise Trackingcode einbinden, den uBlock blockieren würde.
Man kann die Deaktivierung der Add-ons auf diesen Webseiten verhindern, wenn man folgende Variable unter "about:config" auf einen leeren String setzt:
extensions.webextensions.restrictedDomains =
Diese Einstellung kann aber in Abhängigkeit von den installierten Add-ons zu Problemen bei einigen internen Funktionen von Firefox führen, die diese Webdienste nutzen.
Systemfarben der Desktop Umgebung
CSS Attribute für Farbe und Hintergrund von HTML Elementen können die Systemfarben der Desktop Umgebung verwenden. Damit sieht die Webseite einer nativen Desktop Anwendung ähnlich. Diese individuellen Farben können via Javascript ausgelesen werden und für das Fingerprinting des Browsers verwendet werden. Gleiches gilt für den Darkmode.
Um das Auslesen der Desktop Einstellungen zu verhindern, kann man die eingebauten Standardwerte für die Systemfarben verwenden und den Darkmode deaktivieren:
ui.use_standins_for_native_colors | = true |
ui.systemUsesDarkTheme | = 0 |
In
CSS Color Module L3 ist die Verwendung von Systemfarben als "veraltet" markiert.
Wi-Fi Hotspot Portal Erkennung deaktivieren
Firefox erkennt die Portalseiten von Wi-Fi Hotspots und öffnet sie in einem neuen Tab. Für die Wi-Fi Hotspot Erkennung ruft Firefox beim Start die URL
"http://detectportal.firefox.com/success.txt" mit einem XMLHttpRequest ab. Wenn dabei ein Redirect gefunden wird statt der erwarteten Antwort, öffnet Firefox den Hinweis zum notwendigen Login auf einer Portal Seite.
- Wenn man einen Computer immer im eigenen LAN oder in der Firma nutzt, ist die Wi-Fi Portal Erkennung überflüssig und man kann sie deaktiviert:
network.captive-portal-service.enabled = false
(Wenn man gelegentlich (selten) einen Wi-Fi Hotspot nutzt, kann man die Variable kurzzeitig per Hand auf true setzen, damit die Hotspot Erkennung kurz funktioniert.)
- Wenn man häufig mit dem Laptop unterwegs ist, kann die Wi-Fi Portal Erkennung ganz nützlich sein. In diesem Fall könnte man die Adresse für den XMLHttpRequest anpassen und einen eigenen Server verwenden, um nicht ständig den Mozilla Server zu kontaktieren.
Am einfachsten lädt man die Datei success.txt herunter und speichert sie auf dem eigenen Webserver. Dann passt man unter "about:config" die URL an:
network.captive-portal-service.enabled | = true |
captivedetect.canonicalURL | = http://www......../success.txt |
Hinweis: die Datei muss via HTTP abrufbar sein, ohne TLS Verschlüsselung. Anderenfalls ist kein Redirect durch den Wi-Fi Hotspot möglich.
Microsoft Family Safety deaktivieren
Microsoft Family Safety ist ein lokaler man-in-the-middle Proxy in Windows 10, der die Zugriffsrechte auf Webseiten steuern kann und damit per Definition ein Zensurtool ist. Ab Firefox 52 ist die Verwendung von Microsoft Family Safety standardmäßig aktiviert. Mit folgender Option kann man unter
"about:config" die Nutzung abschalten:
security.family_safety.mode = 0
Browser Slow Startup Notifications
Bei jedem Start prüft Firefox die Zeit, die der Browser zum Starten benötigt. Falls Firefox der Meinung ist, dass er zu langsam startet, wird die Deinstallation von Add-ons empfohlen.
Da man sich überlegt, welche Add-ons man braucht und gern verwenden möchte und überflüssige Add-ons natürlich nicht installieren würde, ist dieses Feature überflüssig. Man kann es unter
"about:config" deaktivieren:
browser.slowStartup.notificationDisabled | = true |
browser.slowStartup.maxSamples | = 0 |