Firma Google opublikowała wydanie przeglądarki internetowej Chrome 127. Jednocześnie dostępna jest stabilna wersja projektu open source Chromium, stanowiącego podstawę Chrome. Przeglądarka Chrome różni się od Chromium używaniem logo Google, systemem powiadamiania w przypadku awarii, modułami do odtwarzania zabezpieczonej treści wideo (DRM), automatycznym aktualizowaniem, stałym włączonym systemem izolacji Sandbox, dostarczaniem kluczy do Google API oraz przesyłaniem parametrów RLZ podczas wyszukiwania. Dla tych, którzy potrzebują więcej czasu na aktualizację, dostępna jest oddzielna gałąź Extended Stable, wspierana przez 8 tygodni. Następne wydanie Chrome 128 zaplanowane jest na 20 sierpnia.
Główne zmiany w Chrome 127:
- W trybie "incognito" domyślnie włączona jest funkcja "HTTPS-First", która automatycznie przekierowuje zapytania HTTP na HTTPS. Aby umożliwić współpracę z stronami, które nie wspierają HTTPS, wprowadzono cofnięcie do HTTP, jeśli po przekierowaniu nie uda się wykonać zapytania przez HTTPS lub wystąpią problemy z certyfikatami. Przy próbie otwarcia strony przez HTTP wyświetlane jest specjalne ostrzeżenie.
- W wbudowanym magazynie certyfikatów głównych (Chrome Root Store) postanowiono zaprzestać zaufania do jednostki certyfikującej Entrust z powodu licznych naruszeń wymagań wobec jednostek certyfikujących, takich jak niespełnianie terminów na reakcję na problematyczne certyfikaty, opóźnienia w unieważnianiu certyfikatów, niewłaściwe sporządzanie raportów o incydentach oraz niespełnienie zasad przy wydawaniu certyfikatów TLS certyfikatów na poziomie EV (Extended Validation), które wymagają potwierdzenia dokumentów dotyczących przynależności domeny oraz potwierdzenia właściciela zasobu. W związku z brakiem działań naprawczych w sprawie ujawnionych niedociągnięć, certyfikaty TLS wydane przez Entrust po 31 października 2024 roku będą postrzegane w Chrome jako niewiarygodne. Certyfikaty wydane przed 31 października będą nadal postrzegane jako normalne.
- Rozpoczął się proces stopniowego zakończenia wsparcia dla drugiej wersji manifestu Chrome, określającego możliwości i zasoby dostępne dla rozszerzeń napisanych z użyciem API WebExtensions. Wyłączenie rozszerzeń korzystających z drugiej wersji manifestu obecnie dotyczy tylko części użytkowników wersji testowych Chrome (nie wersji stabilnych). Całkowite zakończenie migracji na trzecią wersję manifestu planowane jest do czerwca 2025 roku.
- Po włączeniu rozszerzonej ochrony przeglądarki (Bezpieczne przeglądanie > Ochrona rozszerzona) zrealizowano wysyłanie do serwery Google dodatkowej telemetrii z informacjami o oglądanych stronach, jeśli na tych stronach używane są API do inicjowania wibracji (Vibration) lub pełnej kontroli nad myszą (PointerLock) i klawiaturą (Keyboard). Jeśli otwierana strona znajduje się na czarnej liście, użytkownik otrzymuje odpowiednie ostrzeżenie, a działanie zaznaczonych API jest wyłączane.
- Podsumowano działania dotyczące modernizacji weryfikacji pobieranych plików w trybie rozszerzonej ochrony przeglądarki (Bezpieczne przeglądanie > Ochrona rozszerzona), w ramach której włączono wysyłanie plików wykonywalnych i podejrzanych archiwów na serwery Google w celu sprawdzenia pod kątem wirusów i złośliwego oprogramowania. Aby zweryfikować bezpieczeństwo pobieranych zaszyfrowanych archiwów (.zip, .7z i .rar), przeglądarka poprosi użytkownika o hasło do odszyfrowania archiwum. Użytkownik może zrezygnować z weryfikacji lub wprowadzić hasło, po czym przeglądarka wyśle plik z hasłem do sprawdzenia na serwery Google. W standardowym (nie rozszerzonym) trybie Bezpiecznego przeglądania również zostanie wyświetlone żądanie hasła, ale zamiast wysyłania zawartości archiwum na serwery Google w celu sprawdzenia przesyłane będą jedynie metadane i hashe zawartych w archiwum plików. Wprowadzono bardziej zauważalne ostrzeżenia o pobieraniu niebezpiecznych plików, które są wyświetlane nie w dolnym panelu, lecz pod górnym panelem.

