Firefox ist für Webentwickler und Sicherheitsexperten eines der beliebtesten Werkzeuge zur Durchführung von Webanwendungstests. Trotz seiner Beliebtheit gibt es eine Eigenschaft, die viele Nutzer bei solchen Tests häufig als störend empfinden: die Vielzahl an Hintergrundanfragen, die der Browser eigenständig startet. Diese sogenannten „Chatters“ verbrauchen nicht nur Systemressourcen und unerwünschte Bandbreite, sondern verwirren auch bei der Analyse der Netzwerkanfragen, da sie unnötiges Rauschen erzeugen. Besonders in Verbindung mit Proxys, wie zum Beispiel Burp Suite, führt das zu überfüllten Logdateien und erschwert das Filtern wichtiger Testdaten. Daher ist es maßgeblich, den Firefox-Browser für gezielte Web-App-Tests zu „beruhigen“ und die Kommunikation auf das Wesentliche zu beschränken.
Nur so lassen sich präzise und stressfreie Analysen realisieren. Dieser Beitrag zeigt, mit welchen Einstellungen Sie Firefox optimal für das Testen webbasierter Anwendungen anpassen können, um seine ständige Kommunikation mit diversen Mozilla-Diensten weitestgehend zu unterbinden – ohne dabei die Funktionalität vollständig einzuschränken. Die „Redseligkeit“ von Firefox entsteht vor allem durch kontinuierliche Hintergrundprozesse, die automatisch Daten an Mozilla-Server senden oder von dort abrufen. Dazu zählen Telemetrie-Daten, Updates für Browser und Add-Ons, Blocklisten für Schwachstellen und Tracking-Schutzinformationen. Ebenso prüft Firefox regelmäßig, ob Netzwerkverbindungen besondere Anforderungen stellen – wie zum Beispiel Captive Portals in öffentlichen WLANs – und lädt Website-Tiles und Empfehlungen aus den Mozilla-Diensten.
Diese Prozesse sind für die meisten Nutzer sinnvoll, um Sicherheit, Performance und Personalisierung zu erhöhen, sie sind jedoch für kontrollierte Testumgebungen hinderlich, da sie potenziell falsche oder irrelevante Daten produzieren. Eine offene Firefox-Installation, die ohne Modifikationen für Webanwendungstests verwendet wird, generiert bereits bei minimaler Nutzung mehrere hundert zusätzliche Anfragen pro Tag. In Kombination mit kommerziellen Testtools wie Burp Suite bedeutet dies einen deutlichen Mehraufwand bei der Datenauswertung. Viele Testingenieure reagieren darauf zunächst mit Scope-Limiting, also der Einschränkung der zu analysierenden Domains innerhalb des Tools. Das ist zwar hilfreich für die Filterung, verhindert jedoch nicht, dass der Proxy diese unnötigen Daten überhaupt empfängt und speichert.
Die Folge sind aufgeblähte Projektdaten und manchmal Verlangsamungen bei der Testausführung. Glücklicherweise bietet Firefox umfangreiche Konfigurationsmöglichkeiten. Über die URL-Eingabezeile sind zwei zentrale Bereiche zugänglich: die benutzerfreundlichen Einstellungen unter „about:preferences“ und die tiefgreifenden Optionen in „about:config“. In diesen Bereichen lassen sich zahlreiche Funktionen genauso deaktivieren, dass keine Anfragen mehr an die bekannten Server gesendet werden. Die Domain-Liste der schaltbaren Dienste ist lang und umfasst unter anderem Telemetrie-Server, Update-Bereiche und Ticket- oder Empfehlungsquellen.
Ein gezieltes Eingreifen in den Firefox-Betrieb kann also die Browserkommunikation massiv reduzieren. Dies führt zu geringeren Netzwerklasten und erleichtert die Testanalyse entscheidend. Zunächst empfiehlt sich das Deaktivieren der Firefox-Startseite (auch als „Firefox Home“ bezeichnet), welche regelmäßig neue informative Kacheln und Vorschläge vom Mozilla-Server anfordert. Statt dieser standardmäßigen Seite sollte man die Startseite und neue Tabs auf eine blanke Seite („about:blank“) setzen. Wer die Startseite behalten möchte, kann zumindest die „Snippets“ abschalten, die kleine Nachrichten oder Tipps präsentieren.
In „about:config“ lässt sich dazu die Einstellung „browser.aboutHomeSnippets.updateUrl“ auf einen leeren Wert setzen. Dies verhindert, dass Firefox diese Hinweise automatisch lädt. Auch die automatische Netzwerkprüfung namens „Captive Portal Detection“ kann deaktiviert werden.
Dabei prüft der Browser, ob eine Netzwerkverbindung eine Anmeldung erfordert, was gerade bei öffentlichen WLAN-Hotspots hilfreich ist. Für die Testumgebung ist diese Funktion aber eher störend, weil sie unnötige DNS- und HTTP-Anfragen generiert. Das Deaktivieren funktioniert über die Option „network.captive-portal-service.enabled“ in „about:config“, die man einfach auf „false“ setzt.
Automatische Updates sind eine weitere Quelle des Datenverkehrs. Standardmäßig prüft Firefox regelmäßig auf neue Versionen des Browsers, aktualisiert auch installierte Add-ons und hält die Blocklisten für Malware und Schadsoftware aktuell. Diese Aktualisierungsvorgänge verursachen zahlreiche Verbindungen zu Mozilla-Servern. In Testumgebungen ist es ratsam, automatische Updates generell abzuschalten, um unerwünschte Verbindungsversuche zu vermeiden und für reproduzierbare Testergebnisse zu sorgen. Während sich die Browsereinstellungen hier leicht unter „about:preferences“ im Abschnitt „Updates“ steuern lassen, muss darauf geachtet werden, Updates künftig manuell einzuspielen, um Sicherheitslücken nicht versehentlich offen zu lassen.
Zusätzlich lohnt ein Blick auf die Add-on-Einstellungen: Automatische Updates der Erweiterungen sollten deaktiviert sein, damit keine unvorhergesehenen Änderungen an der Testumgebung während laufender Untersuchungen auftreten. Im Bereich „about:addons“ findet sich im Zahnrad-Menü die Möglichkeit, automatische Aktualisierungen abzuschalten und alle Add-ons manuell zu verwalten. Der Schutzmechanismus für schädliche Software, der in Firefox integriert ist, überprüft ständig Dateisignaturen und blockiert bekannte Bedrohungen. Für reine Testzwecke empfiehlt es sich, diese Funktion temporär auszuschalten, insbesondere wenn manipulierte oder signierte Testdateien verwendet werden. Die entsprechenden Einstellungen liegen im Bereich „Privacy & Security“ der Browserpräferenzen.
Dort lässt sich im Abschnitt „Security“ der Punkt „Block dangerous and deceptive content“ deaktivieren. Ergänzend sollte in „about:config“ die Einstellung „browser.safebrowsing.downloads.remote.
enabled“ auf „false“ gesetzt werden. Die Tracking-Schutzfunktion verfolgt Tracker über Websites hinweg und führt eine Listenverwaltung, die weitere Serveranfragen erzeugt. Ebenso der sogenannte TLS/SSL-Zertifikats-Überprüfungsdienst, der in Echtzeit Zertifikatswiderrufe abfragt. Beide Funktionen können deaktiviert werden, um weitere Verbindungsversuche an Mozilla- oder Drittserver zu unterbinden. Letzteres geschieht im Bereich „Certificates“ der Datenschutz-Einstellungen durch Abwählen der Online-Zertifikatsstatusabfragen.
Ein weiterer Faktor für Hintergrundanfragen ist die sogenannte Link- und DNS-Prefetch-Funktion, bei der der Browser potenzielle zukünftige Klickpunkte und Domains vorab auflädt, um Ladezeiten zu optimieren. Für kontrollierte Tests ist das kontraproduktiv, da es weitere unnötige Anfragen erzeugt. In „about:config“ lassen sich „network.prefetch-next“ auf false setzen sowie „network.dns.
disablePrefetch“ auf true, um diese Mechanismen zu unterbinden. Spekulative Verbindungen werden ebenfalls innerhalb von Firefox initiiert, um Ladenetzwerke parallel zu starten. Die Obergrenze für solche parallelen Verbindungen lässt sich via „network.http.speculative-parallel-limit“ auf 0 reduzieren, was die Browser-Neugier deutlich einschränkt.
Wer Firefox zuvor für Sync-Funktionen angemeldet hat, sollte diese Verbindungen deaktivieren, da sie regelmäßig Informationen mit anderen Geräten austauschen und weitere Netzwerkanfragen auslösen. Der GeoIP-Dienst, der den Startfilter für Suchmaschinen regionalspezifisch anpasst, kann durch Setzen der Einstellung „browser.search.geoip.url“ auf einen leeren Wert in „about:config“ ebenfalls deaktiviert werden, um weitere Anfragen an externe Server zu vermeiden.
Nach Browser-Updates zeigt Firefox oft eine „What’s New“-Seite an, welche zusätzliche Informationen von Mozilla lädt. Über die Einstellung „browser.startup.homepage_override.mstone“ kann diese Seite neutralisiert werden, indem man den Wert auf „ignore“ setzt.
Die Empfehlungssysteme für Add-ons, welche Benutzern passende Erweiterungen vorschlagen, basieren auf regelmäßig aktualisierten Caches. Deren Aktualisierung lässt sich durch „extensions.getAddons.cache.enabled“ auf false ausschalten, um den Datenverkehr zusätzlich zu reduzieren.
Schlussendlich ist das Deaktivieren der Telemetrie und Diagnose-Daten essentiell, um weder Crash-Berichte noch Nutzungsdaten an Mozilla zu übermitteln, was auch datenschutzrechtlich vorteilhaft ist. In den Datenschutz-Einstellungen unter „Firefox Data Collection and Use“ können sämtliche Optionen deaktiviert werden. Die Einstellung „browser.selfsupport“ lässt via „about:config“ die zufällige Auswahl für Nutzerbefragungen entfallen. Das Zusammenspiel dieser verschiedenen Anpassungen führt dazu, dass Firefox sich beim Start und während der Nutzung auf das Wesentliche konzentriert.
Hintergrundprozesse und Anfragen in großer Zahl, die nicht für das Testen relevant sind, werden unterbunden. Dies führt zu einer besseren Übersicht im Proxy-Tool, geringeren Projektdateigrößen und einer allgemein ruhigeren Testumgebung. Es sei jedoch darauf hingewiesen, dass sich durch das Abschalten einiger Sicherheits- und Updatefunktionen potenzielle Risiken ergeben können. Daher sollte die modifizierte Firefox-Instanz ausschließlich für Testzwecke genutzt werden und nicht als regulärer Browser im Alltag dienen. Updates müssen manuell eingespielt werden, um Sicherheitslücken nicht zu riskieren.