Mozilla veröffentlicht Firefox 95
Mozilla hat Firefox 95 und damit das letzte große Firefox-Update dieses Jahres für Windows, Apple macOS und Linux veröffentlicht. Ein besonderer Schwerpunkt lag dabei auf der Sicherheit der Nutzer. Dieser Artikel fasst die wichtigsten Neuerungen zusammen – wie immer auf diesem Blog weit ausführlicher als auf anderen Websites.
Download Mozilla Firefox für Microsoft Windows, Apple macOS und Linux
Bild-im-Bild-Button in Videos kann verschoben werden
Ein Video ansehen und gleichzeitig etwas anderes am Computer machen – Firefox macht’s möglich. Bei Klick auf die entsprechende Schaltfläche wird das jeweilige Video vom Tab losgelöst und erscheint in einem eigenständigen kleinen Fenster. Dieses liegt über allen Anwendungen, d.h. Firefox muss sich nicht im Vordergrund befinden, um das Video zu sehen. Der Benutzer kann beispielsweise seine E-Mails in Thunderbird abrufen und gleichzeitig ein Video auf YouTube ansehen.
Der entsprechende Button in Videos hat sich bisher immer rechts im Video befunden. Über das Kontextmenü ist es jetzt auch möglich, den Button auf die Linke Seite zu verschieben.
@prefers-color-scheme folgt jetzt Firefox-Theme
Mittels @prefers-color-scheme können Websites darauf reagieren, ob der Nutzer ein helles oder ein dunkles Theme nutzt. Bislang folgte Firefox hierfür dem Theme des Betriebssystems. Ab Firefox 95 ist das verwendete Firefox-Theme ausschlaggend.
Wer das alte Verhalten bevorzugt, kann über about:config den Schalter layout.css.prefers-color-scheme.content-override auf den Wert „2“ (ohne Anführungszeichen) setzen. Außerdem wurde eine WebExtension-Schnittstelle implementiert, damit Erweiterungen dies steuern können.
Weitere Verbesserungen der Webplattform
Natürlich unterstützt Firefox auch mit diesem Update wieder weitere Webstandards, darunter das HTML-Attribut inputmode. Eine Übersicht über alle Verbesserungen der Webplattform gibt es wie immer in den MDN web docs.
Performance-Verbesserungen
In Firefox 95 hat Mozilla Verbesserungen bei der Speicherzuweisung vorgenommen. Außerdem wurde die Geschwindigkeit des Ladens von Websites verbessert, indem JavaScript bereits vorab spekulativ kompiliert wird.
Nutzer von macOS profitieren von weiteren Verbesserungen in Firefox 95. So wurde der Stromverbrauch von Software-dekodierten Videos verbessert, vor allem im Vollbild. Dies macht sich unter anderem auch auf Streaming-Seiten wie Amazon Prime und Netflix bemerkbar. Außerdem wurde die CPU-Auslastung in Firefox und WindowServer während der Ereignisverarbeitung reduziert. Auch die Startzeit der Content-Prozesse auf macOS wurde verbessert.
Sicherheit: Seiten-Isolation „Fission“ für mehr Nutzer
Firefox läuft nun schon seit mehreren Jahren mit einer sogenannten Multiprozess-Architektur. Diese unter dem internen Projektnamen Electrolysis, oder auch kurz: e10s, entwickelte Architektur trennt den Browser- von seinen Content-Prozessen, was eine verbesserte Sicherheit durch Sandboxing, Performance sowie Stabilität bringt, da seit dem ein Website-Absturz nicht mehr den kompletten Browser mit abstürzen lässt. Zu den standardmäßig maximal acht Content-Prozessen kommen noch ein paar spezialierte Prozesse wie einer für Firefox-Erweiterungen sowie ein weiterer für den Aufruf lokaler Dateien.
Seit mittlerweile mehr als drei Jahren arbeitet Mozilla unter dem internen Projektnamen Fission an der logischen Weiterentwicklung dieses Konzeptes, einer Seiten-Isolation. Vereinfacht gesagt bedeutet dies, dass damit jeder Tab in einem eigenen Prozess läuft. Genauer wäre zu sagen, dass es einen Prozess pro Ursprung gibt, sprich zwei Tabs von der selben Domain können sich einen Prozess teilen. Auf der anderen Seite kann ein einzelner Tab auch mehrere Prozesse beanspruchen, nämlich dann, wenn auf der Seite Frames von anderen Domains eingebettet sind. Fission schützt auch vor Attacken wie Spectre.
Mit Firefox 94 hat Mozilla die Ausrollung der Seiten-Isolation gestartet. Im Laufe des Firefox 95-Zyklus sollte Fission einen großen Teil der Firefox-Nutzer erreichen.
Sicherheit: RLBox-Sandbox auch für Windows und für weitere Module
Zur Absicherung von Firefox hat Mozilla unterschiedliche Ansätze. Einer ist es, sicherheitsrelevanten Code in der Programmiersprache Rust neu zu schreiben, welche eine ganze Kategorie potentieller Sicherheits-Schwachstellen bereits zur Kompilier-Zeit ausschließt. Ein anderer ist es, Teile des Codes in eigene Prozesse mit weniger Privilegien aufzuteilen. Für alles kommt dies jedoch nicht in Frage. So sei beispielsweise die von Firefox genutzte Font-Rendering-Bibliothek Graphite zu klein für einen eigenen Prozess, da jeder Prozess auch mit einem gewissen Bedarf an System-Ressourcen verbunden ist, außerdem würde ein isolierter Prozess auch nicht verhindern können, dass eine schädliche Schrift-Datei die Seite kompromittiert, welche die Schrift lädt. Eine Neuentwicklung in Rust ist auch keine Option, weil es sich um eine Drittanbieter-Abhängigkeit handelt und das aufwändige Neuschreiben einer solch spezialisierten Komponente auch kein guter Einsatz der begrenzten Ressourcen von Mozilla wäre.
Die Lösung für diese Art von Problem lautet RLBox. Dabei handelt es sich um eine Sandboxing-Technologie, welche von Forschern der University of California, der University of Texas sowie der Stanford University entwickelt worden ist. Damit können bestehende Komponenten in einer WebAssembly-Sandbox ausgeführt werden. Sollte es zu einer Schwachstelle in einer damit isolierten Komponente kommen, selbst wenn es sich dabei um eine sogenannte 0-Day-Schwachstelle handelt, stellt diese keine Gefahr für Firefox-Nutzer dar.
Bereits seit Firefox 74 kommt RLBox in Firefox für Linux zum Einsatz, seit Firefox 75 in Firefox für macOS, jeweils um die Font-Rendering-Bibliothek Graphite zu isolieren. Mit Firefox 95 zieht die Windows-Version von Firefox nach. Außerdem werden auch die Bibliotheken Hunspell (Rechtschreibprüfung) und Ogg (Audio Container-Format) durch RLBox isoliert. Weitere Komponenten werden in zukünftigen Updates folgen. So stehen bereits Expat (XML-Parser) sowie Woff2 (Schriftformat) als zusätzliche Komponenten in Firefox 96 fest.
Sicherheit: Geschlossene Sicherheitslücken
Auch in Firefox 95 wurden wieder mehrere Sicherheitslücken geschlossen. Alleine aus Gründen der Sicherheit ist ein Update auf Firefox 95 daher für alle Nutzer dringend empfohlen.
Sonstige Neuerungen von Firefox 95
Firefox überschreibt auf slack.com nun automatisch den User-Agent, damit Firefox-Nutzern hier mehr Features wie den Huddles zur Verfügung stehen, die Firefox-Nutzern ansonsten vorenthalten werden.
Mit Firefox 85 wurden zahlreiche Verbesserungen an den Lesezeichen vorgenommen, von denen einige hinter dem Schalter browser.toolbars.bookmarks.2h2020 implementiert waren. Mit Firefox 95 existiert dieser Schalter nicht länger und die Verbesserungen sind jetzt für alle Nutzer aktiv.
Natürlich kamen auch in Firefox 95 Fehlerbehebungen, Verbesserungen der Barrierefreiheit sowie sonstige Verbesserungen unter der Haube dazu.
Falls es hier erwünscht ist darauf zu verweisen: Ich habe eine Erweiterung von mir für Firefox 95 angepasst, die den dunklen Modus mit einem Klick anpassen kann. Früher, war dies eine recht „hacky” Implementierung, dank der neuen API ist sie jetzt ja viel leichter.
Somit muss man „layout.css.prefers-color-scheme.content-override” nicht manuell anpassen, wenn man bspw. zu dem alten Verhalten des „Folge dem Systemdesign” wechseln will und man kann v.a. auch ganz einfach zwischen zwei „Stilen” wechseln, bspw. dunkel und hell.
Hier geht es zur Add-on-Seite des „Dark Mode Website Switcher's”. Dort steht das ganze auch etwas genauer erklärt.
Kannst du – wenn möglich – kurz erklären, wie das möglich ist oder alternativ Quellen zum weiterlesen nennen? Das klingt nach einem sehr spannenden Ansatz über den ich gerne mehr wissen würde.
Hallo Sören,
die Verbesserungen für MacOS sind sehr interessant. Kannst du schon etwas sagen, was Mozilla als Nächstes für MacOS plant?
Lorenzo