Die Veröffentlichung von Chrome 75

Google präsentierte Freigabe des Webbrowsers Chrome 75. Gleichzeitig ist verfügbar stabile Freigabe des Open-Source-Projekts Chromium, das die Grundlage von Chrome bildet. Der Browser Chrome zeichnet sich aus durch die Verwendung von Google-Logos, der Möglichkeit, das Flash-Modul auf Anfrage herunterzuladen, einem Benachrichtigungssystem im Falle eines Absturzes, Modulen zur Wiedergabe von geschütztem Video-Content (DRM), einem automatischen Update-Installationssystem und der übertragung bei der Suche RLZ-Parameter. Die nächste Version von Chrome 76 ist für den 30. Juli geplant.

Haupt eingeführt wurde, die im Januar dieses Jahres in den Kernel übernommen wurde. Es betrifft ausschließlich die Version 5.1 und tritt in den meisten Fällen auf Systemen mit Samsung-SSD-Speichern auf, bei denen zur Verschlüsselung Daten mit dm-crypt/LUKS über device-mapper/LVM verwendet werden. in Chrome 75:

  • In der Methode canvas.getContext() ein das Flag „desynchronized“, um Canvas-Kontexte (2D oder WebGL) mit einem alternativen Rendering-System zu verarbeiten, das minimale Verzögerungen ermöglicht, indem es den standardmäßigen DOM-Update-Mechanismus umgeht und direkt über OpenGL ausgibt;
  • API erweitert Web Share (Objekt navigator.share), mit dem anstelle einer Liste einzelner Schaltflächen eine einheitliche Schaltfläche für die Veröffentlichung in sozialen Netzwerken, die für den Besucher relevant sind, generiert werden kann. In der neuen Version wird im API hinzugefügt die Möglichkeit hinzugefügt, einen typischen Dialog zum Senden von Dateien an andere Anwendungen anzuzeigen (z. B. wird auf Android ein Block für das Senden über E-Mail, Bluetooth usw. angezeigt);
  • Unterstützung für das parallele Bauen von Paketen auf Mehrkernsystemen wurde implementiert. Die Anzahl der Threads kann über das Makro „%_smp_build_ncpus“ und die Variable $RPM_BUILD_NCPUS festgelegt werden. Zur Bestimmung der Anzahl der CPUs wurde das Makro „%getncpus“ vorgeschlagen; die Möglichkeit, Gruppen von Zahlen in digitalen Literalen mit dem Unterstrich-Symbol zu trennen. Zum Beispiel kann zur Verbesserung der Lesbarkeit großer Zahlen im Code 1_000_000_000 angegeben werden, und diese Zahl wird als 1000000000 verarbeitet;
  • Für alle Benutzer der Desktop-Version ist standardmäßig aktiviert der Modus der strengen Isolation von Seiten, bei dem Seiten verschiedener Hosts immer im Speicher verschiedener Prozesse abgelegt werden, in denen jeweils eine eigene Sandbox angewendet wird. Das Hauptmerkmale des Modus der strengen Isolation ist die Trennung nicht nach Tabs, sondern nach Domains, d.h. wenn zuvor der Inhalt von geladenen Skripten, iFrames und Pop-ups von anderen Domains in einem Prozess mit der Hauptseite ausgeführt wurde, werden sie jetzt in verschiedenen Prozessen getrennt;
  • Blacklisted Erweiterungen werden nun vollständig entfernt, anstatt in den inaktiven Modus versetzt zu werden.
  • Im integrierten Task-Manager von Chrome (Einstellungen > Weitere Tools > Task-Manager) sind gewährleistet werden die Service Worker-Handler angezeigt;
  • Im window.open() method wurde das Attribut „noreferrer“ hinzugefügt, welches es ermöglicht, eine Seite zu öffnen, ohne den Referer-Header auszufüllen;
  • Es wurden hinzugefügt Direktiven CSP (Content Security Policy) «script-src-attr», «script-src-elem», «style-src-attr» und «style-src-elem», die die Funktionalität der Direktiven script und style bereitstellen, jedoch mit der Möglichkeit, sie auf spezifische Ereignis-Handler, Elemente oder Attribute anzuwenden;
  • Im Web Authentication API hinzugefügt unterstützt FIDO CTAP2 PIN zur Verwendung eines vom Benutzer festgelegten PIN-Codes zur Autorisierung von Operationen mit Schlüsseln, die das Protokoll unterstützen FIDO CTAP2. Im Konfigurator gibt es im Abschnitt „Advanced“ den Punkt „Manage security keys“, wo man einen PIN-Code zum Schutz der auf USB-Sticks gespeicherten Schlüssel festlegen kann, sowie eine Option zum Zurücksetzen des Schlüssels (Löschen aller Daten und des PINs);
  • Im API Web Animations wurden die Objekte
    AnimationEffect und KeyframeEffect, hinzugefügt, die eine interaktive Steuerung der animierten Elemente und der Zeitsteuerung (Dauer, Verzögerungen) ermöglichen.
    Darüber hinaus wurde ein neuer Konstruktor Animation() hinzugefügt., der umfassendere Mittel zur Steuerung von Animationen bereitstellt. Zuvor ermöglichte das Web Animations API das Erstellen von Animationen mittels der Methode Element.animate(), die bereits ein formatiertes Animation-Objekt zurückgibt. Jetzt kann der Entwickler die Erstellung durch einen expliziten Aufruf des Konstruktors steuern, in dem beispielsweise ein Objekt KeyframeEffect angegeben werden kann;
  • Option hinzugefügt HTMLVideoElement.playsInline, das dem Browser vorschreibt, das Video im Wiedergabebereich des Elements anzuzeigen (zum Beispiel um die Möglichkeit der Vollbildwiedergabe bereitzustellen);
  • Die Methode MediaStreamTrack.getCapabilities() ermöglicht den Zugriff auf einen Bereich zulässiger Werte für Eigenschaften, die mit Audio-Geräten zusammenhängen (Abtastrate, Latenz, Anzahl der Kanäle usw.);
  • Im WebRTC wurde die API RTCDtlsTransport hinzugefügt, um Informationen über aktive Transportprotokolle, wie die Nutzung von SCTP oder DTLS (Datagram Transport Layer Security), über die Pakete RTP und RTCP gesendet oder empfangen werden. Außerdem wurde die Schnittstelle RTCIceTransport eingeführt, um Informationen über den Zustand der Transporte
    ICE, die im Objekt RTCPeerConnection verwendet werden;
  • Im Cache-Control-Header wurde die Direktive „stale-while-revalidate«, die es ermöglicht, ein zusätzliches Zeitfenster festzulegen, in dem der Browser eine Ressource mit abgelaufenem Zeitlimit für die asynchrone Überprüfung der Aktualität verwenden kann;
  • Die Möglichkeit wurde hinzugefügt Scroll Snap Stop zur Bestimmung der Bindung an Elemente bei Trägheitszus scrollen (zum Beispiel wird eine breite Scrollgeste beim Auswählen in einer Bilderliste nicht das letzte Element, sondern das nächste auswählen);
  • In der Android-Version wurde die Benutzeroberfläche zur automatischen Vervollständigung von Kontoinformationen in Authentifizierungsformularen verbessert. Der Hinweisbereich wird jetzt direkt über der Bildschirmtastatur angezeigt und zeigt bei Klick mögliche gespeicherte Varianten an, anstatt die Bildschirmtastatur einzublenden, die das Eingabeformular überlagert;
  • Experimentelle Unterstützung für den Lesemodus (Reader Mode) hinzugefügt, bei dem nur bedeutender Text angezeigt wird, während alle begleitenden Steuerelemente, Banner, Menüs, Navigationsleisten und andere nicht inhaltliche Teile der Seite ausgeblendet werden. Die Unterstützung des neuen Modus kann über die Option chrome://flags/#enable-reader-mode aktiviert werden, wonach im Dropdown-Menü eine Option zum Nutzen erscheint;
  • Im JavaScript-Engine V8 wurde ein Modus zur expliziten Zwischenspeicherung der Kompilierungsergebnisse von WebAssembly implementiert (bei erneutem Öffnen der Seite werden zuvor bearbeitete WebAssembly-Komponenten aus dem Cache ausgeführt). In
    WebAssembly wurden auch neue Anweisungen wie memory.copy, memory.fill, table.copy, memory.init und table.init hinzugefügt, um große Speicherbereiche zu kopieren, zu füllen und zu initialisieren.
  • Die Unterstützung für das direkte Parsing von Skripten in Echtzeit beim Laden über das Netzwerk ohne Einbeziehung des Haupt-Threads von Chrome wurde hinzugefügt. Zuvor wurde der Thread zunächst im Haupt-Thread akzeptiert und dann an den Parser umgeleitet. Eine solche Anordnung führte dazu, dass die Umleitung durch andere Aufgaben, die im Haupt-Thread ausgeführt wurden, wie das Parsen von HTML und das Ausführen anderer JavaScript-Skripte, blockiert werden konnte. Diese Umleitung wurde nun abgeschafft.
  • Verbesserungen in den Werkzeugen für Web-Entwickler:
    • Im CSS-Inspektionsmodus wird die Autovervollständigung von Funktionsnamen und Basiseigenschaften bereitgestellt, die in CSS-Eigenschaften angewendet werden können (zum Beispiel „filter: blur(1px)“). Die vorgeschlagenen Werte werden sofort im betrachteten Seitenlayout angezeigt.
      Die Veröffentlichung von Chrome 75
    • Im Command Panel, das durch Drücken von Ctrl+Shift+P angezeigt wird, wurde der Befehl „Clear Site Data“ implementiert, um alle mit der Seite verbundenen Daten zu löschen (entspricht dem Aufruf des Menüs Application > Clear Storage), einschließlich Service Workers, localStorage, sessionStorage, IndexedDB, Web SQL, Cookies, Cache und Application Cache;
    • Die Möglichkeit wurde hinzugefügt, alle bestehenden IndexedDB-Datenbanken anzuzeigen (früher konnte in Application > IndexedDB nur die Datenbank für die aktuelle Domain angezeigt werden, was es beispielsweise nicht erlaubte, die Verwendung von IndexedDB in über iframe geladenen Blöcken zu inspizieren);

      Die Veröffentlichung von Chrome 75
    • Im Netzwerkinspektor wird in der Tooltip-Anzeige, die beim Hover über die Felder in der Spalte „Size“ erscheint, die Größe der Ressource im ursprünglichen Format, ohne Komprimierung, angezeigt;

      Die Veröffentlichung von Chrome 75
    • Im Debugger-Seitenbereich wird eine separate Ausgabe von Informationen über den Zustand von Haltepunkten bereitgestellt, die an verschiedenen Teilen komplexer Ausdrücke in der Zeile gebunden sind (Inline-Breakpoint), z. B. in einer Methodenaufrufkette;

      Die Veröffentlichung von Chrome 75
    • In den Inspectoren für IndexedDB und Cache wurde die Anzeige von Zählern für die Gesamtzahl der Ressourcen in der Datenbank oder im Cache implementiert;
      Die Veröffentlichung von Chrome 75
  • In experimentellen Canary-Builds hinzugefügt Unterstützung
    DNS-Anfragen über HTTPS (DoH, DNS über HTTPS), die in chrome://flags#dns-over-https aktiviert werden können. DoH kann nützlich sein, um Lecks von Informationen über angeforderte Hostnamen durch die DNS-Server der Anbieter zu vermeiden, um MITM-Angriffe und die Umleitung von DNS-Verkehr zu verhindern, um DNS-Sperren zu umgehen oder um den Betrieb zu organisieren, wenn ein direkter Zugriff auf DNS-Server nicht möglich ist (zum Beispiel bei der Nutzung eines Proxys);

Neben Neuerungen und Fehlerbehebungen wurden in der neuen Version 42 Schwachstellen. Viele dieser Sicherheitsanfälligkeiten wurden durch automatisierte Tests mit Tools wie AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer und AFL. Kritische Probleme, die es ermöglichen, alle Schutzebenen des Browsers zu umgehen und Systemcode außerhalb der Sandbox-Umgebung auszuführen, wurden nicht entdeckt. Im Rahmen des Programms zur Auszahlung von Belohnungen für das Auffinden von Schwachstellen hat Google für die aktuelle Version 13 Prämien in Höhe von 9000 US-Dollar gezahlt (eine Prämie von 5000 US-Dollar, zwei Prämien von 1000 US-Dollar und vier Prämien von 500 US-Dollar). Die Höhe von 7 Belohnungen ist bisher nicht festgelegt.

Quelle: opennet.ru

Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Servern 🔥 Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Servern | ProHoster