Firma Google opublikowała wersję przeglądarki internetowej Chrome 128. Jednocześnie dostępne jest stabilne wydanie otwartego projektu Chromium, będącego podstawą Chrome. Przeglądarka Chrome różni się od Chromium używaniem logo Google, systemem wysyłania powiadomień w przypadku awarii, modułami do odtwarzania chronionych treści wideo (DRM), systemem automatycznego aktualizowania, stałym włączeniem 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ę, oddzielnie wspierana jest gałąź Extended Stable, która jest utrzymywana przez 8 tygodni. Następne wydanie Chrome 129 zaplanowane jest na 17 września.
Główne zmiany w Chrome 128:
- Dodano możliwość przeszukiwania historii odwiedzin z uwzględnieniem treści otwieranych stron, a nie tylko adresów URL i tytułów. Na tym etapie funkcjonalność dostępna jest tylko dla anglojęzycznych użytkowników z USA. Funkcjonalność przeszukiwania treści została zrealizowana z wykorzystaniem działającego po stronie Google systemu uczenia maszynowego, do treningu i optymalizacji którego mogą być przesyłane odpowiednie dane do serwery Google (wysyłanie można wyłączyć w ustawieniach).
- Wykorzystano nowy parser formatu JSON, przepisany z C++ na język Rust, zapewniający wyższe bezpieczeństwo poprzez zmniejszenie prawdopodobieństwa wystąpienia błędów podczas pracy z pamięcią. Zauważono, że przejście na nowy parser może prowadzić do zaprzestania analizy niepoprawnie sformatowanych treści w formacie JSON, ale jednocześnie rozwiązuje problemy z niepoprawnym JSON, który wcześniej powodował awarie, a teraz skutkuje zwróceniem kodu błędu.
- Na stronie wyświetlanej przy otwieraniu nowej karty dodano możliwość umiejscowienia sekcji z danymi z Google Calendar, umożliwiającej śledzenie nadchodzących spotkań i wydarzeń.

- W Chrome dla Androida w interfejsie przełączania między kartami dodano nową sekcję, do której automatycznie przenoszone są nieaktywne karty otwarte dłużej niż 60 dni. Istnieje możliwość zamknięcia wszystkich starych kart na raz. Nowa funkcjonalność jest domyślnie włączona dla 1% użytkowników.