- Proponowana wstępna implementacja specyfikacji Private Network Access ogranicza możliwość ładowania zasobów z publicznie dostępnej witryny, które odwołują się do hostów w sieci wewnętrznej (127.0.0.0/8, 192.168.0.0/16, 10.0.0.0/8 itp.). Ładowanie takich zasobów jest teraz dozwolone tylko podczas otwierania strony w bezpiecznym kontekście (po HTTPS). W dalszej kolejności planowane jest całkowite ograniczenie możliwości niekontrolowanego dostępu do wewnętrznych podsieci intranetowych z stron otwieranych z publicznych witryn, ponieważ takie żądania są wykorzystywane przez cyberprzestępców do przeprowadzania ataków CSRF na routery, punkty dostępowe, drukarki, korporacyjne interfejsy webowe oraz inne urządzenia i usługi, które akceptują żądania tylko z lokalnej sieci. Eksperymenty z blokowaniem rozpoczęto już w 2022 roku w Chrome 98, ale z powodu wykrycia luk blokada została opóźniona.
- W trybie „Origin trials” wprowadzono eksperymentalne zablokowanie dostępu do IP 0.0.0.0, ponieważ ten adres IP może być wykorzystywany do obchodzenia blokady dostępu do IP 127.0.0.1 (localhost) na platformach Linux i macOS.
- W wersji na platformę Android uproszczono interfejs do powiązania z kontem Google i synchronizacji danych, takich jak zapisane hasła i zakładki. Synchronizacja jest teraz zintegrowana z logowaniem do konta i nie jest prezentowana jako osobna funkcjonalność w ustawieniach.
- W wersji na platformę Android zaktualizowano interfejs zarządzania hasłami. Użytkownicy, którzy połączyli się ze swoim kontem Google, ale nie aktywowali synchronizacji, mają możliwość zapisywania i korzystania z haseł powiązanych z kontem Google.
- Dodano ustawienie „Automatyczne włączanie trybu pełnoekranowego” (Automatic Fullscreen, chrome://settings/content/automaticFullScreen), umożliwiające stronom automatyczne przechodzenie w tryb pełnoekranowy za pomocą metody Element.requestFullscreen() bez potwierdzenia użytkownika, a także pozwalające wyświetlać dialogi przeglądarki bez wychodzenia z trybu pełnoekranowego. Domyślnie ustawienie jest wyłączone i można je aktywować w odniesieniu do poszczególnych stron i aplikacji webowych. W połączeniu z API zarządzania oknami i ustawieniami powiadomień (chrome://settings/content/popups) nowa funkcja upraszcza korzystanie z takich możliwości jak otwieranie wyskakującego okna na pełnym ekranie innego monitora, wyświetlanie pełnoekranowej zawartości na wszystkich ekranach lub na dodatkowym ekranie, przełączanie pełnoekranowej zawartości z jednego wyświetlacza na inny.

- Dodano właściwość CSS font-size-adjust, która pozwala na zmianę rozmiaru małych liter w stosunku do rozmiaru dużych liter, zdefiniowanego przy użyciu właściwości „font-size”, co może być przydatne na przykład do zachowania wcześniejszego poziomu czytelności tekstu w warunkach korzystania z zapasowej rodziny czcionek w przypadku niedostępności głównej. U czcionek o różnych współczynnikach proporcji wysokości małych liter do rozmiaru czcionki, rozmiar liter znacznie się różni, co na przykład może sprawić, że tekst będzie słabo czytelny po zastąpieniu czcionki Verdana czcionką Times.

- W API dla statycznego routingu ServiceWorkerów (Service Worker Static Routing), które pozwala określić, jak należy ładować określone zasoby oraz wyłączyć wywołanie ServiceWorkera dla zasobów, które można pobrać z pamięci podręcznej lub załadować bezpośrednio, dodano możliwość stosowania operacji logicznej „not” do inwersji warunków dopasowania zapytań.
- Zapewniono przesyłanie zdarzeń aktywacji, które są generowane podczas interakcji użytkownika z treścią w oknie otwartym w trybie „obraz w obrazie” (picture-in-picture), do okna nadrzędnego dla tego trybu. Zmiana ta pozwala na głównej stronie, z której otwarto okno „obraz w obrazie”, używać API Aktywacji Użytkownika (navigator.userActivation) do określenia interakcji użytkownika z danym oknem (na przykład można sprawdzić, czy użytkownik kliknął myszą w oknie „obraz w obrazie” czy strona została jedynie załadowana i pozostaje nietknięta).
- Wprowadzono ulepszenia w narzędziach dla webdeweloperów. Przy przeglądaniu arkuszy CSS dodano linki do odpowiednich pozycji w dokumencie, do których odnoszą się właściwości CSS zarządzające wyświetlaniem elementów, związanych z położeniem innych elementów (CSS Anchor Positioning). W przeglądaniu kodu HTML dodano linki wskazywane przez atrybut „popovertarget”. W panelu inspekcji aktywności sieciowej dodano nową wstępną konfigurację symulacji prędkości dostępu „Szybki 4G” (wstępna konfiguracja „Szybki 3G” została przemianowana na „Wolny 4G”, a „Wolny 3G” na „3G”). W panelu analizy wydajności podczas trasowania zapewniono wyświetlanie informacji o zdarzeniach wysyłania i odbierania wiadomości przez WebSocket.

Oprócz nowości i poprawek błędów w nowej wersji usunięto 24 podatności. Wiele z podatności zostało wykrytych w wyniku automatyzowanego testowania narzędziami AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer i AFL. 5 problemom nadano wysoki poziom zagrożenia. Nie wykryto krytycznych problemów, które pozwoliłyby na obejście wszystkich poziomów ochrony przeglądarki i wykonanie kodu w systemie poza środowiskiem sandbox. W ramach programu nagród za odkrywanie podatności firma Google przyznała 16 nagród o łącznej wartości 47,5 tys. USD (po jednej nagrodzie w wysokości 11000 USD, 5000 USD, 3000 USD i 500 USD, dwie nagrody po 8000 USD, trzy nagrody po 2000 USD). Wysokość 6 nagród nie została jeszcze określona.

Źródło: opennet.ru




