Veröffentlichung von Chrome 94

Google hat die Veröffentlichung des Web-Browsers Chrome 94 vorgestellt. Gleichzeitig ist die stabile Version des freien Projekts Chromium verfügbar, das die Grundlage für Chrome bildet. Der Browser Chrome zeichnet sich durch die Verwendung des Google-Logos, ein Benachrichtigungssystem im Falle eines Absturzes, Module zur Wiedergabe geschützter Videoinhalte (DRM), ein automatisches Update-System und die Übertragung von RLZ-Parametern bei Suchanfragen aus. Die nächste Version Chrome 95 ist für den 19. Oktober geplant.

Mit der Veröffentlichung von Chrome 94 wurde die Entwicklung auf einen neuen Release-Zyklus umgestellt. Zukünftige bedeutende Releases werden nun alle 4 Wochen statt alle 6 Wochen veröffentlicht, wodurch neue Funktionen schneller den Nutzern zur Verfügung stehen. Dabei wird hervorgehoben, dass die Optimierung des Release-Prozesses und die Verbesserung des Testsystems häufigere Veröffentlichungen ohne Qualitätsverluste ermöglichen. Für Unternehmen und für diejenigen, die mehr Zeit für Updates benötigen, wird alle 8 Wochen eine separate Extended Stable-Version veröffentlicht, die den Wechsel auf neue Funktionsversionen nicht alle 4 Wochen, sondern alle 8 Wochen erlaubt.

