Die Veröffentlichung des Web-Browsers , sowie Firefox 68.6 für die Android-Plattform. Zudem wurde ein Update erstellt, mit langfristiger Unterstützung . In naher Zukunft wird die Version das in den Firefox 75-Zweig übergeht, dessen Veröffentlichung für den 7. April geplant ist (Projekt über einen Zeitraum von 4-5 Wochen ). Für den Beta-Zweig Firefox 75 wird gebildet für Linux im Flatpak-Format.
:
- In den Linux-Builds wird ein Isolationsmechanismus verwendet, , der darauf abzielt, die Ausnutzung von Sicherheitslücken in externen Funktionsbibliotheken zu verhindern. In dieser Phase ist die Isolierung nur für die Bibliothek , die für die Schriftartenrendering zuständig ist, aktiviert. RLBox kompiliert C/C++-Code aus der zu isolierenden Bibliothek in einen niedrigstufigen Zwischen-Code für WebAssembly, der dann als WebAssembly-Modul präsentiert wird, dessen Berechtigungen ausschließlich an dieses Modul gebunden sind. Das erstellte Modul läuft in einem separaten Speicherbereich und hat keinen Zugriff auf den Rest des Adressraums. Im Falle einer Ausnutzung einer Schwachstelle in der Bibliothek wäre ein Angreifer eingeschränkt und könnte nicht auf die Speicherbereiche des Hauptprozesses zugreifen oder die Kontrolle außerhalb der isolierten Umgebung übergeben.
- DNS über HTTPS (DoH, DNS over HTTPS) für Benutzer in den USA. Als Standard-DNS-Anbieter wird CloudFlare (mozilla.cloudflare-dns.com in der Roskomnadzor), und als Option steht NextDNS zur Verfügung. Den Anbieter ändern oder DoH in Ländern außerhalb der USA aktivieren, finden Sie in den Netzwerkeinstellungen. Weitere Informationen zu DoH in Firefox finden Sie in .
- Unterstützung für die Protokolle TLS 1.0 und TLS 1.1. Um auf Websites über einen sicheren Kanal zuzugreifen, muss der Server mindestens TLS 1.2 unterstützen. Laut Google wird derzeit etwa 0,5 % der Webseitenladevorgänge weiterhin mit veralteten TLS-Versionen durchgeführt. Deaktivierung wurde gemäß den IETF (Internet Engineering Task Force). Der Grund für die Ablehnung der Unterstützung von TLS 1.0/1.1 ist das Fehlen der Unterstützung moderner Verschlüsselungen (z.B. ECDHE und AEAD) und die Anforderung, alte Verschlüsselungen zu unterstützen, deren Zuverlässigkeit im aktuellen Stand der Computertechnik in Frage gestellt wird (z.B. wird TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA benötigt, für Integrität und Authentifizierung werden MD5 und SHA-1 verwendet). Bei dem Versuch, TLS 1.0 und TLS 1.1 ab Firefox 74 zu verwenden, wird eine Fehlermeldung angezeigt. Die Möglichkeit, mit veralteten Versionen von TLS zu arbeiten, kann über die Einstellung security.tls.version.enable-deprecated = true oder durch die Schaltfläche auf der Fehlerseite, die beim Besuch einer Website mit dem alten Protokoll angezeigt wird, zurückgegeben werden.
- Im Release-Hinweis wird ein empfohlenes Add-On erwähnt , das automatisch Widgets von Facebook blockiert, die auf Drittanbieter-Websites verwendet werden, um Authentifizierung, Kommentare und Likes zu senden. Die Identifikationsparameter von Facebook werden in einem separaten Container isoliert, wodurch die Identifizierung des Benutzers mit besuchten Websites erschwert wird. Die Möglichkeit, mit der Hauptseite von Facebook zu interagieren, bleibt erhalten, jedoch wird sie von anderen Websites isoliert.
Für eine flexiblere Isolation beliebiger Websites wird ein Add-On vorgeschlagen mit der Implementierung des Konzepts der kontextuellen Container. Container bieten die Möglichkeit, verschiedene Arten von Inhalten zu isolieren, ohne separate Profile zu erstellen, was es ermöglicht, Informationen zwischen verschiedenen Gruppen von Seiten zu trennen. Zum Beispiel kann man separate, einander isolierte Bereiche für persönliche Kommunikation, Arbeit, Einkäufe und Bankgeschäfte erstellen oder die gleichzeitige Nutzung verschiedener Benutzerkonten auf einer Website organisieren. In jedem Container werden separate Speicher für Cookies, Local Storage API, indexedDB, Cache und Inhalte von OriginAttributes verwendet.
- In about:config wurde die Einstellung „browser.tabs.allowTabDetach“ hinzugefügt, die das Abtrennen von Tabs in neue Fenster verbietet. Das versehentliche Abtrennen eines Tabs ist eine der ärgerlichsten Mängel von Firefox, deren Beseitigung 9 Jahre dauert. Der Browser ermöglicht es, mit der Maus einen Tab in ein neues Fenster zu ziehen, aber unter bestimmten Umständen wird der Tab in ein separates Fenster abgetrennt, und während der Arbeit kann er bei ungeschickten Mausbewegungen während eines Klicks auf den Tab abgetrennt werden.
- Unterstützung für Add-ons, die auf Umwegen installiert werden und nicht an Benutzerprofile gebunden sind. Die Änderung betrifft nur die Installation von Add-ons in die gemeinsamen Verzeichnisse (\/usr\/lib\/mozilla\/extensions\/, \/usr\/share\/mozilla\/extensions\/ oder ~\/\.mozilla\/extensions\/), die von allen Firefox-Instanzen im System verarbeitet werden (ohne Benutzerbindung). Diese Methode wird normalerweise verwendet, um Add-ons in Distributionen vorzuinstallieren, um unerwünschte Add-ons zusammen mit Drittanwendungen einzufügen, um bösartige Add-ons zu integrieren oder um ein Add-on isoliert mit einem eigenen Installer bereitzustellen. In Firefox 73 wurden zuvor zwangsweise installierte Add-ons automatisch aus dem gemeinsamen Verzeichnis in die individuellen Benutzerprofile verschoben und können jetzt über den integrierten Add-on-Manager verwaltet werden.
- Im systemeigenen Add-on Lockwise des Browsers, das eine Benutzeroberfläche "about:logins" zur Verwaltung gespeicherter Passwörter bietet, wurde die Sortierung in umgekehrter Reihenfolge (von Z nach A) hinzugefügt.
- In WebRTC wurde der Schutz vor Informationslecks über die interne IP-Adresse während Sprach- und Videoanrufen durch den Mechanismus „“ erhöht, der die lokale Adresse hinter einer dynamisch generierten Zufallskennung verbirgt, die über Multicast DNS festgelegt wird.
- Die Position des Schaltknopfs für den Ansichtmodus „Bild-in-Bild“ wurde geändert, der die Schaltfläche für den Wechsel zum nächsten Bild in der Benutzeroberfläche für das Batch-Download von Fotos in Instagram überlagerte.
- In JavaScript Der Operator „?.“, der zur einmaligen Überprüfung der gesamten Eigenschafts- oder Aufrufkette bestimmt ist. Zum Beispiel kann man jetzt mit „db?.user?.name?.length“ auf den Wert „db.user.name.length“ zugreifen, ohne vorherige Überprüfungen durchführen zu müssen. Wenn ein Element als null oder undefined behandelt wird, wird der Ausgangswert „undefined“ sein.
- Die Unterstützung für die Methode Object.toSource() und die globale Funktion uneval() auf Websites und in Add-ons wurde hinzugefügt.
- Ein neues Ereignis wurde hinzugefügt und die zugehörige Eigenschaft , die es ermöglicht, einen Handler beim Wechsel der Benutzeroberflächensprache auszulösen.
- Die Verarbeitung des HTTP-Headers (), was Webseiten verbietet, Ressourcen einzufügen (z. B. Bilder und Skripte), die von anderen Domänen geladen werden (Cross-Origin und Cross-Site). Der Header kann zwei Werte annehmen: „same-origin“ (erlaubt nur Ressourcengesuche mit demselben Schema, Hostnamen und Port) und „same-site“ (erlaubt nur Anfragen von derselben Webseite).
Cross-Origin-Resource-Policy: same-site
- Standardmäßig aktivierter HTTP-Header , der das Verhalten von APIs steuert und bestimmte Funktionen aktiviert (z. B. kann der Zugriff auf die Geolocation-API, Kamera, Mikrofon, Vollbildmodus, Autoplay, encrypted-media, Animationen, Payment API, synchronen Modus von XMLHttpRequest usw. deaktiviert werden). Für iframe-Blöcke wird separat das Attribut „„ angeboten, das im Seitenquellcode verwendet werden kann, um Berechtigungen für bestimmte iframe-Blöcke festzulegen.
<iframe src=»https://example.com» allow=»fullscreen»></iframe>
Feature-Policy: microphone 'none'; geolocation 'none'
Wenn die Webseite über das Attribut „allow“ den Zugriff auf eine Ressource für ein bestimmtes iframe zulässt und eine Anfrage aus dem iframe zur Erlangung von Berechtigungen für den Zugriff auf diese Ressource eingeht, zeigt der Browser jetzt einen Dialog zur Berechtigungserteilung im Kontext der Hauptseite an und überträgt die vom Benutzer bestätigten Rechte ins iframe (anstatt eine separate Bestätigung für iframe und Hauptseite zu verlangen). Wird jedoch die Hauptseite nicht mit Berechtigungen für die Ressource ausgestattet, die über das Attribut allow angefordert wird, erfolgt der Zugriff für das iframe auf die Ressource sofort , ohne dem Benutzer einen Dialog anzuzeigen.
- Standardmäßig wird die Unterstützung der CSS-Eigenschaft „“, die die Position der Textunterstreichung bestimmt (zum Beispiel kann bei vertikaler Anordnung des Textes die Unterstreichung links oder rechts angeordnet werden, während sie bei horizontaler Darstellung nicht nur unten, sondern auch oben sein kann). Zusätzlich wurde in den Stilsteuereigenschaften der Unterstreichung die Unterstützung für die Verwendung von Prozentwerten hinzugefügt. und Die Unterstützung der Verwendung von Werten in Prozent wurde hinzugefügt.
- Bei der CSS-Eigenschaft , die den Stil der Linien um Elemente definiert, ist standardmäßig die Verwendung des Wertes „auto“ erlaubt (früher war dies aufgrund von Problemen in GNOME).
- Im JavaScript-Debugger gibt es die Möglichkeit, verschachtelte Web Worker zu debuggen, deren Ausführung angehalten und schrittweise mit Hilfe von Haltepunkten debuggt werden kann.
- Im Interface zur Inspektion von Webseiten werden Warnungen für CSS-Eigenschaften angezeigt, die von positionierten Elementen wie z-index, top, left, bottom und right abhängen.
- Für Windows und macOS wurde die Möglichkeit zur Importierung von Profilen aus dem Microsoft Edge-Browser auf Basis der Chromium-Engine umgesetzt.
Neben neuen Funktionen und Bugfixes wurden in Firefox 74 , von denen 10 (zusammengefasst unter und ) als potenziell in der Lage eingestuft, die Ausführung von Code durch Angreifer beim Öffnen speziell gestalteter Seiten zu ermöglichen. Erinnern Sie sich daran, dass Gedächtnisprobleme wie Bufferüberläufe und der Zugriff auf bereits freigegebene Speicherbereiche in letzter Zeit als gefährlich, aber nicht kritisch eingestuft werden.
Quelle: opennet.ru
