Chrome wersja 97

Google ujawniło wydanie przeglądarki internetowej Chrome 97. Równocześnie dostępna jest stabilna wersja darmowego projektu Chromium, będącego podstawą Chrome. Przeglądarkę Chrome wyróżnia zastosowanie logo Google, obecność systemu wysyłania powiadomień w przypadku awarii, modułów do odtwarzania treści wideo chronionych przed kopiowaniem (DRM), systemu automatycznej aktualizacji oraz transmisji podczas wyszukiwania RLZ parametry. Dla tych, którzy potrzebują więcej czasu na aktualizację, utrzymywana jest oddzielna gałąź Extended Stable, po której następuje 8 tygodni, co generuje aktualizację dla ostatniej wersji Chrome 96. Kolejna wersja Chrome 98 jest zaplanowana na 1 lutego.

Kluczowe zmiany w Chrome 97:

  • Dla niektórych użytkowników konfigurator wykorzystuje nowy interfejs do zarządzania danymi przechowywanymi po stronie przeglądarki („chrome://settings/content/all”). Kluczową różnicą nowego interfejsu jest skupienie się na ustawianiu uprawnień i jednoczesnym usuwaniu wszystkich plików Cookies na stronie, bez możliwości przeglądania szczegółowych informacji o poszczególnych plikach Cookies i selektywnego usuwania plików Cookies. Zdaniem Google dostęp do zarządzania indywidualnymi plikami cookie dla zwykłego użytkownika, który nie rozumie zawiłości tworzenia stron internetowych, może prowadzić do nieprzewidzianych naruszeń działania witryn w wyniku nieumyślnej zmiany indywidualnych ustawień, a także do przypadkowe wyłączenie mechanizmów ochrony prywatności aktywowanych przez pliki cookie. Tym, którzy muszą manipulować poszczególnymi plikami cookie, zaleca się skorzystanie z sekcji zarządzania pamięcią w narzędziach programisty stron internetowych (Applocation/Storage/Cookie).
    Chrome wersja 97
  • W bloku z informacjami o serwisie wyświetlany jest krótki opis serwisu (np. opis z Wikipedii), jeżeli w ustawieniach włączony jest tryb optymalizacji wyszukiwania i nawigacji (opcja „Ulepsz wyszukiwanie i przeglądanie”).
    Chrome wersja 97
  • Ulepszona obsługa automatycznego wypełniania pól w formularzach internetowych. Rekomendacje z opcjami autouzupełniania są teraz wyświetlane z lekkim przesunięciem i opatrzone ikonami informacyjnymi dla wygodniejszego podglądu i wizualnej identyfikacji powiązania z polem do wypełnienia. Na przykład ikona profilu wyjaśnia, że ​​sugerowane autouzupełnianie dotyczy pól związanych z adresem i danymi kontaktowymi.
    Chrome wersja 97
  • Zapewniono, że procedury obsługi profili użytkowników są usuwane z pamięci po zamknięciu powiązanych z nimi okien przeglądarki. Wcześniej profile pozostawały w pamięci i nadal wykonywały prace związane z synchronizacją i wykonywaniem działających w tle skryptów dodatków, co prowadziło do nieuzasadnionego marnowania zasobów w systemach korzystających z kilku profili jednocześnie (np. powiązanie z kontem Google). Ponadto zapewnione jest dokładniejsze czyszczenie danych pozostałych w trakcie pracy z profilem.
  • Ulepszona strona ustawień wyszukiwarki ("Ustawienia>Zarządzaj wyszukiwarkami"). Wyłączono automatyczną aktywację silników, o których informacja jest podawana podczas otwierania witryny za pomocą skryptu OpenSearch - nowe silniki do przetwarzania zapytań z paska adresu należy teraz aktywować ręcznie w ustawieniach (wcześniej uruchamiane automatycznie silniki będą nadal działać bez zmian ).
  • Od 17 stycznia katalog Chrome Web Store nie będzie już akceptował dodatków korzystających z drugiej wersji manifestu Chrome, ale twórcy wcześniej dodanych dodatków nadal będą mogli publikować aktualizacje.
  • Dodano eksperymentalną obsługę specyfikacji WebTransport, która definiuje protokół i towarzyszący mu interfejs API JavaScript do wysyłania i odbierania danych między przeglądarką a serwerem. Kanał komunikacyjny jest zorganizowany przez HTTP/3 przy użyciu protokołu QUIC jako transportu. Zamiast mechanizmu WebSockets można zastosować WebTransport, oferując dodatkowe funkcje, takie jak wielowątkowość, przepływy jednokierunkowe, dostarczanie poza kolejnością, niezawodne i zawodne tryby dostarczania. Ponadto WebTransport może być używany zamiast mechanizmu Server Push, który Google wycofał z Chrome.
  • Metody findLast i findLastIndex zostały dodane do obiektów JavaScript Array i TypedArrays, umożliwiając wyszukiwanie elementów z wynikiem w stosunku do końca tablicy. [1,2,3,4].findLast((el) => el % 2 === 0) // → 4 (ostatni parzysty element)
  • Zamknięte (bez atrybutu „open”) elementy HTML , można teraz przeszukiwać i łączyć, a także rozwijać automatycznie podczas korzystania z wyszukiwania stron i nawigacji po fragmentach (ScrollToTextFragment).
  • Ograniczenia zasad bezpieczeństwa treści (CSP) w nagłówkach odpowiedzi serwera mają teraz zastosowanie do dedykowanych procesów roboczych, które wcześniej były traktowane jako osobne dokumenty.
  • Dostarczane jest jawne żądanie pozwolenia na pobranie dowolnych zasobów podrzędnych z sieci wewnętrznej — przed uzyskaniem dostępu do sieci wewnętrznej lub hosta lokalnego żądanie CORS (Cross-Origin Resource Sharing) jest teraz wysyłane do serwera witryny głównej z nagłówkiem „Access-Control-Request-Private-Network: true”, wymagające potwierdzenia operacji poprzez zwrócenie nagłówka „Access-Control-Allow-Private-Network: true”.
  • Dodano właściwość CSS syntezy czcionek, aby kontrolować, czy przeglądarka może syntetyzować brakujące style czcionek (ukośne, pogrubione i małe), które nie należą do wybranej rodziny czcionek.
  • W przypadku transformacji CSS parametr „none” jest zaimplementowany w funkcji perspektywy(), która podczas animacji jest traktowana jako wartość nieskończona.
  • Nagłówek HTTP Permissions-Policy (Feature Policy), który służy do delegowania uprawnień i włączania zaawansowanych funkcji, obsługuje teraz wartość mapy klawiatury, która umożliwia korzystanie z interfejsu API klawiatury. Zaimplementowano metodę Keyboard.getLayoutMap(), która pozwala określić, który klawisz jest wciśnięty, biorąc pod uwagę różne układy klawiatury (np. naciśnięto klawisz w układzie rosyjskim lub angielskim).
  • Dodana została metoda HTMLScriptElement.supports(), która ujednolica definicje nowych cech dostępnych w elemencie „script” np. można zapoznać się z listą obsługiwanych wartości dla atrybutu „type”.
  • Proces normalizacji znaków nowej linii podczas przesyłania formularzy internetowych został dostosowany do silników przeglądarek Gecko i WebKit. Normalizacja znaków nowego wiersza i powrotu karetki (zastąpienie /r i /n przez \r\n) w Chrome jest teraz wykonywana na końcowym etapie, a nie na początku przetwarzania wysyłania formularza (tj. dane dodane przez użytkownika, a nie w postaci znormalizowanej).
  • Nazewnictwo nazw właściwości zostało ustandaryzowane dla API Client Hints, które jest rozwijane jako zamiennik nagłówka User-Agent i pozwala na selektywne zwracanie danych o określonych parametrach przeglądarki i systemu (wersja, platforma itp.) dopiero po żądanie serwera. Właściwości są teraz poprzedzone przedrostkiem „sec-ch-”, np. sec-ch-dpr, sec-ch-width, sec-ch-viewport-width, sec-ch-device-memory, sec-ch-rtt, sec-ch -downlink i sec-ch-ect.
  • Zastosowano drugą fazę wycofywania API WebSQL, do którego dostęp ze skryptów innych firm będzie teraz blokowany. Idąc dalej, planujemy całkowicie wycofać wsparcie dla WebSQL, niezależnie od kontekstu użycia. Silnik WebSQL jest oparty na kodzie SQLite i może zostać wykorzystany przez atakujących do wykorzystania luk w zabezpieczeniach SQLite.
  • Dla platformy Windows włączony jest zestaw z kontrolami integralności przepływu wykonywania (CFG, Control Flow Guard), blokujący próby podmiany kodu w procesie Chrome. Ponadto usługi sieciowe działające w oddzielnych procesach są teraz izolowane, co ogranicza możliwości kodu w tych procesach.
  • Chrome na Androida zawiera mechanizm dynamicznej aktualizacji dziennika wydanych i unieważnionych certyfikatów (Certificate Transparency), który wcześniej był włączony w opłatach dla systemów desktopowych.
  • Wprowadzono ulepszenia narzędzi dla twórców stron internetowych. Zaimplementowano eksperymentalną obsługę synchronizacji ustawień DevTools między różnymi urządzeniami. Dodany został nowy panel Rejestratora, za pomocą którego można nagrywać, odtwarzać i analizować działania użytkownika na stronie.
    Chrome wersja 97

    Podczas wyświetlania błędów w konsoli internetowej wyświetlane są numery kolumn powiązane z problemem, co jest przydatne do debugowania problemów w zmniejszonym kodzie JavaScript. Zaktualizowano listę urządzeń, które można symulować, aby ocenić renderowanie strony na urządzeniach mobilnych. W interfejsie edycji bloków HTML (Edytuj jako HTML) dodano podświetlanie składni oraz możliwość autouzupełniania wprowadzonych danych.

    Chrome wersja 97

Oprócz innowacji i poprawek błędów, w nowej wersji naprawiono 37 luk. Wiele luk zostało zidentyfikowanych w wyniku zautomatyzowanych narzędzi testujących AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer i AFL. Jedna z luk została zaktualizowana do poziomu krytycznego, który umożliwia ominięcie wszystkich poziomów ochrony przeglądarki i wykonanie kodu w systemie poza środowiskiem piaskownicy. Szczegóły dotyczące krytycznej luki (CVE-2022-0096) nie zostały jeszcze ujawnione, wiadomo jedynie, że jest ona związana z dostępem do zwolnionego już obszaru pamięci w kodzie do pracy z pamięcią wewnętrzną (API Storage).

W ramach programu Vulnerability Bounty za obecną wersję firma Google wypłaciła 24 nagrody o wartości 54 10000 USD (trzy nagrody o wartości 5000 4000 USD, dwie nagrody o wartości 3000 USD, jedna nagroda o wartości 1000 USD, trzy nagrody o wartości 14 USD i jedna nagroda o wartości XNUMX USD). Wysokość XNUMX nagród nie została jeszcze ustalona.

Źródło: opennet.ru

Dodaj komentarz