Die Firma Google hat die Version 122 des Web-Browsers Chrome veröffentlicht. Gleichzeitig steht die stabile Version des Open-Source-Projekts Chromium zur Verfügung, das als Grundlage für Chrome dient. Der Browser Chrome unterscheidet sich von Chromium durch die Verwendung von Google-Logos, das Vorhandensein eines Systems zur Übermittlung von Benachrichtigungen im Falle eines Absturzes, Module zur Wiedergabe von kopiergeschütztem Videoinhalt (DRM), ein System zur automatischen Installation von Updates, die ständige Aktivierung der Sandbox-Isolierung, die Bereitstellung von Schlüsseln für die Google API und die Übertragung von RLZ-Parametern bei der Suche. Für diejenigen, die mehr Zeit für das Update benötigen, wird gesondert der Extended Stable-Zweig mit einer Begleitung von 8 Wochen unterstützt. Die nächste Version Chrome 123 ist für den 19. März geplant.
Wesentliche Änderungen in Chrome 122:
- Gemäß den Anforderungen des europäischen Gesetzes DMA (Digital Markets Act) wurde dem Browser ein Auswahlbildschirm für die Standardsuchmaschine hinzugefügt. Zur Auswahl stehen Suchmaschinen, die im Menüpunkt ‚chrome://settings/search‘ verfügbar sind. Die Suchmaschinen werden in zufälliger Reihenfolge angezeigt.

- Auf die Seite ‚chrome://settings/security‘ wurde eine Einstellmöglichkeit hinzugefügt, die es ermöglicht, die JIT-Optimierer im JavaScript-Engine V8 zu deaktivieren. Die Deaktivierung von JIT kann nützlich sein, um die Sicherheit bei der Arbeit mit potenziell gefährlichen Webanwendungen zu erhöhen, indem mögliche Angriffsvektoren verringert werden.

- In der Android-Version wurde eine Funktion zum Vorlesen von Text hinzugefügt, der auf der Webseite vorhanden ist. Der Lesemodus kann im Dropdown-Menü aktiviert und mit typischen Steuerungselementen für die Wiedergabe gesteuert werden. Die Funktion nutzt einen externen Dienst und sendet den Link an Server Google, die Sprachsynthese bereitstellen.
- Die Testphase für experimentelle Funktionen, die maschinelles Lernen verwenden, wird fortgesetzt – darunter der intelligente Tab-Gruppierungsmodus, der Design-Generator und der interaktive Assistent, über die im Ankündigung zur Veröffentlichung von Chrome 121 berichtet wurde.
- Im Browser-Schutzmodus (Safe Browsing) wurde die Unterstützung für asynchron ausgeführte externe Prüfungen implementiert, die die Ladezeit der geprüften Seite nicht blockieren. Die Prüfungen anhand lokaler Listen erfolgen weiterhin synchron, und die Seite wird erst nach deren Abschluss angezeigt, um den Nutzer vor der Nutzung von Seiten mit Exploits zu schützen. Bei Phishing ist es unwahrscheinlich, dass der Benutzer auf die Seite reagieren kann, bevor die externe Prüfung abgeschlossen ist und die Warnung ausgegeben wird.
- Der Text der Warnmeldungen wurde überarbeitet, die beim Versuch angezeigt werden, schädliche Dateien herunterzuladen, sowie für bereits heruntergeladene Dateien im Download-Manager.

