Google Freigabe des Webbrowsers . Gleichzeitig stabile Freigabe des Open-Source-Projekts , das die Grundlage von Chrome bildet. Der Browser Chrome Verwendung von Google-Logos, ein Benachrichtigungssystem bei Abstürzen, die Möglichkeit, das Flash-Modul auf Anfrage herunterzuladen, Module zur Wiedergabe von geschützten Videoinhalten (DRM), ein automatisches Update-Installationssystem sowie Datentransfer bei der Suche. . Die nächste Version von Chrome 77 ist für den 10. September geplant.
:
- standardmäßig ist der Schutzmodus für die Übertragung von Drittanbieter-Cookies aktiviert, der im Fall des Fehlens des SameSite-Attributs im Set-Cookie-Header standardmäßig den Wert „SameSite=Lax“ setzt. Dies schränkt die Übertragung von Cookies bei Anfragen von externen Seiten ein (aber die Seiten können die Einschränkung weiterhin aufheben, indem sie beim Setzen des Cookies explizit den Wert SameSite=None angeben). Bisher hat der Browser Cookies bei jeder Anfrage an eine Website, für die Cookies gesetzt wurden, übermittelt, selbst wenn ursprünglich eine andere Website geöffnet wurde und der Zugriff indirekt über das Laden eines Bildes oder eines iframes erfolgte. Im ‘Lax’-Modus wird die Übertragung von Cookies nur für inter-site-Subanfragen blockiert, wie beispielsweise das Anfordern eines Bildes oder das Laden von Inhalten über iframes, die häufig für CSRF-Angriffe und zur Verfolgung der Nutzerbewegungen zwischen Websites verwendet werden.
- Die Wiedergabe von Flash-Inhalten ist standardmäßig deaktiviert. Bis zur Veröffentlichung von Chrome 87, die für Dezember 2020 geplant ist, kann die Unterstützung von Flash in den Einstellungen (Erweitert > Datenschutz und Sicherheit > Website-Einstellungen) wiederhergestellt werden, wobei die Wiedergabe von Flash-Inhalten für jede Webseite ausdrücklich bestätigt werden muss (die Bestätigung wird bis zum Neustart des Browsers gespeichert). Die vollständige Entfernung des Codes zur Unterstützung von Flash ist mit dem zuvor von Adobe angekündigten Plan zur Einstellung der Unterstützung der Flash-Technologie im Jahr 2020 synchronisiert.
- Für Unternehmen wurde die Möglichkeit hinzugefügt, in der Adressleiste nach Dateien im Google Drive-Speicher zu suchen.
- Gestartet in Chrome unerwünschter Werbung, die das Nutzererlebnis stört und nicht den von der Coalition for Better Ads festgelegten Kriterien entspricht.
- Ein adaptiver Modus für den Wechsel zur neuen Seite wurde implementiert, bei dem das Leeren des aktuellen Inhalts und das Anzeigen eines weißen Hintergrunds nicht sofort, sondern mit einer kurzen Verzögerung erfolgen. Bei schnell ladenden Seiten führt das Leeren lediglich zu einem Flackern und bietet keine nützliche Information, um den Benutzer über den Beginn des Ladevorgangs der neuen Seite zu informieren. In der neuen Version wird, wenn die Seite schnell geladen wird und innerhalb der kurzen Verzögerung bleibt, die neue Seite nahtlos anstelle der vorherigen angezeigt (beispielsweise praktisch beim Wechsel zu weiteren Seiten des gleichen Webauftritts mit ähnlichem Design und Farbgebung). Wenn für die Anzeige der Seite deutlich spürbare Zeit benötigt wird, bleibt der Bildschirm wie zuvor vorausgecleart;
- Die Kriterien zur Bestimmung der Benutzeraktivität auf der Seite wurden verschärft. Chrome erlaubt das Anzeigen von Pop-up-Benachrichtigungen und das Abspielen von störenden Video-/Audioinhalten nur nach Benutzerinteraktionen mit der Seite. Im neuen Release gelten Tastendruck auf Escape, das Bewegen des Mauszeigers über einen Link und Berührungen des Bildschirms nicht mehr als aktivierende Interaktionen (es ist ein expliziter Klick, Texteingabe oder Scrollen erforderlich);
- Medienabfrage „prefers-color-scheme“, die es Webseiten ermöglicht, die Verwendung des dunklen Designs im Browser zu erkennen und automatisch das dunkle Design für die besuchte Seite zu aktivieren.
- Beim Aktivieren des dunklen Designs in den Versionen für Linux wird nun auch die Adressleiste in dunkler Farbe angezeigt;
- die Möglichkeit, das Öffnen einer Seite im Inkognito-Modus über Manipulationen mit der FileSystem-API zu bestimmen, die zuvor von einigen Veröffentlichungen verwendet wurde, um ein kostenpflichtiges Abonnement aufzuzwingen, falls Seiten anonym ohne Cookie-Speicherung geöffnet werden (damit Benutzer den privaten Modus nicht zur Umgehung des Mechanismus für kostenlosen Testzugang verwenden). Früher blockierte der Browser im Inkognito-Modus den Zugriff auf die FileSystem-API, um zu verhindern, dass Daten zwischen Sitzungen gespeichert werden, was es ermöglichte, über JavaScript die Möglichkeit der Datenspeicherung über die FileSystem-API zu überprüfen und im Falle eines Fehlers auf die Aktivität des Inkognito-Modus zu schließen. Jetzt wird der Zugriff auf die FileSystem-API nicht blockiert, und der Inhalt wird nach Beendigung der Sitzung gelöscht;
- neue Aufrufe in
API-Zahlungsanfrage und Zahlungsabwickler. Im Objekt PaymentRequestEvent wurde die neue Methode changePaymentMethod() eingeführt, und im Objekt PaymentRequest wurde ein neuer Ereignishandler paymentmethodchange hinzugefügt. Diese ermöglichen es der Zahlungsplattform oder dem Webanwendung, auf die Änderung der Zahlungsmethode durch den Benutzer zu reagieren. In dieser Version wurde auch das Testen von Anwendungen, die selbstsignierte Zertifikate verwenden, im Zusammenhang mit den Zahlungs-APIs vereinfacht. Eine neue Befehlszeilenoption „—ignore-certificate-errors“ wurde hinzugefügt, um Zertifikatvalidierungsfehler während der Entwicklung zu ignorieren; - In die Adressleiste neben der Schaltfläche zum Hinzufügen zu Lesezeichen für Webanwendungen, die im Desktop Progressive Web Apps (PWA) Modus ausgeführt werden, wird ein Shortcut zur Installation der Webanwendung im System bereitgestellt, um wie ein eigenständiges Programm zu arbeiten;
- Für mobile Geräte besteht nun die Möglichkeit, die Mini-Leiste zur Aufforderung zum Hinzufügen einer Anwendung zum Startbildschirm zu steuern. Bei PWA-Anwendungen (Progressive Web App) wird die Mini-Leiste standardmäßig beim ersten Öffnen der Website automatisch angezeigt. Der Entwickler kann jetzt jedoch auf die Anzeige dieser Leiste verzichten und eine eigene Installationsaufforderung implementieren, indem er einen Event-Handler für
beforeinstallprompt festlegt und dessen Aufruf preventDefault(); bindet. - Die Überprüfung der Aktualisierungen für installierte PWA-Anwendungen im Android-Umfeld wurde erhöht. WebAPK-Aktualisierungen werden jetzt einmal täglich überprüft, anstelle wie zuvor einmal alle drei Tage. Wenn bei dieser Überprüfung im Manifest eine Änderung eines der wichtigen Eigenschaften festgestellt wird, wird der Browser das neue WebAPK herunterladen und installieren.
- In der API Es wurde die Möglichkeit hinzugefügt, Bilder programmgesteuert über die Zwischenablage zu lesen und zu schreiben, indem die Methoden navigator.clipboard.read() und navigator.clipboard.write() verwendet werden.
- Die Unterstützung für eine Gruppe von HTTP-Headern wurde implementiert. (Sec-Fetch-Dest, Sec-Fetch-Mode, Sec-Fetch-Site und Sec-Fetch-User), die es ermöglichen, zusätzliche Metadaten über die Art der Anfrage zu senden (z. B. Cross-Site-Anfrage, Anfrage über das img-Tag usw.), damit auf dem Server Maßnahmen zum Schutz vor bestimmten Angriffstypen ergriffen werden können (z. B. ist es unwahrscheinlich, dass ein Link zu einem Geldüberweisungsdienst über ein img-Tag angegeben wird, weshalb solche Anfragen ohne Übertragung an die Anwendung blockiert werden können);
- Funktion hinzugefügt , die eine programmgesteuerte Übermittlung von Formulardaten initiiert, ähnlich wie ein Klick auf die Schaltfläche zum Senden. Diese Funktion kann bei der Entwicklung eigener Sende-Schaltflächen verwendet werden, für die der Aufruf von form.submit() nicht ausreicht, da dieser keine interaktive Überprüfung der Parameter, die Generierung des Ereignisses 'submit' und die Übertragung der an die Sende-Schaltfläche gebundenen Daten zur Folge hat;
- In IndexedDB wurde die Funktion , die es ermöglicht, Transaktionen, die mit dem IDBTransaction-Objekt verbunden sind, zu erfassen, ohne auf den Abschluss der Ereignis-Handler in allen zugehörigen Anfragen zu warten. Die Verwendung von commit() erhöht die Durchsatzrate für Lese- und Schreibanfragen im Speicher und ermöglicht eine explizite Steuerung des Abschlusses der Transaktion;
- In der Funktion Intl.DateTimeFormat wurden Optionen hinzugefügt, , die es ermöglichen, lokal spezifische Stile zur Anzeige von Datum und Uhrzeit anzufordern;
- Die Methode BigInt.prototype.toLocaleString() wurde geändert, um Zahlen unter Berücksichtigung der Lokalisierung zu formatieren, und die Methode Intl.NumberFormat.prototype.format() sowie die Funktion formatToParts() wurden angepasst, um Eingabewerte vom Typ BigInt zu unterstützen;
- Die Verwendung der API , wird in allen Arten von Web Workern erlaubt, was verwendet werden kann, um optimale Parameter beim Erstellen eines MediaStreams aus dem Worker auszuwählen;
- Es wurde die Methode , der nur bereits erfüllte oder abgelehnte Promises zurückgibt, ohne die darauf wartenden Promises zu berücksichtigen;
- Die Option „—disable-infobars“ wurde entfernt, die zuvor verwendet werden konnte, um Pop-up-Warnungen in der Chrome-Oberfläche auszublenden (um sicherheitsbezogene Warnungen auszublenden, ist die Regel CommandLineFlagSecurityWarningsEnabled vorgeschlagen).
- Im Interface zur Arbeit mit Blobs Methoden text(), arrayBuffer() und stream() zum Lesen bestimmter Datentypen;
- Die CSS-Eigenschaft „white-space: break-spaces“ wurde hinzugefügt, die definiert, dass jede Abfolge von Leerzeichen, die zu einem Zeilenüberlauf führt, gebrochen werden muss;
- Die Arbeit zur Bereinigung der Flags in chrome://flags hat begonnen, beispielsweise das Flag zum Deaktivieren des Attributs „ping“, welches es Website-Besitzern ermöglicht, Klicks auf Links von ihren Seiten zu verfolgen. Bei einem Klick auf einen Link mit dem Attribut „ping=URL“ im „a href“-Tag kann nun im Browser das Senden einer zusätzlichen POST-Anfrage an die im Attribut angegebene URL mit Informationen über den erfolgten Klick nicht mehr deaktiviert werden. Der Sinn der Blockierung von ping entfällt, da dieses Attribut in den HTML5-Spezifikationen und es gibt zahlreiche Umgehungsmethoden, um die gleiche Aktion auszuführen (zum Beispiel über einen Transitlink oder das Abfangen von Klicks durch JavaScript-Handler);
- Das Flag für die Deaktivierung wurde entfernt , in dem die Seiten verschiedener Hosts immer im Speicher verschiedener Prozesse abgelegt werden, wobei jeder seine eigene Sandbox verwendet.
- Im V8-Engine wurde die Leistung beim Scannen und Parsen des JSON-Formats erheblich gesteigert. Für beliebte Webseiten wurde eine Beschleunigung der Ausführung von JSON.parse um bis zu 2,7-mal festgestellt. Die Verarbeitung von Unicode-Zeichenfolgen wurde ebenfalls deutlich beschleunigt, beispielsweise ist die Geschwindigkeit bei den Aufrufen von String#localeCompare, String#normalize und einigen APIs von Intl fast doppelt so schnell geworden. Zudem wurde die Leistung von Operationen mit gefrorenen Arrays bei der Nutzung von ähnlichen Operationen wie frozen.indexOf(v), frozen.includes(v), fn(…frozen), fn(…[…frozen]) und fn.apply(this, […frozen]) erheblich optimiert.

Neben Neuerungen und Fehlerbehebungen wurden in der neuen Version . Viele dieser Sicherheitsanfälligkeiten wurden durch automatisierte Tests mit Tools wie , , , und . Kritische Probleme, die es ermöglichen, alle Schutzebenen des Browsers zu umgehen und Code außerhalb der Sandbox-Umgebung auszuführen, wurden nicht entdeckt. Im Rahmen des Belohnungsprogramms zur Entdeckung von Sicherheitsanfälligkeiten hat Google in der aktuellen Version 16 Prämien in Höhe von insgesamt 23.500 US-Dollar vergeben (eine Prämie von 10.000 US-Dollar, eine Prämie von 6.000 US-Dollar, zwei Prämien von 3.000 US-Dollar und drei Prämien von 500 US-Dollar). Die Höhe von 9 Prämien wurde bisher nicht festgelegt.
Quelle: opennet.ru

