Release des Web-Browsers , sowie Firefox 68.1 für die Android-Plattform. Darüber hinaus wurden Updates erstellt. mit langfristiger Unterstützung und (Die ESR-Zweig 60.x wird nicht mehr aktualisiert, ein Wechsel zum 68.x-Zweig wird empfohlen). In naher Zukunft wird der Zweig Firefox 70 in die Phase übergehen, deren Veröffentlichung für den 22. Oktober vorgesehen ist.
:
- In den standardmäßig verwendeten Modus zur Blockierung unerwünschter Inhalte wurden Funktionen zur Ignorierung von Cookies aller Drittanbieter, die das Tracking von Bewegungen durchführen, und zur Blockierung von JavaScript-Einfügungen, die Krypto-Mining ermöglichen, hinzugefügt. Mining-Code führt zu einer erheblichen Erhöhung der CPU-Auslastung im Benutzerbetriebssystem und wird in der Regel durch Hacks auf Websites eingefügt oder wird auf fragwürdigen Websites als Monetarisierungsmethode verwendet.
Früher wurden diese Blockierungen nur im strengen Blockierungsmodus aktiviert, der nun nur dann aktiviert werden sollte, wenn Methoden zur Blockierung von („Browser Fingerprinting“). Die Blockierung erfolgt anhand einer Liste von .Bei der Blockierung wird in der Adressleiste ein Schildsymbol angezeigt, und im Kontextmenü kann man sehen, von welchen Websites die Cookies blockiert wurden, die für das Tracking von Bewegungen verwendet werden. Im selben Menü kann die Blockierung auch selektiv für einzelne Websites deaktiviert werden.
- Die Möglichkeiten zur Blockierung der automatischen Wiedergabe von multimedialen Inhalten wurden erweitert. Neben der zuvor hinzugefügten Funktion zur Stummschaltung des Tons in automatisch wiedergegebener Videos gibt es die Möglichkeit, die Videowiedergabe vollständig zu stoppen, ohne nur den Ton auszuschalten. Beispielsweise wurden zuvor Werbevideos auf Websites angezeigt, jedoch ohne Ton, im neuen Modus beginnen sie ohne einen klaren Klick sogar nicht mit der Wiedergabe. Um den Modus zu aktivieren, wurde ein neuer Punkt „Block audio and video“ zu den Einstellungen zur automatischen Wiedergabe (Optionen > Datenschutz und Sicherheit > Berechtigungen > Autoplay) hinzugefügt, der den standardmäßig eingestellten Modus „Block audio“ ergänzt.

