Mozilla Firefox ist der Webbrowser der Mozilla Foundation und kann durch viele von der Community entwickelte Add-ons und Anpassungen in der Konfiguration zu einem sicheren und privacy-freundlichen Browser aufgewertet werden. Er ist kostenfrei nutzbar und könnte von der Downloadseite für Windows und MacOS heruntergeladen werden.
Mozilla Firefox ESR (Extented Support Releases) gibt es offiziell auf dieser Downloadseite. Im Gegensatz zu den 4-wöchigen Updates des Firefox werden die ESR-Versionen ca. ein Jahr gepflegt. Es werden keine neuen Features eingebaut, was sich positiv auf die Stabilität auswirkt. Allerdings fehlen damit aktuelle Verbesserungen und neue Features.
Download Hinweis: der Download von Firefox von den offiziellen Downloadseiten ist einfach, aber dabei wird jeder Browser mit einer individuellen Kennung markiert. Diese Kennung wird dann bei der Installation und im Rahmen der Telemetrie verwendet, so dass Mozilla die Telemetriedaten eindeutig einem Download zuordnen kann. Außerdem wird die Download ID und damit die gesamte Telemetrie einer Google Analytics Tracking ID zugeordnet. Alternativ kann man das FTP Verzeichnis von Mozilla nutzen. Die dort heruntergeladenen Firefox Browser sind nicht markiert.
Die meisten Linux-Distributionen enthalten Mozilla Firefox in den Repositorys. Man kann den Browser mit der bevorzugten Paketverwaltung nachinstallieren, wenn es nötig sein sollte.
Vorteil: Downloads aus den Linux Repos werden nicht mit einer individuellen Kennung markiert und können auch nicht mit einer Google Analytics Tracking ID korelliert werden.
Ubuntu und abgeleitete Derivate installieren Firefox als Snap Package. Die Aktualisierung des Snap Paketes ist nicht in den normalen Updateprozess des Systems integriert und muss extra angestoßen werden. Außerdem gibt es Probleme im Zusammenspiel mit KeepassXC, kein funktionierendes apparmor Profil für den Firefox und der Ressourcenbedarf ist viel größer.
Statt der Snap Package kann man Firefox (oder Firefox ESR) bei Ubuntu und Derivaten aus dem PPA Repository vom Mozilla Team verwenden, der als normales Paket installiert wird.
Das Abspielen von Videos mit Urheberrechtsschutz (DRM) ist mit dem standardmäßig ausgeliefertem apparmor Profil mit Firefox nicht möglich, weil das Widevine Content Decryption Plugin nicht startet. (Ohhh Gott – Netflix funktioniert nicht!)
Um das Problem zu lösen kann man in der Datei "/etc/apparmor.d/usr.bin.firefox" in der Sektion "per-user firefox configuration" folgende Zeile einfügen und den Rechner rebooten:
# per-user firefox configuration
owner @{HOME}/.{firefox,mozilla}/**/gmp-widevinecdm/*/lib*so m,
apparmor ist ein Sicherheitsframework für Linux. Als Mandatory Access Control System kontrolliert es einzelne Anwendungen und kann mit Profilen die Rechte granular einschränken. Sollte eine Anwendung (z.B. Firefox) kompromittiert werden, kann der Angreifer nur wenig Schaden im System anrichten, wenn die Anwendung unter Kontrolle von apparmor läuft.
Einige Distributionen bringen ein Apparmor Profil für Firefox mit. Das Paket apparmor-profiles muss installiert werden und die Regeln für Firefox sind zu enforcen:
> sudo apt install apparmor-profiles apparmor-utilsMit "sudo aa-status" kann man prüfen, ob Firefox im enforced mode unter Kontrolle von apparmor läuft, nachdem der Browser neu gestartet wurde.
In den Weiten des Internet liest man öfters, dass Google Chrome (und abgeleitete Derivate) als Desktop Browser (Windows Linux MacOS) viel sicherer wären als Mozilla Firefox, weil Chrome über eine Sandbox für jeden einzelnen Prozess pro Browsertab verfügt, aus der ein Angreifer nach erfolgreicher Kompromittierung eines Kompartments nicht ausbrechen können sollte.
Das man aus der Chrome Sandbox nicht ausbrechen kann, wurde auf der Pwn2Own Competition im März 2024 gleich zweifach widerlegt. Google Chrome wurde in diesem Jahr 2x geknackt (siehe: Day 1 und Day 2). Die Exploits wurden mit $60.000 und $42.500 Preisgeld belohnt.
Die Sandbox soll bei Buffer Overflows und Memory Corruptions schützen. Das sind typische Bugs, die bei Programmierung mit C/C++ auftreten. Chrome ist zu 100% in C/C++ programmiert.
Die Entwickler von Firefox ignorieren das Problem nicht, aber sie gehen einen anderen Weg. Die kritischen Teile des Browser wie Rendering und Parser werden schrittweise in Rust statt in C/C++ programmiert. In Rust gibt es keine Memory Corruption oder Overflows wie in C/C++.
Das Ergebnis der schrittweisen Umstellung auf die Programmiersprache Rust ist, dass Firefox in den letzten Jahren deutlich weniger sicherheitskritische Fehler hatte als Google Chrome. (Siehe: Firefox CVE security vulnerabilities und Google Chrome CVE security vulnerabilities).
Schlussfolgerung: man kann nicht einfach ein Feature bei einem Browser herauspicken und ignorieren, dass andere Entwickler andere Wege gehen, um Sicherheitsprobleme zu reduzieren.
Es ist schwierig, die Sicherheit unterschiedlicher Konzepte absolut zu vergleichen (daher keine Wertung hier). Am Ende zählen in erster Linie die Zahlen, welches Produkt wie häufig erfolgreich kompromittiert wurde. Und dabei ist Firefox aktuell nicht wesentlich schlechter als Chrome.