Google opublikowało wersję przeglądarki internetowej Chrome 119. Jednocześnie dostępna jest stabilna wersja darmowego projektu Chromium, na którym opiera się Chrome. Przeglądarka Chrome różni się od Chromium wykorzystaniem logo Google, systemem powiadomień o awarii, modułami do odtwarzania treści wideo chronionych przed kopiowaniem (DRM), automatycznym systemem instalacji aktualizacji, stałym włączeniem izolacji Sandbox, dostarczaniem kluczy do API Google oraz przesyłaniem parametrów RLZ podczas wyszukiwania. Dla użytkowników potrzebujących więcej czasu na aktualizację, dostępna jest oddzielnie obsługiwana gałąź Extended Stable, wspierana przez 8 tygodni. Kolejna wersja Chrome 120 planowana jest na 5 grudnia.
Kluczowe zmiany w Chrome 119:
- Skrócono cykl wydań, skracając czas między utworzeniem nowej gałęzi a rozpoczęciem testów beta — wersja beta powstaje teraz dwa dni po utworzeniu gałęzi, zamiast ośmiu. Ustabilizowanie wersji beta nadal zajmuje 8 tygodnie. W ten sposób cykl przygotowywania nowych wydań skrócił się o tydzień.
- Dodano możliwość zapisywania grup kart. Użytkownik może teraz zapisać grupę i zamknąć znajdujące się w niej karty, aby nie zajmowały zasobów. Później, w razie potrzeby, karty z zapisanej grupy można przywrócić, a także otworzyć na innych urządzeniach uczestniczących w synchronizacji kart. Funkcja ta jest dostępna dla niektórych użytkowników; w celu wymuszenia aktywacji przewidziano ustawienie „chrome://flags/#tab-groups-save”.
- W interfejsie zmieniono sformułowania dotyczące operacji i ustawień związanych z usuwaniem i utratą danych. Zamiast terminu „czyszczenie” (Clear) w tego typu operacjach używa się teraz słowa „usuwanie” (Delete), ponieważ słowo „czyszczenie” nie było przez niektórych użytkowników postrzegane jako oznaka nieodwracalnej utraty danych.
- Autouzupełnianie adresów URL uwzględnia teraz wszystkie słowa kluczowe użyte wcześniej do wyszukiwania witryny, a nie tylko słowa, które pasują do początku adresu. Na przykład, autouzupełnianie adresu „https://www.google.com/travel/flights” będzie działać nie tylko po wpisaniu słowa „google”, ale także „flights”.

- Wprowadzono automatyczną korektę literówek podczas wpisywania adresu strony internetowej, a trafne sugestie są wyświetlane z uwzględnieniem stron, które użytkownik wcześniej odwiedził. Na przykład po wpisaniu „youtube” pojawi się sugestia otwarcia YouTube.com.

- Dostępna jest możliwość wyszukiwania sekcji zakładek za pomocą paska adresu. Na przykład, możesz dodać nazwę sekcji zakładek podczas wpisywania, a Chrome zasugeruje linki z tej sekcji, które pasują do wpisanego słowa kluczowego. Na przykład, po wpisaniu „wycieczki 2023 Nowy”, Chrome zasugeruje linki z sekcji zakładek „wycieczki 2023” związane z Nowym Jorkiem.

- Wprowadzono funkcję wyświetlania rekomendacji popularnych witryn, nawet jeśli użytkownik ich wcześniej nie odwiedził lub popełnił błąd podczas wpisywania adresu URL. Na przykład, gdy użytkownik, postępując zgodnie z czyjąś rekomendacją, otworzy Google Earth, zacznie wpisywać „googleear”, nie znając dokładnego adresu, przeglądarka zaproponuje przejście na stronę earth.google.com.