- W Chrome dla Android dodano wsparcie dla okresowych kontroli bezpieczeństwa (Safety Check), które sprawdzają problemy w przeglądarce i informują użytkownika o zagrożeniach wymagających uwagi. Ponadto zmieniono wygląd strony Safety Check w ustawieniach (chrome://settings/safetyCheck).

- W komponencie WebView w Chrome dla Android tymczasowo wyłączono wsparcie dla technologii CHIPS (Cookies Having Independent Partitioned State), rozwijanej w ramach inicjatywy Privacy Sandbox, która pozwala na izolację plików cookie. domeny pierwszego poziomu, wykorzystując atrybut „Partitioned”. Powodem wyłączenia były problemy z dostępem do sekcjonowanych plików cookie za pomocą API CookieManager udostępnianego przez platformę Android.
- W systemach zarządzanych centralnie administratorzy zyskali możliwość tworzenia własnych skrótów szybkiego wyszukiwania przez pasek adresu (można utworzyć skrót „@nazwa” do wyszukiwania na określonej stronie), a także zarządzania nieodczytywalnymi hasłami w wbudowanym menedżerze haseł (można na przykład skonfigurować usuwanie takich haseł, które pozostały po migracji na inne urządzenie za pomocą zewnętrznego oprogramowania).
- W wersji dla Chrome OS dodano wsparcie dla mechanizmu uruchamiania samodzielnych aplikacji webowych IWA (Isolated Web Apps), który rozszerza PWA (Progressive Web Apps) poprzez zastosowanie bardziej rygorystycznej izolacji aplikacji w przypadku kompromitacji serwera. Izolacja osiągana jest dzięki podpisywaniu pakietu aplikacji cyfrowym podpisem, który chroni przed wprowadzeniem zmian przez osoby trzecie, co pozwala na dystrybucję aplikacji przez zewnętrzne kanały bez utrzymywania własnego serwera.
- Właściwość CSS position-try-options została przemianowana na position-try-fallbacks, zgodnie z zaleceniem grupy roboczej CSSWG (CSS working group), ponieważ słowo „options” wprowadza w błąd i nie odzwierciedla rzeczywistej istoty właściwości.
- W elemencie HTML <ruby>, który pozwala na przypisanie do tekstu adnotacji wyświetlanej na górze, na dole lub obok tekstu, na przykład w celu wyjaśnienia wymowy lub znaczenia hieroglifów, pojawiła się możliwość synchronizacji łamania linii podczas przenoszenia długiego tekstu podstawowego i adnotacji, które nie mieszczą się w jednej linii i wcześniej były łamane osobno. Dodano także właściwość CSS ruby-align do zarządzania wyrównaniem tekstu podstawowego i adnotacji.
- Dodano metodę Promise.try(), która umożliwia przekształcenie wyniku wykonania dowolnego wywołania zwrotnego do Promise w celu uproszczenia obsługi błędów podczas wykonywania funkcji, zarówno asynchronicznych, jak i synchronizowanych.
- W interfejsie PointerEvent dodano nowy atrybut PointerEvent.deviceProperties, za pomocą którego można oddzielnie zidentyfikować różne cyfrowe pióra używane z tabletem graficznym (na przykład dla każdego urządzenia można przypisać swój kolor i kształt pióra).
- Zrealizowano zgodność implementacji właściwości CSS zoom, która umożliwia zmniejszanie lub powiększanie skalowania poszczególnych elementów.
- W trybie „Origin trials” zrealizowano eksperymentalne wsparcie dla API Digital Credentials, które pozwala stronom internetowym na żądanie niezbędnych do identyfikacji danych z aplikacji mobilnych-portfeli, korzystając z systemu IdentityCredential CredMan udostępnianego w Androidzie.
- W WebGPU dodano eksperymentalne wsparcie dla podgrup, co pozwala na zastosowanie zasady SIMD (Single instruction, multiple data) do paralelizacji obliczeń.
- Wprowadzono eksperymentalną możliwość blokowania dostępu do IP 0.0.0.0 w celu zapobiegania atakom na lokalne usługi.
- Wprowadzono ulepszenia w narzędziach dla twórców stron internetowych. W panelu inspekcji animacji dodano możliwość przechwytywania animacji i edytowania kluczowych klatek w czasie rzeczywistym. Zauważalnie rozszerzono możliwości panelu analizy wydajności. Dla większości krajów europejskich włączono możliwość wyświetlania w konsoli webowej objaśnień dotyczących błędów generowanych z użyciem dużego modelu językowego AI Gemini.

Oprócz innowacji i usunięcia błędów w nowej wersji wyeliminowano 38 luk w zabezpieczeniach. Wiele z tych luk zidentyfikowano dzięki zautomatyzowanym testom przy użyciu narzędzi takich jak AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer i AFL. 7 problemom przypisano wysoki poziom zagrożenia. Nie zidentyfikowano krytycznych problemów, które mogłyby umożliwić obejście wszystkich poziomów ochrony przeglądarki i wykonanie kodu w systemie poza środowiskiem sandbox. W ramach programu wypłat nagród za wykrywanie luk dla bieżącej wersji firma Google przyznała 20 nagród o łącznej wartości 95 tysięcy dolarów (jedna nagroda wynosiła 36 tysięcy dolarów, 10 tysięcy dolarów, 5 tysięcy dolarów i 2 tysiące dolarów, dwie nagrody po 11 tysięcy dolarów, 7 tysięcy dolarów i 500 dolarów, cztery nagrody po 1000 dolarów). Wysokość 5 nagród nie została jeszcze określona.

Źródło: opennet.ru




