Die Veröffentlichung des Web-Browsers , sowie Firefox 68.6 für die Android-Plattform. Zudem wurde ein Update erstellt. . In naher Zukunft wird die Beta-Testphase Der Branch Firefox 75 wird am 7. April veröffentlicht (Projekt für einen 4-5-wöchigen ). Für die Beta-Version von Firefox 75 wird die Flatpak-Format für Linux bereitgestellt.
:
- In den Versionen für Linux wird ein Isolationsmechanismus verwendet, , der darauf abzielt, die Ausnutzung von Schwachstellen in Drittanbieterfunktionsbibliotheken zu verhindern. Derzeit ist die Isolierung nur für die Bibliothek , verantwortlich für die Schriftartenrendering. RLBox kompiliert den C/C++-Code der isolierten Bibliothek in Low-Level WebAssembly-Intermediate-Code, der dann als WebAssembly-Modul verpackt wird, dessen Berechtigungen ausschließlich auf dieses Modul beschränkt sind. Das kompilierte Modul arbeitet in einem separaten Speicherbereich und hat keinen Zugriff auf den Rest des Adressraums. Im Falle der Ausnutzung einer Schwachstelle in der Bibliothek wird der Angreifer eingeschränkt und kann nicht auf den Speicherbereich des Hauptprozesses zugreifen oder die Kontrolle außerhalb der isolierten Umgebung übertragen.
- DNS über HTTPS (DoH, DNS over HTTPS) für Benutzer in den USA. Als Standard-DNS-Anbieter wird CloudFlare (mozilla.cloudflare-dns.com) angeboten, in von Roskomnadsor), während NextDNS als Option verfügbar ist. Den Anbieter ändern oder DoH in Ländern außerhalb der USA aktivieren, 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 eine gesicherte Verbindung zuzugreifen, muss der Server mindestens TLS 1.2 unterstützen. Laut Google erfolgt derzeit etwa 0,5% der Ladezeiten von Webseiten weiterhin mit veralteten TLS-Versionen. Die Deaktivierung erfolgt gemäß IETF (Internet Engineering Task Force). Der Grund für die Abkehr von TLS 1.0/1.1 ist das Fehlen der Unterstützung moderner Verschlüsselungen (zum Beispiel ECDHE und AEAD) sowie die Notwendigkeit, ältere Verschlüsselungen zu unterstützen, deren Zuverlässigkeit in der heutigen technologischen Entwicklung in Frage gestellt wird (zum Beispiel wird die Unterstützung von TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA verlangt, und zur Integritätsprüfung und Authentifizierung werden MD5 und SHA-1 verwendet). Beim Versuch, TLS 1.0 und TLS 1.1 ab Firefox 74 zu verwenden, wird ein Fehler angezeigt. Die Möglichkeit, mit veralteten TLS-Versionen zu arbeiten, kann über die Einstellung security.tls.version.enable-deprecated = true oder über die Schaltfläche auf der Fehlerseite, die angezeigt wird, wenn man auf eine Seite mit einem alten Protokoll zugreift, wiederhergestellt werden.
- Im Veröffentlichungsnotiz wurde die Ergänzung empfohlen , das automatisch Facebook-Widgets blockiert, die auf Drittanbieter-Webseiten eingesetzt werden, um Authentifizierung, Kommentarversand und Likes zu ermöglichen. Die Facebook-Identifikationsparameter werden in einem separaten Container isoliert, was die Identifizierung des Nutzers mit besuchten Webseiten erschwert. Die Möglichkeit zur Nutzung des Hauptzeitraums von Facebook bleibt erhalten, jedoch wird eine Isolation von anderen Seiten vorgenommen.
Für eine flexiblere Isolation beliebiger Webseiten steht ein ergänzendes Modul zur Verfügung , das das Konzept der kontextuellen Container umsetzt. Container bieten die Möglichkeit, verschiedene Arten von Inhalten zu isolieren, ohne separate Profile erstellen zu müssen, was eine Trennung der Informationen einzelner Seitengruppen ermöglicht. Beispielsweise können separate, voneinander isolierte Bereiche für persönliche Kommunikation, Arbeit, Einkäufe und Bankgeschäfte geschaffen oder die gleichzeitige Nutzung verschiedener Benutzerkonten auf einer Webseite organisiert werden. In jedem Container werden separate Speicher für Cookies, Local Storage API, indexedDB, Cache und OriginAttributes verwendet.
- In about:config wurde die Einstellung „browser.tabs.allowTabDetach“ hinzugefügt, die das Trennen von Tabs in neue Fenster verbietet. Das versehentliche Abtrennen eines Tabs gehört zu den ärgerlichsten Mängeln von Firefox, die behoben werden müssen. Der Browser ermöglicht es, Tabs mit der Maus in ein neues Fenster zu ziehen; jedoch kann es unter bestimmten Umständen vorkommen, dass ein Tab ungewollt in ein neues Fenster abgetrennt wird, wenn die Maus während des Klicks auf den Tab unvorsichtig bewegt wird.
- Unterstützung für Plugins, die auf Umwegen installiert werden und nicht an Benutzerprofile gebunden sind. Die Änderung betrifft ausschließlich die Installation von Plugins in gemeinsamen Verzeichnissen (/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 Plugins in Distributionen vorab zu installieren, sie gemeinsam mit Drittanwendungen unbefugt einzufügen, um bösartige Plugins zu integrieren oder um ein Plugin mit einem eigenen Installer separat bereitzustellen. In Firefox 73 wurden zuvor zwangsweise installierte Plugins automatisch von dem gemeinsamen Verzeichnis in individuelle Benutzerprofile verschoben und können jetzt über den integrierten Plugin-Manager.
- Im im Browser enthaltenen Systemplugin Lockwise, das die Schnittstelle „about:logins“ zur Verwaltung gespeicherter Passwörter bietet, wurde eine Sortierung in umgekehrter Reihenfolge (von Z nach A) hinzugefügt.
- In WebRTC wurde der Schutz vor Datenlecks bezüglich der internen IP-Adresse während Sprach- und Videoanrufen durch den Mechanismus „«, der die lokale Adresse hinter einer dynamisch generierten zufälligen Identifikation verbirgt, die über Multicast DNS bestimmt wird.
- Die Position des Bild-in-Bild-Ansichtsschalters wurde geändert, der die Schaltfläche zum Wechseln zum nächsten Bild in der Benutzeroberfläche der Batch-Fotolast hochlade.
- In JavaScript Der Operator «?.» dient zur einmaligen Überprüfung der gesamten Eigenschafts- oder Methodenfolge. Zum Beispiel kann man jetzt mit «db?.user?.name?.length» auf den Wert «db.user.name.length» zugreifen, ohne vorherige Prüfungen durchzuführen. Wenn ein Element als null oder undefined verarbeitet wird, gibt es den Wert «undefined» zurück.
- Unterstützung für die Methode Object.toSource() auf Webseiten und in Erweiterungen sowie die globale Funktion uneval().
- Ein neues Ereignis wurde hinzugefügt und die zugehörige Eigenschaft , die es ermöglichen, einen Handler bei der Änderung der Benutzersprache der Benutzeroberfläche aufzurufen.
- Die Verarbeitung des HTTP-Headers (), der es Websites ermöglicht, das Einfügen von Ressourcen (z. B. Bildern und Skripten), die von anderen Domänen geladen werden (cross-origin und cross-site), zu verbieten. Der Header kann zwei Werte annehmen: „same-origin“ (erlaubt nur Anfragen von Ressourcen mit demselben Schema, Hostnamen und Portnummer) und „same-site“ (erlaubt nur Anfragen von derselben Website).
Cross-Origin-Resource-Policy: same-site
- Standardmäßig aktivierter HTTP-Header , die es ermöglichen, das Verhalten von APIs zu steuern und bestimmte Funktionen zu aktivieren oder zu deaktivieren (z. B. Zugang zum Geolocation API, Kamera, Mikrofon, Vollbildmodus, Autoplay, encrypted-media, Animationen, Payment API, synchroner Modus von XMLHttpRequest usw.). Für iframe-Blöcke wurde zusätzlich das Attribut „‘ vorgeschlagen, das im Seiten-Code 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 eine Website durch das Attribut „allow“ den Zugriff auf eine Ressource für ein bestimmtes iframe ermöglicht und eine Anfrage aus dem iframe zur Erlangung von Berechtigungen für diese Ressource eingeht, zeigt der Browser nun ein Dialogfeld zur Bereitstellung der Berechtigungen im Kontext der Hauptseite an und delegiert die vom Benutzer genehmigten Rechte an das iframe (anstatt einer separaten Bestätigung für das iframe und die Hauptseite). Wenn jedoch die Hauptseite nicht über die Berechtigungen für die Ressource verfügt, die über das Attribut allow angefordert wird, wird der Zugang für das iframe sofort gewährt, , ohne dem Benutzer ein Dialogfeld anzuzeigen.
- Standardmäßig wird die Unterstützung für die CSS-Eigenschaft „“ aktiviert, die die Position der Textunterstreichung bestimmt (zum Beispiel kann bei vertikaler Anordnung des Textes die Unterstreichung links oder rechts und bei horizontaler Anordnung nicht nur unten, sondern auch oben erfolgen). Zusätzlich wurde in den CSS-Stilen zur Kontrolle der Unterstreichung und die Unterstützung für die Verwendung von Prozentwerten hinzugefügt.
- In der CSS-Eigenschaft , die den Linienstil um Elemente festlegt, ist standardmäßig die Verwendung des Wertes „auto“ erlaubt (früher war dies aufgrund von Problemen in GNOME).
- Im JavaScript-Debugger Die Möglichkeit, eingebettete Web-Worker zu debuggen, deren Ausführung angehalten und Schritt für Schritt mit Hilfe von Haltepunkten debuggt werden kann.
- Im Interface zur Inspektion von Webseiten werden Warnungen für CSS-Eigenschaften angezeigt, die von den positionierten Elementen z-index, top, left, bottom und right abhängen.
- Für Windows und macOS wurde die Möglichkeit implementiert, Profile aus dem Microsoft Edge-Browser, der auf dem Chromium-Engine basiert, zu importieren.
Neben Neuerungen und Fehlerbehebungen wurden in Firefox 74 auch , von denen 10 (zusammengestellt unter und ) als potenziell in der Lage eingestuft, die Ausführung von Schadcode beim Öffnen speziell gestalteter Seiten zu ermöglichen. Wir erinnern daran, dass Speicherprobleme, wie Bufferüberläufe und Zugriffe auf bereits freigegebene Speicherbereiche, seit Kurzem als gefährlich, aber nicht kritisch eingestuft werden.
Quelle: opennet.ru
