Wydanie Chrome 102

Firma Google zaprezentowała wydanie przeglądarki internetowej Chrome 102. Równocześnie dostępna jest stabilna wersja wolnego projektu Chromium, który stanowi bazę dla Chrome. Przeglądarka Chrome różni się od Chromium używaniem logo Google, systemem wysyłania powiadomień w przypadku awarii, modułami do odtwarzania treści wideo zabezpieczonych przed kopiowaniem (DRM), automatycznym instalowaniem aktualizacji, stałym włączaniem 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 wersja Extended Stable, wspierana przez 8 tygodni. Kolejna wersja Chrome 103 zaplanowana jest na 21 czerwca.

Najważniejsze zmiany w Chrome 102:

  • Aby zablokować wykorzystanie luk bezpieczeństwa spowodowanych dostępem do już zwolnionych bloków pamięci (use-after-free), zamiast zwykłych wskaźników wprowadzono typ MiraclePtr (raw_ptr). MiraclePtr zapewnia opakowanie dla wskaźników, wykonujące dodatkowe kontrole dostępu do zwolnionych obszarów pamięci i awaryjnie kończące pracę w przypadku wykrycia takich dostępów. Wpływ nowej metody ochrony na wydajność i zużycie pamięci oceniany jest jako niewielki. Mechanizm MiraclePtr nie jest stosowany we wszystkich procesach, w szczególności nie jest używany w procesach renderujący, ale może znacznie zwiększyć bezpieczeństwo. Na przykład w obecnym wydaniu z 32 naprawionych luk, 12 było wywołanych problemami klasy use-after-free.
  • Zmieniono wygląd interfejsu z informacjami o pobieraniu. Zamiast dolnego paska z danymi o postępie pobierania, na pasku adresu dodano nowy wskaźnik, po kliknięciu na który wyświetlany jest postęp pobierania plików oraz historia z listą już pobranych plików. W przeciwieństwie do dolnego paska, przycisk jest stale widoczny na pasku i umożliwia szybki dostęp do historii pobrań. Nowy interfejs jest obecnie dostępny domyślnie tylko dla części użytkowników i zostanie rozpowszechniony wśród wszystkich w przypadku braku problemów. Aby przywrócić stary interfejs lub włączyć nowy, dostępne jest ustawienie „chrome://flags#download-bubble”.
    Wydanie Chrome 102
  • Podczas wyszukiwania obrazów przez menu kontekstowe („Szukaj obrazu za pomocą Google Lens” lub „Znajdź przez Google Lens”) wyniki są teraz wyświetlane nie na osobnej stronie, ale w bocznym panelu obok treści oryginalnej strony (w jednym oknie można jednocześnie zobaczyć zarówno treść strony, jak i wyniki wyszukiwania).
    Wydanie Chrome 102
  • W ustawieniach w sekcji „Prywatność i bezpieczeństwo” dodano sekcję „Przewodnik po prywatności” („Privacy Guide”), w której przedstawiono ogólny przegląd najważniejszych ustawień wpływających na prywatność z szczegółowymi wyjaśnieniami na temat wpływu każdego z tych ustawień. Na przykład w sekcji można określić politykę przesyłania danych do usług Google, zarządzać synchronizacją, obsługą plików cookie oraz przechowywaniem historii. Funkcja została zaproponowana części użytkowników, a do jej aktywacji można użyć ustawienia „chrome://flags#privacy-guide”.
    Wydanie Chrome 102
  • Zorganizowano historię wyszukiwania i przeglądanych stron. Przy próbie ponownego wyszukiwania w pasku adresu pojawia się podpowiedź „Wznów wyszukiwanie w historii” („Resume your journey”), pozwalająca kontynuować wyszukiwanie od miejsca, w którym zostało przerwane poprzednio.
    Wydanie Chrome 102
  • W katalogu Chrome Web Store zaproponowano stronę „Extensions Starter Kit” z wstępną selekcją polecanych dodatków.
  • W trybie testowym włączono wysyłanie do serwera głównej strony zapytania o potwierdzenie uprawnień CORS (Cross-Origin Resource Sharing) z nagłówkiem „Access-Control-Request-Private-Network: true”, w przypadku dostępu ze strony do zasobu w wewnętrznej sieci (192.168.x.x, 10.x.x.x, 172.16.x.x) lub do localhost (128.x.x.x). Po potwierdzeniu operacji w odpowiedzi na tę prośbę serwer powinien zwrócić nagłówek „Access-Control-Allow-Private-Network: true”. W wersji Chrome 102 wynik potwierdzenia nie ma jeszcze wpływu na przetwarzanie żądania — w przypadku braku potwierdzenia w konsoli webowej pojawia się ostrzeżenie, ale samo żądanie zasobu nie jest blokowane. Włączenie blokady w przypadku braku potwierdzenia od serwera oczekiwane jest nie wcześniej niż w wersji Chrome 105. Aby włączyć blokadę w wcześniejszych wersjach, można aktywować ustawienie „chrome://flags/#private-network-access-respect-preflight-results”.

    Potwierdzenie uprawnień serwerem wprowadzono, aby zwiększyć ochronę przed atakami związanymi z dostępem do zasobów w sieci lokalnej lub na komputerze użytkownika (localhost) z skryptów ładowanych przy otwieraniu strony. Takie zapytania są wykorzystywane przez przestępców do przeprowadzania ataków CSRF na routery, punkty dostępu, drukarki, korporacyjne interfejsy webowe oraz inne urządzenia i usługi, które przyjmują zapytania tylko z sieci lokalnej. Aby chronić przed takimi atakami, w przypadku zapytań do subzasobów w sieci wewnętrznej, przeglądarka będzie wysyłać wyraźne zapytanie o uprawnienia do ładowania tych subzasobów.

  • Przy otwieraniu linków w trybie incognito z menu kontekstowego automatycznie usuwane są z adresu URL niektóre parametry wpływające na prywatność.
  • Zmodyfikowano strategię dostarczania aktualizacji dla Windows i Android. Aby lepiej porównać zachowanie nowej i starej wersji do pobrania, teraz generowane są różne kompilacje nowej wersji.
  • Zredukowano niestabilności technologii segmentacji sieci w celu ochrony przed metodami śledzenia ruchu użytkownika między stronami, które opierają się na przechowywaniu identyfikatorów w obszarach, które nie są przeznaczone do trwałego przechowywania informacji ("Supercookies"). Ponieważ zasoby w pamięci podręcznej są przechowywane w wspólnej przestrzeni nazw, niezależnie od pierwotnej domeny, jedna strona może wykryć ładowanie zasobów z innej strony poprzez sprawdzenie, czy ten zasób znajduje się w pamięci podręcznej. Ochrona opiera się na zastosowaniu segmentacji sieci (Network Partitioning), której istotą jest dodanie do wspólnie używanych pamięci podręcznych dodatkowej więzi rekordów do domeny, z którego otwarta jest strona główna, co ogranicza zasięg pamięci podręcznej dla skryptów śledzących ruchy tylko do bieżącej strony (skrypt z iframe nie będzie mógł sprawdzić, czy zasób był ładowany z innej strony). Podział stanu obejmuje połączenia sieciowe (HTTP/1, HTTP/2, HTTP/3, websocket), pamięć podręczną DNS, dane ALPN/HTTP2, TLS/HTTP3, konfigurację, pobrania i informacje w nagłówku Expect-CT.
  • Dla instalowanych odizolowanych aplikacji internetowych (PWA, Progressive Web App) dostępna jest możliwość zmiany wyglądu obszaru nagłówka okna za pomocą komponentów Window Controls Overlay, które rozszerzają obszar ekranu aplikacji internetowej na całe okno. Aplikacja internetowa może zarządzać renderingiem i obsługą wejścia w całym oknie, z wyjątkiem nałożonego bloku z domyślnymi przyciskami zarządzania oknem (zamknij, minimalizuj, maksymalizuj), aby nadać aplikacji internetowej formę zwykłej aplikacji desktopowej.
    Wydanie Chrome 102
  • W systemie automatycznego uzupełniania formularzy dodano wsparcie dla generowania wirtualnych numerów kart kredytowych w polach z danymi płatności za towary w sklepach internetowych. Użycie wirtualnej karty, której numer jest generowany dla każdej płatności, pozwala nie przekazywać danych rzeczywistej karty kredytowej, ale wymaga zapewnienia niezbędnej usługi przez bank. Obecnie funkcja może być wykorzystywana jedynie przez klientów niektórych banków w USA. Do zarządzania włączeniem funkcji zaproponowano ustawienie „chrome://flags/#autofill-enable-virtual-card”.
  • Mechanizm „Capture Handle” jest domyślnie aktywowany, co pozwala na przekazywanie informacji do aplikacji zajmujących się przechwytywaniem wideo. API umożliwia organizację interakcji pomiędzy aplikacjami, których zawartość jest nagrywana, oraz aplikacjami, które prowadzą nagranie. Na przykład aplikacja do wideokonferencji, która przechwytuje wideo do transmisji prezentacji, może uzyskać informacje o elementach sterujących prezentacją i wyświetlić je w oknie z wideo.
  • Domyślnie włączono wsparcie dla reguł spekulatywnych (Speculation rules), które oferują elastyczną składnię do określania możliwości uprzedniego ładowania danych powiązanych z linkiem, realizowanego na etapie przed przejściem użytkownika do linku.
  • Został znormalizowany mechanizm pakowania zasobów w pakiety w formacie Web Bundle, umożliwiający zwiększenie efektywności ładowania dużej liczby powiązanych plików (style CSS, JavaScript, obrazy, iframe). W przeciwieństwie do pakietów w formacie Webpack, format Web Bundle posiada następujące zalety: w pamięci podręcznej HTTP osadza się nie sam pakiet, ale jego składniki; kompilacja i wykonanie JavaScriptu zaczyna się nie czekając na pełne załadowanie pakietu; dopuszcza się dołączenie dodatkowych zasobów, takich jak CSS i obrazy, które w webpacku musiały być kodowane w postaci łańcuchów JavaScript.
  • Została wprowadzona możliwość definiowania aplikacji PWA jako obsługującej określone typy MIME i rozszerzenia plików. Po określeniu powiązania za pomocą pola file_handlers w manifeście, aplikacja otrzyma specjalne zdarzenie, gdy użytkownik spróbuje otworzyć plik powiązany z aplikacją.
  • Dodano atrybut inert, umożliwiający oznaczenie części drzewa DOM jako „nieaktywną”. Dla węzłów DOM w tym stanie wyłączane są obsługi zaznaczania tekstu i najeżdżania wskaźnikiem, tzn. właściwości CSS pointer-events i user-select zawsze mają wartość ‘none’. Jeśli węzeł pozwalał na edytowanie, to w trybie inert staje się nieedytowalny.
  • Dodano API Navigation, pozwalające aplikacjom webowym przechwytywać operacje nawigacyjne w oknie, inicjować przejścia i analizować historię działań z aplikacją. API oferuje alternatywę dla właściwości window.history i window.location, zoptymalizowaną dla jednolitych aplikacji webowych.
  • Dla atrybutu „hidden” zaproponowano nowy znacznik „until-found”, który sprawia, że element jest dostępny do wyszukiwania na stronie i przewijania przez maskę tekstu. Na przykład, można dodać na stronę ukrywany tekst, którego zawartość będzie dostępna przy lokalnym wyszukiwaniu.
  • W API WebHID, przeznaczonym do niskopoziomowego dostępu do urządzeń HID (Human Interface Device, klawiatury, myszy, kontrolery gier, touchpady) i organizacji pracy bez specyficznych sterowników w systemie, do obiektu requestDevice() dodano właściwość exclusionFilters, pozwalającą wykluczyć określone urządzenia przy wyświetlaniu przez przeglądarkę listy dostępnych urządzeń. Na przykład, można wykluczyć identyfikatory urządzeń, w których występują znane problemy.
  • Wyświetlanie formularza płatności za pomocą PaymentRequest.show() jest zabronione bez wyraźnej akcji użytkownika, na przykład kliknięcia na elemencie powiązanym z obsługą zdarzeń.
  • Wsparcie dla alternatywnej implementacji protokołu SDP (Session Description Protocol), używanego do ustanawiania sesji w WebRTC, zostało zakończone. W Chrome proponowano dwie wersje SDP – ujednoliconą z innymi przeglądarkami i specyficzną dla Chrome. Od teraz pozostawiono tylko przenośną wersję.
  • Wprowadzono ulepszenia w narzędziach dla programistów webowych. W panelu Styles dodano przyciski do symulacji zastosowania ciemnego i jasnego motywu. Wzmocniono ochronę zakładki Preview w trybie inspekcji sieci (włączono stosowanie Content Security Policy). W debuggerze zrealizowano możliwość zakończenia wykonywania skryptu do ponownego załadowania punktów przerwania. Proponowana jest wstępna implementacja nowego panelu „Performance insights”, który umożliwia analizę wydajności wykonywania określonych operacji na stronie.
    Wydanie Chrome 102

Oprócz nowości i poprawek błędów w nowej wersji usunięto 32 podatności. Wiele z tych podatności zostało ujawnionych w wyniku automatyzowanego testowania narzędziami AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer i AFL. Jednej z problemów (CVE-2022-1853) nadano krytyczny poziom niebezpieczeństwa, co sugeruje możliwość obejścia wszystkich poziomów ochrony przeglądarki i wykonania kodu w systemie poza środowiskiem sandbox. Szczegóły dotyczące tej podatności na razie nie są ujawniane, wiadomo tylko, że została spowodowana odwołaniem do zwolnionego bloku pamięci (use-after-free) w implementacji API Indexed DB.

W ramach programu nagradzania za wykrywanie podatności w bieżącej wersji firma Google wypłaciła 24 nagrody o łącznej wartości 65600 dolarów amerykańskich (jedna nagroda 10000 dolarów, jedna nagroda 7500 dolarów, dwie nagrody 7000 dolarów, trzy nagrody 5000 dolarów, cztery nagrody 3000 dolarów, dwie nagrody 2000 dolarów, dwie nagrody 1000 dolarów i dwie nagrody 500 dolarów). Wartość 7 nagród nie została jeszcze określona.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster