Die Veröffentlichung des Webbrowsers Firefox 147 erfolgte, und Updates fĂŒr die Ă€lteren Long-Term-Support-Versionen â 140.7.0 und 115.32.0 â wurden erstellt. Der Branch Firefox 148 wurde in die Beta-Testphase ĂŒberfĂŒhrt, dessen Veröffentlichung fĂŒr den 24. Februar geplant ist.
Die wichtigsten Neuerungen in Firefox 147 (1, 2, 3):
- Die UnterstĂŒtzung der Spezifikation Freedesktop.org XDG Base Directory wurde hinzugefĂŒgt, sowie die Möglichkeit, das Verzeichnis â~/.config/mozillaâ zur Speicherung von Profilen, Erweiterungen, Einstellungen und internen Datenbanken zu verwenden. Die UnterstĂŒtzung fĂŒr die Ablage von Daten im alten Verzeichnis â~/.mozillaâ bleibt als Option erhalten, die bei der AusfĂŒhrung mit der Umgebungsvariablen âMOZ_LEGACY_HOME=1â aktiviert wird.
- Die UnterstĂŒtzung des Mechanismus âCompression Dictionary Transportâ (RFC 9842) wurde hinzugefĂŒgt, der die GröĂe der zwischen Client und Server, durch die Verwendung der Komprimierungsalgorithmen Zstandard (Content-Encoding: dcz) und Brotli (Content-Encoding: dcb) in Kombination mit der Komprimierung typischer Strukturen unter Verwendung von WörterbĂŒchern reduziert. Es gibt zwei Nutzungsszenarien fĂŒr Compression Dictionary Transport â die Komprimierung von Inhalten basierend auf zuvor vom Server bereitgestellten WörterbĂŒchern und die Verwendung bereits ĂŒbermittelter Inhalte als Wörterbuch fĂŒr die Komprimierung seiner neuen Version (Delta-Komprimierung, bei der nur die Ănderungen im Vergleich zur bestehenden Version ĂŒbertragen werden).
Zum Beispiel kann der Server bei der Anfrage âGET /index.htmlâ Informationen ĂŒber das Vorhandensein eines Wörterbuchs zurĂŒckgeben, indem er den Weg dazu im Header âLink: ; rel="compression-dictionary"â angibt. Beim Laden des Wörterbuchs ââŠ/dictâ durch den Client wird der Server Informationen ĂŒber dessen Anwendung auf HTML-Dateien im Header âUse-As-Dictionary: match="/*html"â bereitstellen. Bei der nĂ€chsten Anfrage an eine HTML-Ressource, wie z. B. âGET /index2.htmlâ, gibt der Client an, dass er ein Wörterbuch hat, ĂŒber den Header âAvailable-Dictionary: hash_wörterbuchâ. Wenn der Server ein Wörterbuch mit diesem Hash auf seiner Seite hat, wird er den Inhalt von index2.html zurĂŒckgeben, der mit Hilfe dieses Wörterbuchs komprimiert ist.
FĂŒr die Delta-Komprimierung verschiedener Versionen von JavaScript-Dateien kann der Server in Antwort auf die Anfrage âGET /app.v1.jsâ den Header âUse-As-Dictionary: match="/app*js"â festlegen, der darĂŒber informiert, dass der zurĂŒckgegebene Inhalt zukĂŒnftig als Wörterbuch fĂŒr die Pfade â/app*jsâ verwendet werden kann. Bei der folgenden Anfrage nach einer Datei, die diesem Muster entspricht, wie z. B. âGET /app.v2.jsâ, ĂŒbermittelt der Client den Hash des verfĂŒgbaren Wörterbuchs ĂŒber den Header âAvailable-Dictionary:â, und der Server gibt nur die Ănderungen zwischen den Dateien app.v1.js und app.v2.js zurĂŒck.
- Die Seite about:keyboard wurde hinzugefĂŒgt, um Tastenkombinationen einzustellen und vorhandene Hotkeys zu ĂŒberschreiben, beispielsweise um vertrautere Optionen zu wĂ€hlen oder Konflikte mit anderen Programmen zu vermeiden.

