Chrome wersja 75

Google представила wydanie przeglądarki internetowej Chrome 75... Jednocześnie dostępny stabilne wydanie darmowego projektu chrom, który jest podstawą Chrome. Przeglądarka Chrome inny korzystanie z logo Google, możliwość ładowania modułu Flash na żądanie, obecność systemu wysyłania powiadomień w przypadku awarii, modułów do odtwarzania chronionych treści wideo (DRM), systemu automatycznej aktualizacji i transmisji w wyszukiwarce Parametry RLZ. Kolejna wersja Chrome 76 jest zaplanowana na 30 lipca.

Głównym zmiany в Chrom 75:

  • Do metody canvas.getContext(). dodany flaga „zsynchronizowana” do przetwarzania kontekstów Canvas (2D lub WebGL) przy użyciu alternatywnego systemu renderowania, który zapewnia minimalne opóźnienia dzięki pominięciu standardowego mechanizmu aktualizacji DOM i wyprowadzaniu danych bezpośrednio przez OpenGL;
  • Rozszerzony interfejs API Udostępnij w sieci (object navigator.share), za pomocą którego zamiast listy pojedynczych przycisków można wygenerować ujednolicony przycisk do publikowania w sieciach społecznościowych odpowiednich dla odwiedzającego. W nowej wersji w API dodany możliwość wyświetlenia typowego okna dialogowego do wysyłania plików do innych aplikacji (na przykład na Androidzie wyświetlany jest blok do wysyłania pocztą, Bluetooth itp.);
  • Wdrożone możliwość rozdzielania grup liczb w literałach cyfrowych znakiem podkreślenia. Na przykład, aby poprawić czytelność dużych liczb w kodzie, możesz podać 1_000_000_000 i ta liczba zostanie przetworzona jako 1000000000;
  • Domyślnie włączone dla wszystkich użytkowników komputerów stacjonarnych tryb ścisłej izolacji witryny, w którym strony różnych hostów zawsze znajdują się w pamięci różnych procesów, z których każdy korzysta z własnej piaskownicy. Główną cechą trybu ścisłej izolacji jest podział nie według zakładek, ale według domen, tj. jeśli wcześniej zawartość skryptów, iframe i popup ładowanych z innych domen była wykonywana w tym samym procesie co strona bazowa, teraz zostaną one rozdzielone na różne procesy;
  • Dodatki z czarnej listy będą teraz całkowicie usuwane, a nie wyłączane i przełączane w tryb nieaktywny.
  • We wbudowanym menedżerze zadań Chrome (Ustawienia > Więcej narzędzi > Menedżer zadań) zabezpieczone wyświetlanie pracowników serwisu;
  • Dodano atrybut „window.open()” do „noreferrer“, umożliwiając otwarcie strony bez wypełniania nagłówka strony odsyłającej;
  • Dodany dyrektywy CSP (Zasady bezpieczeństwa treści) „script-src-attr”, „script-src-elem”, „style-src-attr” i „style-src-elem”, które zapewniają funkcjonalność dyrektyw script i style, ale można zastosować do poszczególnych procedur obsługi zdarzeń, elementów lub atrybutów;
  • W interfejsie API uwierzytelniania internetowego dodany obsługa FIDO CTAP2 PIN w celu wykorzystania zdefiniowanego przez użytkownika kodu PIN do autoryzacji operacji za pomocą kluczy obsługujących protokół FIDO CTAP2. W konfiguratorze w sekcji „Zaawansowane” pojawiła się pozycja „Zarządzaj kluczami bezpieczeństwa”, w której można przypisać kod PIN do ochrony kluczy znajdujących się na dysku USB, a także opcję resetowania klucza (kasowanie wszystkich dane i PIN);
  • Obiekty dodane do interfejsu Web Animations API
    Efekt animacji i Efekt klatki kluczowej, umożliwiając interaktywną kontrolę animowanych elementów i synchronizację (czas trwania, opóźnienia).
    Ponadto dodano nowy konstruktor animacja(), który zapewnia bardziej rozbudowaną kontrolę nad animacją. Wcześniej interfejs Web Animations API umożliwiał tworzenie animacji przy użyciu metody Element.animate(), która zwraca już utworzony obiekt Animation. Teraz programista może kontrolować jego tworzenie poprzez jawne wywołanie konstruktora, w którym na przykład można określić obiekt KeyframeEffect;

  • Dodano opcję HTMLVideoElement.playsInlineA, który mówi przeglądarce, aby wyświetliła wideo w obszarze odtwarzania elementu (na przykład, aby zapewnić metodę odtwarzania na pełnym ekranie);
  • Metoda MediaStreamTrack.getCapabilities() implementuje możliwość uzyskania zakresu prawidłowych wartości dla właściwości związanych z urządzeniami audio (częstotliwość próbkowania, opóźnienia, liczba kanałów itp.);
  • API dodane do WebRTC Transport RTCDtls w celu uzyskania informacji o aktywnych transportach, takich jak wykorzystanie SCTP lub DTLS (Datagram Transport Layer Security), za pośrednictwem których wysyłane lub odbierane są pakiety RTP i RTCP. Dodano również interfejs RTCIceTransport do dostarczania informacji o stanie transportów
    ICE używane w obiekcie RTCPeerConnection;

  • Nagłówek Cache-Control implementuje dyrektywę „nieaktualne podczas ponownej weryfikacji„, który pozwala ustawić dodatkowe okno czasowe, w którym przeglądarka może korzystać z zasobu z wygasłym czasem asynchronicznego ponownego sprawdzania;
  • Dodano zdolność Scroll Snap Stop, aby określić powiązanie z elementami podczas przewijania bezwładnościowego (na przykład szeroki gest przewijania podczas wybierania na liście obrazów spowoduje wybranie nie ostatniego elementu, ale następnego);
  • W wersji na Androida poprawiono interfejs autouzupełniania parametrów konta w formularzach uwierzytelniających. Blok podpowiedzi jest teraz wyświetlany bezpośrednio nad klawiaturą ekranową, a po kliknięciu wyświetla możliwe zapisane opcje zamiast klawiatury ekranowej, bez zasłaniania formularza wprowadzania;
  • Dodano eksperymentalną obsługę trybu czytnika, po włączeniu wyświetlany jest tylko znaczący tekst, a wszystkie powiązane kontrolki, banery, menu, paski nawigacyjne i inne niezwiązane z treścią części strony są ukryte. Włączenie obsługi nowego trybu odbywa się za pomocą opcji chrome://flags/#enable-reader-mode, po czym w menu rozwijanym pojawia się pozycja umożliwiająca korzystanie z niego;
  • Silnik JavaScript V8 implementuje jawne buforowanie wyników kompilacji WebAssembly (po ponownym otwarciu strony wcześniej przetworzone komponenty WebAssembly zostaną uruchomione z pamięci podręcznej). W
    WebAssembly dodał także nowe instrukcje memory.copy, memory.fill, table.copy, memory.init i table.init do kopiowania, wypełniania i inicjowania dużych obszarów pamięci;

  • Dodano obsługę bezpośredniego analizowania skryptów w locie, gdy są one pobierane przez sieć, bez angażowania głównego wątku Chrome. Wcześniej wątek był najpierw odbierany w wątku głównym, z którego był przekierowywany do parsera. Taki układ oznaczał, że przekierowanie mogło zostać zablokowane przez inne zadania wykonywane w głównym wątku, takie jak parsowanie kodu HTML i wykonywanie innego kodu JavaScript. Teraz takie przekierowanie zostało zniesione;
  • Ulepszenia w narzędziach dla twórców stron internetowych:
    • Tryb inspekcji CSS zapewnia autouzupełnianie nazw i wartości podstawowych funkcji, których można użyć we właściwościach CSS (na przykład „filter: blur(1px)”). Sugerowane wartości są natychmiast odzwierciedlane w wyświetlanym układzie strony;
      Chrome wersja 75

    • Panel poleceń wyświetlany po naciśnięciu klawiszy Ctrl+Shift+P implementuje polecenie „Wyczyść dane witryny”, aby wyczyścić wszystkie dane powiązane ze stroną (podobnie jak wywołanie menu Application > Clear Storage ), w tym Service workers, localStorage, sessionStorage, IndexedDB, Web SQL, pliki cookie, pamięć podręczna i pamięć podręczna aplikacji;
    • Dodano możliwość przeglądania wszystkich istniejących baz IndexedDB (wcześniej w Application > IndexedDB można było przeglądać bazę danych dla bieżącej domeny, co nie pozwalało np. na sprawdzenie użycia IndexedDB w blokach ładowanych przez iframe);

      Chrome wersja 75

    • W interfejsie inspekcji sieci podpowiedź, która pojawia się po najechaniu kursorem na pola w kolumnie „Rozmiar”, wyświetla teraz rozmiar zasobu w oryginalnej formie, bez kompresji;

      Chrome wersja 75

    • Pasek boczny debugera zapewnia osobne wyjście informacji o stanie punktów przerwania powiązanych z poszczególnymi częściami złożonych wyrażeń w wierszu (punkt przerwania w wierszu), na przykład tych ustawionych w łańcuchu wywołań metod;

      Chrome wersja 75

    • W panelach Inspekcji IndexedDB i Cache zaimplementowano wyświetlanie liczników całkowitej ilości zasobów w bazie danych lub pamięci podręcznej;
      Chrome wersja 75

  • Do eksperymentalnych wersji Canary dodany wsparcie
    dostęp do DNS przez HTTPS (DoH, DNS przez HTTPS), który można aktywować w chrome://flags#dns-over-https. DoH może być przydatne do zapobiegania wyciekom informacji o żądanych nazwach hostów przez serwery DNS dostawców, zwalczania ataków MITM i fałszowania ruchu DNS, przeciwstawiania się blokowaniu na poziomie DNS lub organizowania pracy w przypadku braku możliwości bezpośredniego kontaktu z serwerami DNS (np. na przykład podczas pracy przez pełnomocnika);

Oprócz innowacji i poprawek błędów, nowa wersja eliminuje 42 luki w zabezpieczeniach. Wiele luk w zabezpieczeniach zostało zidentyfikowanych w wyniku zautomatyzowanych narzędzi testujących AdresSanitizer, Odkażacz do pamięci, Integralność przepływu sterowania, LibFuzzer и AFL. Nie zidentyfikowano żadnych krytycznych problemów pozwalających na ominięcie wszystkich poziomów ochrony przeglądarki i wykonanie kodu w systemie poza środowiskiem piaskownicy. W ramach programu Vulnerability Bounty za obecną wersję Google wypłaciło 13 premii o wartości 9000 USD (jedna premia 5000 USD, dwie premie 1000 USD i cztery premie 500 USD). Wysokość 7 nagród nie została jeszcze ustalona.

Źródło: opennet.ru

Dodaj komentarz