Die Veröffentlichung des Web-Browsers Firefox 95 hat stattgefunden. Darüber hinaus wurde ein Update des Long-Term-Support-Zweigs – 91.4.0 – erstellt. Der Zweig Firefox 96 wird bald in die Beta-Testphase überführt, dessen Veröffentlichung für den 11. Januar geplant ist.
Hauptneuheiten:
- Für alle unterstützten Plattformen wurde eine zusätzliche Isolationsschicht basierend auf der Technologie RLBox implementiert. Die vorgeschlagene Isolationsschicht blockiert Sicherheitsprobleme in externen Funktionsbibliotheken, die nicht von den Entwicklern von Firefox kontrolliert werden, aber das Hauptprojekt bei der обнаружении von Schwachstellen gefährden können. In der aktuellen Version wird RLBox zur Isolierung der Bibliotheken Graphite, Hunspell und Ogg eingesetzt, während in der nächsten Version die Isolierung von Expat und Woff2 erwartet wird.
Der Mechanismus von RLBox besteht darin, C/C++-Code aus einer isolierten Bibliothek in eine niedrigstufige Zwischenstufe von WebAssembly zu kompilieren, die dann als WebAssembly-Modul dargestellt wird, dessen Berechtigungen nur an dieses Modul gebunden sind (zum Beispiel kann eine Bibliothek zur Bearbeitung von Zeichenfolgen keine Netzwerk-Sockets oder Dateien öffnen). Um WebAssembly direkt auszuführen, wird das Modul mit dem Compiler wasm2c in Maschinencode kompiliert und in einem separaten Speicherbereich ausgeführt, ohne Zugriff auf den Rest des Adressraums zu haben.

- Für alle Benutzer ist der Modus der strikten Isolation von Websites aktiviert, der im Rahmen des Projekts Fission entwickelt wurde. Im Gegensatz zur zuvor verwendeten beliebigen Verteilung der Bearbeitung von Tabs auf dem verfügbaren Prozess-Pool (standardmäßig 8) isoliert der Modus der strikten Isolation die Verarbeitung jeder Website in ihren eigenen separaten Prozess, wobei die Trennung nicht nach Tabs, sondern nach Domänen (Public Suffix) erfolgt.
Der Modus der strengen Isolation bietet einen zuverlässigeren Schutz gegen Spectre-Angriffe, reduziert die Fragmentierung des Speichers, ermöglicht eine zusätzliche Isolation von Inhalten externer Skripte und iframe-Elementen, gibt den Speicher der Betriebssystem effektiver zurück, minimiert den Einfluss von Garbage Collection und rechenintensiven Prozessen auf Seiten in anderen Prozessen, erhöht die Effizienz der Lastverteilung auf verschiedene CPU-Kerne und verbessert die Stabilität (ein Absturz des Prozesses, der iframe verarbeitet, zieht nicht die Hauptseite und andere Tabs mit sich). Der Preis dafür ist ein allgemeiner Anstieg des Speicherverbrauchs bei einer großen Anzahl geöffneter Seiten.
- Die Arbeit an der Verbesserung der Unterstützung des Wayland-Protokolls wurde fortgesetzt. Der Firefox-Port für Wayland ist nun funktional gleichwertig mit der Version für X11 im GNOME-Umfeld von Fedora.
- Im Kontextmenü des Modus „Bild-in-Bild“ (Picture-in-Picture) wurde die Option hinzugefügt, die Schaltfläche zum Umschalten des Anzeigeformats auf die gegenüberliegende Seite des Videos zu verschieben.

- Die Technologie der vorausschauenden Kompilierung von JavaScript-Code wurde implementiert, wodurch die Ladegeschwindigkeit von Seiten verbessert werden konnte. Optimierungen wurden im Arbeitsspeichermanagement vorgenommen.
- Die Umdefinition des User-Agent-Werts für die Seite Slack.com wurde aktiviert, was den Zugriff auf zusätzliche Fähigkeiten von Slack ermöglicht, wie z.B. Sprach-/Videoanrufe und Konferenzen (Huddles), die zuvor beim Öffnen der Seite in Firefox nicht verfügbar waren.
- Auf allen Plattformen wurde die Unterstützung des globalen Attributs inputmode eingeführt, das Informationen über die Datentypen angibt, die beim Bearbeiten des Elements eingegeben werden können. Die angegebenen Informationen werden verwendet, um die am besten geeignete Bildschirmtastatur für die Bearbeitung des aktuellen Elements auf Touch-Geräten auszuwählen. Zuvor war die Unterstützung von inputmode nur auf die Android-Plattform beschränkt.
- Die Funktion Crypto.randomUUID() wurde hinzugefügt, die einen kryptografisch sicheren 36-stelligen UUID zurückgibt.
- In den Builds für die macOS-Plattform wurde die CPU-Belastung während der Ereignisverarbeitung verringert, der Start von Inhaltsverarbeitungsprozessen beschleunigt und der Energieverbrauch beim programmatischen Dekodieren von Videos reduziert, einschließlich bei der Wiedergabe von Videos von Netflix und Amazon Prime Video.
- Für die Plattformen Windows 10 und Windows 11 wurde die Möglichkeit geschaffen, Firefox aus dem Microsoft Store zu installieren.
- In der Version für die Android-Plattform wurde im Einstellungsmenü ein neuer Abschnitt für die Startseite implementiert. Auf der Seite „Zurückspringen“ („Jump back in“) werden die Hauptbilder von Websites (Hero Image) angezeigt. Zudem wurde eine Bestätigungsanfrage beim Aktivieren des automatischen Tab-Schließmodus eingeführt.
- In der Version für die Android-Plattform wurde die Unterstützung der CSS-Eigenschaft cursor implementiert, mit der klickbare Elemente visuell hervorgehoben werden können, was die Nutzung für Android-Benutzer, die eine Maus verwenden, erleichteren kann (das Bild des Cursors wird sich ändern, wenn man über solche Elemente fährt).
Neben neuen Funktionen und Fehlerbehebungen wurden in Firefox 95 insgesamt 18 Sicherheitsanfälligkeiten behoben, von denen 11 als kritisch eingestuft sind. Acht dieser Anfälligkeiten sind auf Probleme im Umgang mit dem Speicher zurückzuführen, wie etwa Pufferüberläufe und den Zugriff auf bereits freigegebene Speicherbereiche. Diese Probleme könnten potenziell zur Ausführung von schadhafter Software führen, wenn speziell gestaltete Seiten geöffnet werden.
Quelle: opennet.ru