Der Modus kann für bestimmte Websites über das Kontextmenü ausgewählt werden, das durch Klicken auf die Schaltfläche „(i)“ in der Adressleiste angezeigt wird.
- Für Nutzer aus den USA und Builds „en-US“ wurde das Layout der Startseite, die beim Öffnen eines neuen Tabs angezeigt wird, geändert sowie zusätzlich Inhalte angezeigt, die vom Pocket-Dienst empfohlen werden. Die Größe der Blöcke und die Anzahl der Empfehlungen wurden angepasst, und es wurden neue thematische Abschnitte (Gesundheit, Wissenschaft, Technologie und Unterhaltung) vorgeschlagen;
- Die Möglichkeit zur Wiedergabe von Flash-Inhalten über das Adobe-Flash-Plugin ist standardmäßig deaktiviert. Die Einstellungen des Adobe Flash Player Plugins wurden bereinigt, sodass nur die Möglichkeiten zum Deaktivieren von Flash und zur individuellen Aktivierung für bestimmte Websites (Aktivierung durch expliziten Klick) ohne Speicherung des gewählten Modus übrig bleiben. In den ESR-Zweigen von Firefox wird die Unterstützung von Flash bis Ende 2020 beibehalten;
- standardmäßig die Verarbeitung von Dateien und , die es dem Nutzer ermöglichen, das Design von Websites oder der Firefox-Oberfläche zu überschreiben. Als Grund für die standardmäßige Deaktivierung wird die Arbeit zur Verkürzung der Startzeit des Browsers genannt. Die Änderung des Verhaltens über userContent.css und userChrome.css wird von Benutzern selten durchgeführt, und das Laden von CSS-Daten verbraucht zusätzliche Ressourcen (Optimierung beseitigt unnötige Festplattenzugriffe). Um die Verarbeitung von userChrome.css und userContent.css wiederherzustellen, wurde in about:config die Einstellung „toolkit.legacyUserProfileCustomizations.stylesheets“ hinzugefügt, die automatisch für Nutzer aktiviert wird, die bereits userChrome.css oder userContent.css verwenden;
- Für WebRTC wurde die Möglichkeit implementiert, Kanäle mit verschiedenen Videocodecs zu verarbeiten, was die Erstellung von Videokonferenzdiensten erleichtert, bei denen die Teilnehmer unterschiedliche Client-Software verwenden können;
- Für die ARM64-Architektur wurde im JavaScript-Engine die Unterstützung von JIT-Compilation implementiert;
- In den Browser-Identifikatoren (navigator.userAgent, navigator.platform und navigator.oscpu) wurde die Information über die Verwendung der 32-Bit-Version von Firefox in einer 64-Bit-Umgebung entfernt (früher erforderlich für Flash, aber es hinterließ einen zusätzlichen Vektor für die versteckte Identifizierung des Benutzers);
- Die Funktion zur Anzeige von Videos im „Bild-in-Bild“-Modus wurde hinzugefügt, die es ermöglicht, das Video in einem schwebenden Fenster zu trennen, das während der Navigation im Browser sichtbar bleibt. Um in diesem Modus anzusehen, müssen Sie auf die eingeblendete Anleitung klicken oder im Kontextmenü, das beim Rechtsklick auf das Video angezeigt wird, „Bild-in-Bild“ auswählen (bei YouTube, das seinen eigenen Kontextmenü-Handler verwendet, müssen Sie zweimal mit der rechten Maustaste klicken oder mit gedrückter Shift-Taste klicken). Die Unterstützung für diesen Modus kann in about:config über die Option „media.videocontrols.picture-in-picture.enabled“ aktiviert werden;
- Implementierung eines Passwortgenerators („signon.generation.available“ in about:config), der beim Ausfüllen von Registrierungsformularen einen Hinweis auf ein automatisch generiertes sicheres Passwort ausgibt;
- Im Passwortmanager Möglichkeiten zur Verarbeitung von Konten im Kontext der obersten Domain, was bedeutet, dass ein Passwort vorgeschlagen wird, das für alle Subdomains gespeichert ist. Zum Beispiel wird das Passwort, das für login.example.com gespeichert wurde, jetzt auch für die automatische Ausfüllung in den Formularen der Website www.example.com vorgeschlagen;
- von Prozess-Handlern, der der Betriebssystem Informationen über die wichtigsten Prozesse überträgt. Zum Beispiel erhält der Prozess zur Verarbeitung von Inhalten, der den aktiven Tab bearbeitet, eine höhere Priorität (es werden mehr CPU-Ressourcen zugewiesen) als der Prozess, der mit Hintergrund-Tabs verbunden ist (sofern dort kein Video oder Ton abgespielt wird). Diese Änderung ist derzeit nur standardmäßig für die Windows-Plattform aktiviert, für andere Systeme ist die Option dom.ipc.processPriorityManager.enabled in about:config erforderlich;
- Wurde aktiviert API , das es ermöglicht, mit der WebExtensions-Technologie Greasemonkey-ähnliche Erweiterungen zu erstellen, um benutzerdefinierte Skripte im Kontext von Web-Seiten auszuführen. Zum Beispiel können durch das Einbinden von Skripten das Aussehen und Verhalten der angezeigten Seiten geändert werden. Dieses API ist bereits Bestandteil von Firefox, aber zuvor war es erforderlich, die Einstellung „extensions.webextensions.userScripts.enabled“ in about:config zu aktivieren. Im Gegensatz zu bestehenden Erweiterungen mit ähnlicher Funktionalität, die tabs.executeScript aufrufen, ermöglicht das neue API die Isolation von Skripten in separaten Sandbox-Umgebungen, löst Leistungsprobleme und bietet die Möglichkeit, verschiedene Ladephasen der Seiten zu bearbeiten.
- Die Eigenschaft navigator.mediaDevices ist jetzt nur verfügbar, wenn die Seite in einem sicheren Kontext (Secure Context) geöffnet wird, d.h. über HTTPS, über localhost oder aus einer lokalen Datei;
- CSS-Eigenschaften wurden hinzugefügt und , die die Anzeige von Inhalten steuern, die über den Rand von Block- und Inline-Elementen hinausgehen (Schwänze abschneiden oder Scrollleisten anzeigen). Die Eigenschaften werden durch die automatische Umwandlung in overflow-x und overflow-y je nach Inhalt-Ausgabemodus (von oben nach unten oder zeilenweise) realisiert.
- Für die CSS-Eigenschaft Unterstützung für den Wert break-spaces wurde implementiert;
- Das CSS-Eigenschaft wurde implementiert , was angibt, dass das Element und dessen Inhalt vom restlichen DOM-Baum getrennt sind;
- Eine CSS-Eigenschaft wurde hinzugefügt , das definiert, ob der Text vom Benutzer ausgewählt werden kann;
- Die Möglichkeit zur Festlegung von @supports-Regeln für Selektoren wurde hinzugefügt (
Format „@supports selector(selector-to-test){…}“), was angewendet werden kann, um CSS selektiv nur dann anzuwenden, wenn ein bestimmter Selektor im Browser unterstützt wird oder nicht; - Unterstützung hinzugefügt für für Instanzen von JavaScript-Klassen, die es ermöglichen, vordefinierte Eigenschaften anzugeben, die außerhalb des Konstruktors initialisiert werden. In naher Zukunft wird auch die Unterstützung für private Felder erwartet, die außerhalb der Klasse nicht sichtbar sind;
class Product {
name;
tax = 0.2; /*öffentliches Feld*/
#basePrice = 0; /*приватное поле*/
price;constructor(name, basePrice) {
this.name = name;
this.basePrice = basePrice;
this.price = (basePrice * (1 + this.tax)).toFixed(2);
}
} - API hinzugefügt , die es ermöglichen, einen Handler zu verbinden, an den Benachrichtigungen über Größenänderungen der angegebenen Elemente auf der Seite gesendet werden. Der entscheidende Unterschied zwischen der neuen API und window.onresize sowie CSS Media Queries besteht darin, dass man feststellen kann, ob ein bestimmtes Element auf der Seite verändert wurde, und nicht der gesamte sichtbare Bereich, was es ermöglicht, nur auf die Änderung dieses Elements zu reagieren, ohne den gesamten sichtbaren Inhalt zu verändern;
- Die Microtasks-API wurde hinzugefügt, dargestellt durch eine Methode , die es ermöglicht, auf niedriger Ebene einen Callback-Funktionsaufruf zu planen, indem er der Warteschlange der Microtasks hinzugefügt wird;
- Neue Methoden wurden hinzugefügt , , , DOMMatrix.fromMatrix(), ;
- In die HTTP-Header Access-Control-Expose-Headers, Access-Control-Allow-Methods und Access-Control-Allow-Headers wurde die Möglichkeit hinzugefügt, die Maske „*“ für Anfragen ohne Anmeldedaten anzugeben;
- In der Web-Konsole wurde eine Gruppierung von Warnungen zur Benutzerverfolgung hinzugefügt;
- Im Netzwerkaktivitätsinspektor wurden detaillierte Informationen zu den Gründen für die Blockierung von Ressourcen (CSP, gemischte Inhalte usw.) hinzugefügt, sowie eine optionale Spalte mit dem vollständigen URL;
- Der Start des JavaScript-Debuggers wurde beschleunigt. Die Funktionen zur Remote-Debugging wurden in das about:debugging-Interface verschoben. Es wurde Unterstützung für das schrittweise Debugging von asynchronen Funktionen (Async) implementiert. eine neue Klasse von Haltepunkten, die an Ereignisse gebunden werden können, die mit der Maus, dem Touchscreen, Animationen, DOM, Media Queries,
Workern usw. verbunden sind. - In die Entwicklerwerkzeuge wurde eine Schnittstelle zur Überprüfung der Seitenansicht hinzugefügt, die alternative Textbeschreibungen anstelle von Bildern);
Auf Systemen mit macOS, auf denen mehrere Grafikkarten installiert sind, wurde ein aggressiveres Umschalten auf eine energieeffiziente GPU nach der Verarbeitung von WebGL-Inhalten ermöglicht. Zudem wurde ein Schutz gegen den Übergang von der energieeffizienten zu einer leistungsstarken GPU für einmalige WebGL-Aufrufe hinzugefügt. In macOS-Builds wurde auch eine Fortschrittsanzeige für den Datei-Upload über die Standard-Finder-Schnittstelle implementiert. Die Erstellung von Installationspaketen für Firefox im PKG-Format hat begonnen; - Auf Systemen mit macOS, die mehrere Grafikkarten installiert haben, wird ein aggressiverer Wechsel zu einem energieeffizienten GPU nach Abschluss der WebGL-Inhaltsverarbeitung gewährleistet. Außerdem wurde ein Schutz gegen den Wechsel von energieeffizienten zu leistungsstarken GPUs für einmalige WebGL-Aufrufe hinzugefügt. In den macOS-Bauten wird auch die Anzeige des Ladefortschritts von Dateien über die integrierte Finder-Schnittstelle реализовано. Die Erstellung von Installationspaketen für Firefox im PKG-Format hat begonnen;
- Für Windows 10 mit den neuesten Updates (1903+) wurde die Unterstützung der Web Authentication HmacSecret-Erweiterung über Windows Hello hinzugefügt, um sich auf Webseiten ohne Passwort mit einem Fingerabdruck, Gesichtserkennung oder einem USB-Token zu authentifizieren;
- die neuen Versionen von Firefox für Android werden jetzt unter dem Codenamen Fenix als neuer Browser für mobile Geräte entwickelt, der die GeckoView-Engine und das Mozilla Android Components-Bibliothekset verwendet. Korrekturen für Firefox für Android werden im Laufe des Jahres im Rahmen des ESR-Zweigs von Firefox 68 veröffentlicht, zum Beispiel wurde jetzt eine Version erstellt . Um den neuen Browser herunterzuladen, sollten Test-Builds verwendet werden
.
Neben den Neuerungen und Fehlerkorrekturen in Firefox 69 wurden , von denen nur eine (CVE-2019-11751) . Dieses Problem ist plattformspezifisch und ermöglicht das Speichern einer beliebigen Datei im System, wenn der Browser aus einer anderen Anwendung gestartet wird (z.B. kann ein Link aus einer Messaging-App so gestaltet werden, dass der Start des Browsers zur Erstellung einer Autostart-Datei im Verzeichnis ‘Startup’ führt). Die Verringerung der kritischen Sicherheitsanfälligkeiten ist darauf zurückzuführen, dass Speicherprobleme, wie Pufferüberläufe und der Zugriff auf bereits freigegebenen Speicherbereiche, jetzt als riskant, aber nicht als kritisch eingestuft werden. In der neuen Version wurden 13 solcher Probleme behoben, die potenziell zur Ausführung von Schadcode beim Öffnen speziell gestalteter Seiten führen können.
Quelle: opennet.ru