- Die Wiedergabe von Videos unter Verwendung der hardwarebeschleunigten Dekodierung auf AMD-GPUs wurde optimiert. Auf Systemen mit AMD-GPU wird jetzt hardwaredecodiertes Video ohne zusĂ€tzliche Datenkopie (Zero-Copy-Modus) abgespielt, Ă€hnlich wie es zuvor fĂŒr Systeme mit Intel- und NVIDIA-GPUs implementiert wurde.
- FĂŒr Version 5 wurde die Implementierung des Safe Browsing-Protokolls aktualisiert, das zur ĂberprĂŒfung von URLs auf Listen unsicherer Ressourcen (Phishing-Websites, Seiten mit Malware usw.), die von Google bereitgestellt werden, verwendet wird. Die neue Protokollversion ermöglicht das Herunterladen von Sperrlisten zur Verwendung auf einem lokalen System (Datenbank mit SHA256-HashprĂ€fixen problematischer URLs), die jetzt in Firefox verwendet werden.
- Eine Option zum automatischen Fortsetzen der Video-Wiedergabe im Bild-in-Bild-Modus wurde hinzugefĂŒgt, wenn auf einen anderen Tab gewechselt wird.
- Im Modus des verbesserten Schutzes vor Verfolgung (ETP, Enhanced Tracking Protection => Strict) wird standardmĂ€Ăig die Spezifikation LNA (Local Network Access) angewendet, um den Zugriff auf das lokale System (Loopback, 127.0.0.0/8) oder das interne Netzwerk (192.168.0.0/16, 10.0.0.0/8 usw.) bei der Interaktion mit öffentlichen Websites einzuschrĂ€nken. Der Zugriff auf interne Ressourcen wird von Angreifern zur DurchfĂŒhrung von CSRF-Angriffen auf Router, Zugangspunkte, Drucker, Unternehmens-Webschnittstellen und andere GerĂ€te und Dienste genutzt, die Anfragen nur aus dem lokalen Netzwerk annehmen. DarĂŒber hinaus kann das Scannen interner Ressourcen zur indirekten Identifizierung oder zum Sammeln von Informationen ĂŒber das lokale Netzwerk verwendet werden.
- Auf LinuŃ -Systemen mit GNOME und dem Kompositionsserver Mutter wurde ein Problem mit verschwommenen Inhalten bei Verwendung von fractional scaling behoben.
- Auf Apple-Computern mit Apple-Silicon-Chips und macOS wird die UnterstĂŒtzung fĂŒr die API WebGPU aktiviert.
- Die im HTTP-Header Accept-Language festgelegten SprachwahlprioritĂ€ten (q-Parameter) sind mit den Werten anderer Browser synchronisiert, was einige PortabilitĂ€tsprobleme gelöst hat. Beispielsweise wird fĂŒr die zweite Sprache jetzt eine PrioritĂ€t von q=0.9 anstelle von q=0.5 festgelegt, wĂ€hrend die PrioritĂ€t fĂŒr jede nachfolgende Sprache um 0.1 verringert wird.
- Die ICU-Bibliothek wurde auf Version 78 mit UnterstĂŒtzung fĂŒr Unicode 17 und Aktualisierungen der Locale-Daten aktualisiert.
- In Service Workern ist die Verwendung von JavaScript-Modulen ESM (ECMAScript Module), die ĂŒber die AusdrĂŒcke import und export importiert bzw. exportiert werden, erlaubt.
- Die UnterstĂŒtzung fĂŒr die Spezifikation CSS Module Scripts wurde hinzugefĂŒgt, die ein Modulsystem fĂŒr JavaScript zur Verwendung beim Import von CSS-Ressourcen ermöglicht. Zum Beispiel: import styles from "./styles.css" with { type: "css" };
- Im Pseudo-Element â::markerâ, das die Anpassung von Zahlen und Punkten fĂŒr AufzĂ€hlungen in
- und
- ermöglicht, dĂŒrfen CSS-Eigenschaften âcounter-*â und âquotesâ verwendet werden.
- Im API CompressionStream und DecompressionStream wurde die UnterstĂŒtzung fĂŒr das komprimierte Format Brotli hinzugefĂŒgt.
- Im API View Transitions, das zur Erstellung von Animationseffekten beim Wechsel zwischen verschiedenen DOM-ZustĂ€nden verwendet wird, wurde die Eigenschaft âtypeâ hinzugefĂŒgt, die ein Array mit Ăbergangstypen enthĂ€lt. AuĂerdem wurde der entsprechende CSS-Selektor â:active-view-transition-typeâ sowie die Eigenschaft document.activeViewTransition hinzugefĂŒgt, die eine Instanz des aktiven ViewTransition-Objekts fĂŒr das Dokument zurĂŒckgibt.
- Ein Satz von CSS-Eigenschaften zur Steuerung der Anzeige von Elementen, die an die Position anderer Elemente gebunden sind (CSS Anchor Positioning), wurde aktiviert, ohne JavaScript zu verwenden, um beispielsweise Elemente von Popups (Popover) anzudocken, die analog zu Tooltipps erscheinen.
- Die Spezifikation âStorage Access Headersâ, die den Header âSec-Fetch-Storage-Accessâ fĂŒr die Anforderung und den Header âActivate-Storage-Accessâ fĂŒr die Antwort zur Erlangung des Zugriffs auf Drittanbieter-Cookies ohne Aufruf der Methode document.requestStorageAccess() definiert, wurde implementiert. Der Server kann ĂŒber den Header âActivate-Storage-Accessâ Zugriff auf Cookies anfordern, und dieser wird vom Client gesendet, wenn der Benutzer zuvor die Berechtigung zum Zugriff auf den Cookie-Speicher ĂŒber die API Storage Access bestĂ€tigt hat.
- Im CSS-Eigenschaft âroot-font-relativeâ wurde die UnterstĂŒtzung fĂŒr relative MaĂeinheiten rcap, rch, rex und ric hinzugefĂŒgt.
- Die Navigation-API ermöglicht es Webanwendungen, NavigationsvorgĂ€nge im Fenster abzufangen, ĂbergĂ€nge zu initiieren und die Historie der Aktionen mit der Anwendung zu analysieren. Die API bietet eine alternative Lösung zu den Eigenschaften window.history und window.location, die fĂŒr single-page Webanwendungen optimiert ist.
- In den Entwicklertools fĂŒr das Web wurde in der CSS-Regel-Palette die UnterstĂŒtzung fĂŒr die Bearbeitung und das HinzufĂŒgen von Selektoren fĂŒr Pseudo-Elemente implementiert. In die Anzeige von Daten im JSON-Format wurde eine SchaltflĂ€che zum Importieren von Ressourcen in das Profilerstellungssystem (Firefox Profiler) hinzugefĂŒgt, um Informationen ĂŒber ihre GröĂe zu bestimmen. In den Panels zur Inspektion von HTML-Elementen und Animationen wird die Anzeige von Pseudo-Elementen von View Transitions unterstĂŒtzt. In der CSS-Regel-Palette wurde die Anzeige der Regeln @position-try implementiert, die zur Steuerung der Anzeige von Elementen verwendet werden, die an den Positionen anderer Elemente gebunden sind (CSS Anchor Positioning).
- Die Version von Firefox fĂŒr Android hat hinzugefĂŒgt der Schutz vor Angriffen ĂŒber DrittkanĂ€le, wie Spectre, die zur Umgehung der Isolation zwischen Websites verwendet werden. FrĂŒher war ein solcher Schutz nur in Desktop-Builds verfĂŒgbar.
Neben Neuerungen und Bugfixes wurden in Firefox 147 23 SicherheitsanfĂ€lligkeiten behoben. 10 dieser SicherheitsanfĂ€lligkeiten sind auf Speicherprobleme zurĂŒckzufĂŒhren, wie z. B. PufferĂŒberlĂ€ufe und den Zugriff auf bereits freigegebene Speicherbereiche. Diese Probleme könnten potenziell dazu fĂŒhren, dass Angreifer beim Ăffnen speziell gestalteter Seiten Code ausfĂŒhren. 3 SicherheitsanfĂ€lligkeiten erlauben es, die Sandbox-Isolation aufgrund unzureichender Grenzkontrollen und ganzzahliger ĂberlĂ€ufe im Grafikelement zu umgehen.
Quelle: opennet.ru