Die Hauptänderungen in Chrome 94:

  • Ein HTTPS-First-Modus wurde hinzugefügt, der dem bereits in Firefox verfügbaren HTTPS-Only-Modus ähnelt. Wenn der Modus in den Einstellungen aktiviert ist und der Benutzer versucht, eine Ressource ohne Verschlüsselung über HTTP zu öffnen, wird der Browser zunächst versuchen, die Website über HTTPS aufzurufen. Wenn dieser Versuch fehlschlägt, erhält der Benutzer eine Warnung, dass HTTPS nicht unterstützt wird, und wird aufgefordert, die Website ohne Verschlüsselung zu öffnen. In Zukunft prüft Google die Möglichkeit, HTTPS-First standardmäßig für alle Benutzer zu aktivieren, den Zugriff auf bestimmte Funktionen der Webplattform für Seiten, die über HTTP geöffnet werden, einzuschränken und zusätzliche Warnungen hinzuzufügen, die die Benutzer über die Risiken beim Besuch unverschlüsselter Seiten informieren. Der Modus wird im Einstellungsbereich „Datenschutz und Sicherheit“ > „Sicherheit“ > „Erweiterte“ aktiviert.
    Veröffentlichung von Chrome 94
  • Für Seiten, die ohne HTTPS geöffnet werden, ist das Senden von Anfragen (Laden von Ressourcen) an lokale URLs (z.B. „http://router.local“ und localhost) und interne Adressbereiche (127.0.0.0/8, 192.168.0.0/16, 10.0.0.0/8 usw.) untersagt. Eine Ausnahme gilt nur für Seiten, die von Server, die interne IPs haben. Zum Beispiel, eine Seite, die von Server 1.2.3.4 geladen wird, kann auf eine Ressource zugreifen, die auf IP 192.168.0.1 oder IP 127.0.0.1 gehostet ist, während eine von Server 192.168.1.1 geladene Seite dies ebenfalls kann. Diese Änderung führt eine zusätzliche Schutzebene ein, um die Ausnutzung von Schwachstellen in Handlern zu verhindern, die Anfragen an lokale IPs akzeptieren, und schützt vor DNS-Rebinding-Angriffen.
  • Die Funktion „Sharing Hub“ wurde hinzugefügt, die es ermöglicht, den Link zur aktuellen Seite schnell mit anderen Benutzern zu teilen. Es gibt die Möglichkeit, einen QR-Code mit der URL zu generieren, die Seite zu speichern, den Link an ein anderes mit dem Benutzerkonto verbundenes Gerät zu senden und Links auf Drittanbieter-Websites wie Facebook, WhatsApp, Twitter und VK zu teilen. Diese Möglichkeit ist bislang nicht für alle Benutzer verfügbar. Um die Schaltfläche „Teilen“ im Menü und der Adressleiste zwangsweise zu aktivieren, können die Einstellungen „chrome://flags/#sharing-hub-desktop-app-menu“ und „chrome://flags/#sharing-hub-desktop-omnibox“ genutzt werden.
    Veröffentlichung von Chrome 94
  • Es gab eine Umstrukturierung im Browser-Einstellungs-Interface. Jede Einstellungssektion wird jetzt auf einer eigenen Seite angezeigt, anstatt auf einer gemeinsamen.
    Veröffentlichung von Chrome 94
  • Die Unterstützung für die dynamische Aktualisierung des Logs ausgegebener und zurückgezogener Zertifikate (Certificate Transparency) wurde implementiert, das nun ohne Bindung an die Browser-Aktualisierung aktualisiert wird.
  • Es wurde eine Hilfeseite „chrome://whats-new“ hinzugefügt, die eine Übersicht über sichtbare Änderungen für den Benutzer in der neuen Version bietet. Die Seite wird automatisch direkt nach dem Update angezeigt oder ist über die Schaltfläche „Was ist neu“ im Hilfemenü verfügbar. Derzeit werden auf der Seite die Tabsuche, die Möglichkeit zur Trennung von Profilen und die Funktion zur Änderung der Hintergrundfarbe erwähnt, die nicht spezifisch für Chrome 94 sind und in früheren Versionen eingeführt wurden. Die Anzeige der Seite ist derzeit nicht für alle Benutzer aktiviert: zur Steuerung der Aktivierung können die Einstellungen „chrome://flags#chrome-whats-new-ui“ und „chrome://flags#chrome-whats-new-in-main-menu-new-badge“ verwendet werden.
    Veröffentlichung von Chrome 94
  • Der Zugriff auf die WebSQL-API aus Inhalten, die von Drittanbieter-Websites geladen werden (z.B. über iframe), wurde als veraltet erklärt. In Chrome 94 wird beim Versuch, auf WebSQL aus externen Skripten zuzugreifen, eine Warnung angezeigt, aber ab Chrome 97 werden solche Zugriffe blockiert. Zukünftig ist geplant, die Unterstützung von WebSQL schrittweise vollständig einzustellen, unabhängig vom Nutzungszusammenhang. Der WebSQL-Handler basiert auf dem SQLite-Code und könnte von Angreifern zur Ausnutzung von Schwachstellen in SQLite verwendet werden.
  • Aus Sicherheitsgründen und zur Verhinderung bösartiger Aktivitäten wurde die Verwendung des veralteten MK-Protokolls (URL:MK) blockiert, das einmal in Internet Explorer verwendet wurde und es web-basierten Anwendungen ermöglichte, Informationen aus komprimierten Dateien zu extrahieren.
  • Die Unterstützung für die Synchronisierung mit alten Versionen von Chrome (Chrome 48 und älter) wurde eingestellt.
  • Der HTTP-Header Permissions-Policy, der dazu dient, bestimmte Funktionen zu aktivieren und den Zugriff auf APIs zu steuern, hat die Unterstützung für das Flag „display-capture“ erhalten, das die Verwendung der API Screen Capture auf der Seite steuert (standardmäßig wird der Zugriff auf den Inhalt des Bildschirms aus externen iframes blockiert).
  • Im Modus der Origin Trials (experimentelle Funktionen, die eine separate Aktivierung erfordern) wurden mehrere neue APIs hinzugefügt. Origin Trial bedeutet die Möglichkeit, mit der angegebenen API aus Anwendungen zu arbeiten, die von localhost oder 127.0.0.1 geladen werden, oder nach erfolgreicher Registrierung und Erhalt eines speziellen Tokens, der für eine begrenzte Zeit für eine bestimmte Website gültig ist.
    • Die WebGPU-API wurde hinzugefügt, um die WebGL-API abzulösen und bietet Mittel zur Ausführung von Operationen auf der GPU, wie z.B. Rendering und Berechnungen. Konzeptuell ähnelt WebGPU der Vulkan-, Metal- und Direct3D 12-API. WebGPU unterscheidet sich konzeptionell von WebGL in etwa so, wie die grafische API Vulkan sich von OpenGL unterscheidet, basiert jedoch nicht auf einer bestimmten grafischen API, sondern stellt eine universelle Schicht dar, die die gleichen Low-Level-Primitiven verwendet, die in Vulkan, Metal und Direct3D 12 vorhanden sind.

      WebGPU bietet JavaScript-Anwendungen niedrige Kontrollmöglichkeiten für die Organisation, Verarbeitung und Übertragung von Befehlen an die GPU und ermöglicht das Management verwandter Ressourcen, Speicher, Puffer, Texturobjekte und kompilierten Grafik-Shadern. Dieser Ansatz ermöglicht eine höhere Leistung bei grafischen Anwendungen durch Verringerung der Overhead-Kosten und Steigerung der Effizienz bei der Arbeit mit der GPU. Die API ermöglicht es auch, komplexe 3D-Projekte für das Web zu erstellen, die nicht schlechter funktionieren als eigenständige Programme, jedoch nicht an bestimmte Plattformen gebunden sind.

    • Für isolierte PWA-Anwendungen wurde die Möglichkeit implementiert, sich als URL-Handler zu registrieren. Beispielsweise kann die Anwendung music.example.com sich als Handler für die URL https://*.music.example.com registrieren, sodass alle Links von externen Anwendungen, wie aus Messengern und E-Mail-Clients, zu diesem PWA-Programm führen und nicht zu einem neuen Tab im Browser.
    • Die Unterstützung für den neuen HTTP-Statuscode 103 wurde implementiert, der für eine proaktive Bereitstellung von Headers verwendet werden kann. Der Statuscode 103 ermöglicht es, den Client über den Inhalt bestimmter HTTP-Header sofort nach der Anfrage zu informieren, ohne darauf zu warten, dass der Server alle mit der Anfrage verbundenen Operationen ausführt und mit der Bereitstellung des Inhalts beginnt. Auf diese Weise können Hinweise zu verwandten Elementen der anzufordenden Seite gegeben werden, die vorab geladen werden können (z.B. Links zu den auf der Seite verwendeten CSS- und JavaScript-Dateien). Mit diesen Informationen beginnt der Browser, diese Ressourcen zu laden, ohne auf den Abschluss der Bereitstellung der Hauptseite zu warten, was die gesamte Anfrageverarbeitungszeit verkürzt.
  • Die API WebCodecs wurde hinzugefügt, um Multimedia-Streams auf niedriger Ebene zu manipulieren, und ergänzt hochrangige APIs wie HTMLMediaElement, Media Source Extensions, WebAudio, MediaRecorder und WebRTC. Die neue API könnte in Bereichen wie Game-Streaming, Anwendung von Effekten auf der Client-Seite, Neuencodierung von Streams und Unterstützung für nicht standardisierte Multimedia-Container gefragt sein. Anstatt separate Codecs in JavaScript oder WebAssembly zu implementieren, bietet die API WebCodecs Zugriff auf fertige, leistungsstarke Komponenten, die im Browser eingebaut sind. Insbesondere bietet die API WebCodecs Decoder und Encoder für Audio und Video, Bilddecoder sowie Funktionen zur Arbeit mit einzelnen Video-Frames auf niedriger Ebene.
  • Stabilisierte API Insertable Streams, die die Manipulation von unkomprimierten (raw) Multimedia-Streams ermöglichen, die über die API MediaStreamTrack übertragen werden, wie Daten von Kamera und Mikrofon, Ergebnisse der Bildschirmaufnahme oder Zwischenergebnisse der Dekodierung durch den Codec. Für die Darstellung der rohen Frames werden die WebCodec-Schnittstellen verwendet, woraufhin ein Stream generiert wird, der dem ähnelt, den die API WebRTC Insertable Streams auf Basis von RTCPeerConnections erzeugt. Praktisch ermöglicht die neue API die Implementierung von Funktionen wie der Anwendung von maschinellen Lernmethoden zur Identifizierung oder Annotation von Objekten in Echtzeit oder zur Hinzufügung von Effekten, wie z. B. dem Herausnehmen des Hintergrunds, vor der Kodierung oder nach der Dekodierung durch den Codec.
  • Stabilisierte Methode scheduler.postTask(), die die Planung der Ausführung von Aufgaben (Callback-Calls von JavaScript) mit unterschiedlichen Prioritätsstufen verwaltet. Es stehen drei Prioritätsstufen zur Verfügung: 1 - Ausführung hat Vorrang, selbst wenn Benutzeroperationen blockiert werden können; 2 - sichtbare Änderungen für den Benutzer sind zulässig; 3 - Ausführung im Hintergrund). Um die Priorität zu ändern und Aufgaben abzubrechen, kann das Objekt TaskController verwendet werden.
  • Stabilisiert und jetzt außerhalb der Origin Trials verteiltes API Idle Detection zur Bestimmung der Inaktivität des Benutzers. Die API ermöglicht die Bestimmung der Zeit, in der der Benutzer nicht mit der Tastatur/Maus interagiert, der Bildschirmschoner aktiv ist, der Bildschirm gesperrt ist oder die Arbeit auf einem anderen Monitor stattfindet. Die Benachrichtigung der Anwendung über die Inaktivität erfolgt durch das Senden einer Benachrichtigung, nachdem ein festgelegter Inaktivitätswert erreicht wurde.
  • Formalisiert den Prozess der Farbverwaltung in Objekten CanvasRenderingContext2D und ImageData und deren Verwendung im Farbmanagementraum sRGB. Ermöglicht die Erstellung von Objekten CanvasRenderingContext2D und ImageData in Farbmanagementräumen, die sich von sRGB unterscheiden, wie Display P3, um die erweiterten Funktionen moderner Monitore zu nutzen.
  • In der API VirtualKeyboard wurden Methoden und Eigenschaften hinzugefügt, um das Anzeigen und Verbergen der virtuellen Tastatur zu steuern sowie Informationen über die Größe der angezeigten virtuellen Tastatur abzurufen.
  • In JavaScript, classes have the option to use static initialization blocks to group code that runs once during class processing: class C { // The block will run during the processing of the class itself static { console.log("C’s static block"); } }
  • In the CSS properties flex-basis and flex, the keywords content, min-content, max-content, and fit-content have been implemented for more flexible control over the size of the main area of Flexbox.
  • Das CSS-Attribut scrollbar-gutter wurde hinzugefügt, um den Platz auf dem Bildschirm für die Scrollleiste zu steuern. Wenn beispielsweise keine Scrollung des Inhalts erforderlich ist, kann die Ausgabe erweitert werden, um den Bereich der Scrollleiste zu nutzen.
  • The Self Profiling API has been added with a profiling system that allows measuring the execution time of JavaScript on the client side for debugging performance issues in JavaScript code, without resorting to manual manipulation in the web developers' interface.
  • After the removal of the Flash plugin, it was decided to return empty values in the properties navigator.plugins and navigator.mimeTypes, but it turned out that some applications used them to check for the presence of plugins to display PDF files. Since Chrome has a built-in PDF viewer, henceforth the properties navigator.plugins and navigator.mimeTypes will return a fixed list of standard plugins and MIME types for viewing PDF — "PDF Viewer, Chrome PDF Viewer, Chromium PDF Viewer, Microsoft Edge PDF Viewer and WebKit built-in PDF".
  • Improvements have been made to the web development tools. Nest Hub and Nest Hub Max devices have been added to the device simulation list. A button has been added to the network activity inspection interface for inverting filters (for example, when setting the filter "status-code: 404", you can quickly see all other requests), and the ability to view the original values of Set-Cookie headers has been provided (allowing assessment of the presence of incorrect values removed during normalization). The sidebar in the web console has been declared deprecated and will be removed in one of the upcoming releases. An experimental feature to hide issues in the Issues tab has been added. An option to select the interface language has been added in the settings.
    Veröffentlichung von Chrome 94

Neben Neuerungen und Fehlerbehebungen wurden in der neuen Version 19 Sicherheitsanfälligkeiten behoben. Viele dieser Schwachstellen wurden durch automatisierte Tests mit den Werkzeugen AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer und AFL identifiziert. Kritische Probleme, die es ermöglichen, alle Schutzebenen des Browsers zu umgehen und Code außerhalb der Sandbox-Umgebung auszuführen, wurden nicht gefunden. Im Rahmen des Belohnungsprogramms für die Entdeckung von Sicherheitsanfälligkeiten hat Google für die aktuelle Version 17 Prämien in Höhe von 56.500 US-Dollar ausgezahlt (eine Prämie von 15.000 $, zwei Prämien von 10.000 $, eine Prämie von 7.500 $, vier Prämien von 3.000 $ und zwei Prämien von 1.000 $). Die Höhe von 7 Prämien ist noch nicht festgelegt.

Quelle: opennet.ru

60GB SSD 8Gb DDR4