- W przeglądarce Chrome na komputerach stacjonarnych poprawiono czytelność paska adresu i zwiększono responsywność interfejsu. Wyniki są teraz widoczne od razu po rozpoczęciu pisania w pasku adresu.
- Zgodnie ze zmianą w specyfikacji interfejsu API Fetch nagłówek HTTP Authorization jest teraz usuwany podczas przekierowywania do innej domeny (cross-origin).
- Do ustawień powiadomień i lokalizacji dodano opcję włączenia usługi sugestii uprawnień. Dostępne są następujące tryby:
- zawsze pokazuj prośby o pozwolenie na powiadomienia i dostęp do lokalizacji;
- automatyczne ignorowanie próśb o uprawnienia dotyczące spamu za pomocą mechanizmu usługi Permission Suggestions Service;
- zawsze ignoruj wszystkie prośby o powiadomienie;
- Zawsze blokuj wszystkie prośby o zezwolenie na wyświetlanie powiadomień i dostęp do lokalizacji.
- W zespołach dla platformy Android Po włączeniu standardowej ochrony przeglądarki (Bezpieczne przeglądanie > Ochrona standardowa) w czasie rzeczywistym przeprowadzana jest kontrola bezpieczeństwa otwartych adresów URL na podstawie transferu do serwery Częściowe skróty Google z adresów URL otwieranych przez użytkownika. Aby zapobiec dopasowywaniu Adresy IP Dane użytkownika i hasha są przesyłane przez pośredniczący serwer proxy. Wcześniej sprawdzanie odbywało się poprzez pobranie lokalnej kopii listy niebezpiecznych adresów URL do systemu użytkownika. Nowy schemat pozwala na szybsze blokowanie złośliwych adresów URL. W przypadku systemów stacjonarnych podobny tryb był dostępny w poprzedniej wersji.
- Zmiana sposobu ucieczki znaków niealfanumerycznych w nazwie hosta podczas wywoływania funkcji URL została dostosowana do zaktualizowanej specyfikacji. Na przykład, wywołanie funkcji „URL(«http://exa(mple.com;»)” wcześniej zwracało „http://exa%28mple.com/”, ale teraz spowoduje błąd „Nieprawidłowy adres URL”.

- Wszystkie wcześniej zapisane pliki cookie podlegają ograniczeniu czasowemu, podobnemu do tego stosowanego od wersji Chrome 104 dla nowych i zaktualizowanych plików cookie. Po opublikowaniu wersji Chrome 400 okres ważności istniejących plików cookie zostanie skrócony do 119 dni.
- CSS wprowadza nowe pseudoklasy: „:user-valid” i „:user-invalid”, które reprezentują elementy formularza, których wartości przeszły lub nie przeszły walidacji. W przeciwieństwie do „:valid” i „:invalid”, nowe pseudoklasy są aktywowane dopiero po interakcji użytkownika z elementem formularza.
- Podczas ustawiania kolorów w CSS możliwe jest określenie wartości obliczanych względem innych parametrów koloru. Na przykład, określenie „oklab(from magenta calc(l * 0.8) ab)” spowoduje wygenerowanie koloru o 80% jaśniejszego od magenty.
- Właściwość CSS clip-path, która umożliwia ograniczenie widoczności elementu do określonego obszaru, została zaktualizowana w celu obsługi wartości Aby określić dowolny obszar do przycięcia. Dostępna jest również możliwość użycia funkcji xywh() i rect() w celu uproszczenia określania obszarów prostokątnych lub zaokrąglonych.
- Obsługa interfejsu API WebSQL została wyłączona i zamiast niej zaleca się korzystanie z interfejsów API Web Storage i Indexed Database. Obsługa WebSQL oparta jest na kodzie biblioteki SQLite. Interfejs API WebSQL nie był obsługiwany w innych przeglądarkach, był powiązany z zewnętrznym interfejsem API biblioteki i zwiększał ryzyko wystąpienia luk w zabezpieczeniach (WebSQL mógł zostać wykorzystany przez atakujących do wykorzystania luk w zabezpieczeniach SQLite). Aby przywrócić obsługę WebSQL dla użytkowników korporacyjnych, pozostawiono zasadę WebSQLAccess, która zostanie usunięta w wersji Chrome 123.
- Tymczasowo usunięto API HTML Sanitizer, które umożliwia wycinanie z treści elementów wpływających na wyświetlanie i wykonywanie danych wyjściowych za pomocą metody setHTML(). API zostało zaprojektowane w celu wycinania tagów HTML, które mogą być wykorzystywane do przeprowadzania ataków XSS. Powodem usunięcia jest niekompletność specyfikacji, która uległa znacznej zmianie od czasu dodania Sanitizera do Chrome. Po ukończeniu specyfikacji API zostanie zwrócone.
- Usunięto niestandardowy atrybut shadowRoot, który umożliwia elementom natywnym dostęp do własnego roota w Shadow DOM, niezależnie od stanu. Zamiast shadowRoot, w przeglądarce Chrome 111 zaproponowano atrybut shadowRootMode, który stał się standardem internetowym.
- Ulepszona implementacja elementu HTML „ „, który przypomina „iframe” i umożliwia również osadzanie treści zewnętrznych na stronie. Różnice sprowadzają się do ograniczenia interakcji osadzonej treści z treścią strony na poziomie DOM i atrybutów. Na przykład strona news.example, która ma blok reklamowy załadowany z shoes.example osadzonego za pomocą fencedframe, nie może uzyskać dostępu do danych shoes.example, a w konsekwencji kod z shoes.example nie może uzyskać danych powiązanych z news.example. Nowa wersja dodaje obsługę makr zastępujących rozmiar bloku reklamowego, które pojawiły się w interfejsie API Protected Audience, na przykład „https://ad.com?width={/%AD_WIDTH%}&height={/%AD_HEIGHT%}”.
- Metoda getDisplayMedia() ma parametr monitorTypeSurfaces, który można wykorzystać w celu uniemożliwienia udostępniania całego ekranu.
- Do metody window.open() dodano eksperymentalny (pierwotny parametr próbny) parametr fullscreen, umożliwiający natychmiastowe otwarcie okna w trybie pełnoekranowym.
- Dodano flagę „bitrateMode” do interfejsu API AudioEncoderConfig, umożliwiającą wybór między stałą i zmienną szybkością transmisji bitów.
- TLS zawiera implementację mechanizmu kapsułkowania klucza (KEM) wykorzystującą hybrydowy algorytm X25519Kyber768, który jest odporny na ataki siłowe na komputerach kwantowych. Klucze sesji używane do szyfrowania danych w połączeniach TLS można teraz tworzyć, łącząc mechanizm wymiany kluczy X25519, oparty na krzywych eliptycznych i obecnie stosowany w TLS, z algorytmem Kyber-768, który wykorzystuje metody kryptograficzne oparte na rozwiązywaniu problemów kratowych, których czas rozwiązania jest taki sam na komputerach konwencjonalnych i kwantowych.
- Obsługa rozszerzenia WasmGC jest domyślnie włączona, co ułatwia przenoszenie programów napisanych w językach z odśmiecaniem pamięci (Kotlin, PHP, Java itp.) do WebAssembly. WasmGC dodaje nowe typy struktur i tablic, które mogą korzystać z nieliniowej alokacji pamięci.
- Wprowadzono ulepszenia w narzędziach dla programistów stron internetowych. Dodano możliwość edycji reguł CSS „@property” i wyświetlania ostrzeżeń w przypadku ich nieprawidłowego zdefiniowania. Zaktualizowano listę emulowanych urządzeń (na przykład: iPhone 14 i Pixel 7). W konsoli internetowej zaimplementowano funkcję automatycznego uzupełniania pól prywatnych. Zapewniono formatowanie danych JSON w blokach.

Oprócz innowacji i poprawek błędów, nowa wersja eliminuje 15 luk w zabezpieczeniach. Wiele z nich zostało zidentyfikowanych w wyniku automatycznych testów z użyciem narzędzi AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer i AFL. Nie zidentyfikowano żadnych krytycznych problemów, które pozwoliłyby na ominięcie wszystkich poziomów zabezpieczeń przeglądarki i wykonanie kodu w systemie poza środowiskiem sandbox. W ramach programu nagród pieniężnych za wykrywanie luk w zabezpieczeniach bieżącej wersji, Google wypłaciło 13 nagród o łącznej wartości 40.5 tys. dolarów (jedna nagroda w wysokości 16000 11000 dolarów, 2000 500 dolarów, 3000 dolarów i 1000 dolarów, trzy nagrody w wysokości 4 dolarów i dwie nagrody w wysokości XNUMX dolarów). Wysokość czterech nagród nie została jeszcze ustalona.
Źródło: opennet.ru