- Es hat ein schrittweiser Übergang begonnen, die Ereignis-Handler für "unload" zu ignorieren, die eine effektive Nutzung des Übergangscaches (BFCache – Back-forward cache) verhindern, welcher einen sofortigen Wechsel bei der Nutzung der Tasten "Zurück" und "Vorwärts" oder bei der Navigation durch zuvor besuchte Seiten der aktuellen Website ermöglicht. Das Verhalten des Desktop-Chrome wird näher an dem von mobilen Browsern liegen, die in den meisten Fällen kein "unload"-Ereignis generieren und die Zwischenspeicherung der Übergänge priorisieren. In Chrome 122 wurde die Verarbeitung des "unload"-Ereignisses für 1 % der Nutzer deaktiviert.
- Im Autovervollständigungssystem für Zahlungsparameter wurde die Möglichkeit hinzugefügt, Authentifizierungscodes (CVV/CVC) für lokale und serverseitige Karten zu speichern. Die Codes werden nach der Anzeige einer Warnung und der expliziten Zustimmung des Nutzers gespeichert.
- Die Storage Buckets API wurde hinzugefügt, die zusätzliche Möglichkeiten zur Verwaltung der dauerhaften Datenspeicherung im lokalen System des Nutzers bietet. Die neue API ermöglicht die Organisation der Datenspeicherung durch Aufteilung des Speichers in separate Segmente, die mit der API IndexedDB und CacheStorage assoziiert sind. Segmente werden unabhängig voneinander vom Browser entfernt, und dem Nutzer wird die Möglichkeit gegeben, Prioritäten festzulegen, die steuern, welche Segmente zuerst entfernt werden sollen. Eine solche Organisation ermöglicht es, wichtige Daten in Segmenten mit hoher Priorität zu speichern, während sekundäre, deren Verlust nicht tragisch wäre, in Segmenten mit niedriger Priorität abgelegt werden. So wird das Problem des Verlusts wichtiger Daten bei Erschöpfung der verfügbaren Speicherlimits, die über die API IndexedDB und localStorage bereitgestellt werden, gelöst.
- In der API Async Clipboard wurde die Option „unsanitized“ in die Methode read() eingefügt, die beim Kopieren aus der Zwischenablage und beim Einfügen verwendet wird. Bei Aktivierung dieser Option erhält die Anwendung den unveränderten Inhalt der HTML-Markup für Daten aus der Zwischenablage, ohne Bereinigung, Normalisierung oder Ersetzung gefährlicher Konstruktionen (z. B. der Inhalt des „“-Blocks wird nicht umgewandelt).
- CSS-Anfragen „@container“ reagieren jetzt nicht mehr bei der Angabe nicht unterstützter Eigenschaften, wie zum Beispiel der Anfrage „@container (width > 0px) or (unknown) {}“ funktioniert aufgrund des Ausdrucks „unknown“ nicht.
- In CSS ist es nun erlaubt, Bedingungen in Import-Regeln „@import … supports(…)“ zu definieren. Wenn die Überprüfung fehlschlägt, erfolgt kein Import. Zum Beispiel kann für das Laden von Stilen, wenn „animation-timeline“ auf „auto“ gesetzt ist, wie folgt angegeben werden: ‘scroll-driven-animations.css ‘@import „scroll-driven-animations.css“ supports(animation-timeline: auto);’.
- In CSS wurde die Logik zur Verarbeitung des Pseudo-Elements „::backdrop“ geändert und an die Anforderungen der aktualisierten Spezifikation angepasst, sodass es jetzt vom Ursprungs-Element erbt (früher hat „::backdrop“ keine Werte anderer Elemente geerbt, was den Zugriff auf in den Wurzel-Elementen definierten Eigenschaften unmöglich machte).
- Die Funktion dataTransfer.clearData() ist nun nur auf Textobjekte beschränkt, d.h. diese Methode kann nicht mehr auf File-Objekte angewendet werden.
- In WebGL wurde die Funktion drawingBufferStorage hinzugefügt, die es ermöglicht, das Pixel-Format für den Zeichnungs-Puffer einzustellen, wodurch es möglich wird, Inhalte mit mehr als 8 Bit pro Farbkanal direkt auszugeben und unnötige Kopieroperationen zu vermeiden, die erforderlich waren, um in das standardmäßige Pixel-Format umzuwandeln.
- Es wurden Verbesserungen an den Entwicklertools vorgenommen. Es wurde Unterstützung für die Anpassung des Farbschemas und das Befolgen des in der ausgewählten Browser-Thema festgelegten Stils hinzugefügt.

Die Funktionalität des Panels zur Leistungsanalyse wurde erweitert, indem Zeitachsen jetzt die Unterstützung für das Speichern von Ausführungsbereichen (Abschnitten auf der Zeitachse) und das Umschalten zwischen diesen bieten.
Im Haupt-Track (Performance > Main) wurde die Anzeige von Ereignisauslösern und deren anschaulichen Verbindungen zu den Ereignissen, die sie auslösen, hinzugefügt.

Im Analysepanel für die Netzwerkaktivität zeigt die Spalte mit dem Status der Anfrageverarbeitung die Ursachen für Fehlermeldungen an. Das Kontextmenü für das Kopieren von Links oder Inhalten der Anfrage wurde überarbeitet.

Neben neuen Funktionen und Bugfixes wurden in der neuen Version 12 Sicherheitsanfälligkeiten behoben. Viele der Sicherheitsanfälligkeiten wurden durch automatisierte Tests mit den Werkzeugen AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer und AFL entdeckt. Kritische Probleme, die alle Schutzebenen des Browsers umgehen und Code außerhalb der Sandbox-Umgebung ausführen, wurden nicht gefunden. Im Rahmen des Programms zur Vergabe von Belohnungen für das Auffinden von Sicherheitsanfälligkeiten hat Google für die aktuelle Veröffentlichung 8 Prämien in Höhe von insgesamt 28.000 US-Dollar vergeben (darunter eine Prämie von 8.000 $, 7.000 $, 5.000 $, 3.000 $ und 2.000 $, sowie drei Prämien von 1.000 $). Die höchsten Belohnungen wurden für einen Fehler in der Umsetzung der Webseitenisolation, die Entdeckung eines Pufferüberlaufes in der Blink-Engine und den Zugriff auf bereits freigegebene Speicher (Use-after-free) in der Mojo-Bibliothek vergeben.
Quelle: opennet.ru






