Wydanie Chrome 104

Firma Google zaprezentowała wydanie przeglądarki internetowej Chrome 104. Jednocześnie dostępna jest stabilna wersja wolnego projektu Chromium, który stanowi podstawę Chrome. Przeglądarka Chrome różni się od Chromium użyciem logo Google, systemem wysyłania powiadomień w przypadku awarii, modułami do odtwarzania zabezpieczonej treści wideo (DRM), automatycznym systemem aktualizacji, stałym włączonym mechanizmem izolacji Sandbox, dostarczaniem kluczy do Google API oraz przekazywaniem parametrów RLZ podczas wyszukiwania. Dla tych, którzy potrzebują więcej czasu na aktualizację, oddzielnie wspierana jest gałąź Extended Stable, która trwa 8 tygodni. Następne wydanie Chrome 105 zaplanowane jest na 30 sierpnia.

Główne zmiany w Chrome 104:

  • Wprowadzono limit czasu życia Cookie — wszystkie nowe lub zaktualizowane Cookie będą automatycznie usuwane po 400 dniach, nawet jeśli ustawiony przez atrybuty Expires i Max-Age czas wyginięcia przekracza 400 dni (dla takich Cookie czas życia zostanie skrócony do 400 dni). Cookie utworzone przed wprowadzeniem ograniczenia zachowają swój czas życia, nawet jeśli przekracza on 400 dni, ale będą ograniczone w przypadku aktualizacji. Zmiana odzwierciedla nowe wymagania określone w szkicu nowej specyfikacji.
  • Włączono blokadę odwołań z iframe do adresów URL odnoszących się do lokalnego systemu plików („filesystem://”).
  • W celu przyspieszenia ładowania strony dodano nową optymalizację, która umożliwia nawiązanie połączenia z docelowym hostem w momencie naciśnięcia linku, nie czekając na zwolnienie przycisku lub podniesienie palca z ekranu dotykowego.
  • Dodano ustawienia do zarządzania API „Topics & Interest Group”, promowanego w ramach inicjatywy Privacy Sandbox, które pozwala na określenie kategorii zainteresowań użytkownika i ich użycie zamiast śledzących Cookie do grupowania użytkowników o podobnych zainteresowaniach bez identyfikacji pojedynczych użytkowników. Ponadto dodano jednokrotne komunikaty informacyjne, które wyjaśniają użytkownikowi istotę technologii i proponują aktywację jej wsparcia w ustawieniach.
  • Zwiększono progi dla ograniczenia zagnieżdżonych wywołań timerów setTimeout i setInterval, uruchomionych z określeniem interwału mniejszego niż 4 ms („setTimeout(…, <4ms)”). Całkowity limit na takie wywołania zwiększono z 5 do 100, co pozwala agresywnie nie ograniczać pojedynczych wywołań, ale jednocześnie zapobiega nadużyciom, które mogłyby wpłynąć na wydajność przeglądarki.
  • Włączono wysyłanie do serwera głównej strony żądania potwierdzenia uprawnień CORS (Cross-Origin Resource Sharing) z nagłówkiem „Access-Control-Request-Private-Network: true”, w przypadku odwołania ze strony do subzasobu w wewnętrznej sieci (192.168.x.x, 10.x.x.x, 172.16-31.x.x) lub do localhost (127.x.x.x). Po potwierdzeniu operacji w odpowiedzi na to żądanie, serwer powinien zwrócić nagłówek „Access-Control-Allow-Private-Network: true”. W wersji Chrome 104 wynik potwierdzenia na razie nie wpływa na obsługę żądania — w przypadku braku potwierdzenia w konsoli webowej wyświetlane jest ostrzeżenie, ale samo żądanie subzasobu nie jest blokowane. Włączenie blokady w przypadku braku potwierdzenia serwera oczekiwane jest nie wcześniej niż w wydaniu Chrome 107. Aby włączyć blokadę w wcześniejszych wydaniach, 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.

  • Dodano mechanizm Region Capture, który umożliwia przycinanie niepotrzebnej zawartości z wideo generowanego na podstawie przechwytywania ekranu. Na przykład, za pomocą API getDisplayMedia aplikacja webowa może zorganizować transmisję wideo z zawartością zakładki, a Region Capture pozwala wyciąć część zawartości, w tym elementy sterujące wideokonferencją.
  • Dodano wsparcie dla nowej składni zapytań medialnych określonych w specyfikacji Media Queries Level 4, definiujących minimalny i maksymalny rozmiar widocznego obszaru (viewport). Nowa składnia pozwala na użycie zwykłych operatorów porównania matematycznego oraz operatorów logicznych, takich jak „not”, „or” i „and”. Na przykład, zamiast „@media (min-width: 400px) { … }” można teraz używać „@media (width >= 400px) { … }”.
  • W trybie Origin Trials (eksperymentalne funkcje wymagające osobnej aktywacji) dodano kilka nowych API. Origin Trial oznacza możliwość pracy z określonym API z aplikacji ładowanych z localhost lub 127.0.0.1, lub po zarejestrowaniu się i uzyskaniu specjalnego tokena, który jest ważny przez ograniczony czas dla konkretnej witryny.
    • Dodano właściwość CSS „focusgroup” w celu poprawy nawigacji między elementami za pomocą strzałek na klawiaturze.
    • W API Secure Payment Confirmation wprowadzono możliwość dezaktywacji przez użytkownika przechowywania parametrów kart kredytowych. Aby wyświetlić dialog umożliwiający rezygnację z zapisywania danych kart kredytowych, w konstruktorze PaymentRequest() przewidziano flagę „showOptOut: true”.
    • Dodano API Shared Element Transitions, które umożliwia płynne przejścia między różnymi widokami treści w aplikacjach internetowych typu single-page.
  • Stabilizowano wsparcie dla reguł spekulacyjnych (Speculation rules), które umożliwiają autorom stron przekazywanie przeglądarki informacji o najbardziej prawdopodobnych stronach, na które użytkownik może przejść. Przeglądarka wykorzystuje te informacje do prewencyjnego ładowania i renderowania zawartości stron.
  • Stabilizowano mechanizm pakowania subzasobów w pakiety w formacie Web Bundle, co zwiększa wydajność ładowania dużej ilości plików towarzyszących (style CSS, JavaScript, obrazy, iframe). W przeciwieństwie do pakietów w formacie Webpack, format Web Bundle ma następujące zalety: w pamięci podręcznej HTTP nie gromadzi się sam pakiet, lecz jego składniki; kompilacja i wykonanie JavaScript zaczynają się bez czekania na pełne załadowanie pakietu; dopuszcza się włączenie dodatkowych zasobów, takich jak CSS i obrazy, które w webpack musiałyby być kodowane w formie ciągów JavaScript.
  • Dodano właściwość CSS object-view-box, która umożliwia określenie części obrazu, która będzie wyświetlana w obszarze zamiast wskazanego elementu; może to być na przykład użyte do dodania obramowania lub cienia.
  • Dodano API Fullscreen Capability Delegation, które umożliwia jednemu obiektowi Window przekazanie drugiemu obiektowi Window prawa do wywołania requestFullscreen().
  • Dodano API Fullscreen Companion Window, które umożliwia umieszczenie pełnoekranowej zawartości i wyskakujących okien na innym ekranie po potwierdzeniu przez użytkownika.
  • W atrybucie CSS overflow-clip-margin dodano atrybut visual-box, określający, od którego miejsca należy rozpocząć przycinanie treści, która wyszła poza granice obszaru (może przyjmować wartości content-box, padding-box i border-box).
  • W API Async Clipboard dodano możliwość definiowania specjalistycznych formatów dla przesyłanych przez clipboard danych, innych niż tekst, obrazy i tekst z formatowaniem.
  • WebGL umożliwia wskazywanie przestrzeni kolorów dla bufora rysowania oraz konwersję podczas importu z tekstury.
  • Wsparcie dla platform OS X 10.11 i macOS 10.12 zostało zakończone.
  • Wsparcie dla API U2F (Cryptotoken), które wcześniej zostało oznaczone jako przestarzałe i domyślnie wyłączone, zostało zakończone. Zamiast API U2F wprowadzono API Web Authentication.
  • Wprowadzono ulepszenia w narzędziach dla programistów webowych. W debuggerze dodano możliwość ponownego uruchamiania kodu od początku funkcji po osiągnięciu punktu przerwania w jej wnętrzu. Dodano wsparcie dla tworzenia rozszerzeń dla panelu Recorder. Do panelu analizy wydajności dodano wsparcie dla wizualizacji znaczników wystawionych w aplikacji webowej przez wywołanie metody performance.measure(). Udoskonalone zostały sugestie przy autouzupełnianiu właściwości obiektów JavaScript. Przy autouzupełnianiu zmiennych CSS zapewniono podgląd wartości niezwiązanych z kolorami.
    Wydanie Chrome 104

Oprócz nowości i poprawek błędów w nowej wersji usunięto 27 podatności. Wiele z tych podatności zostało wykrytych w wyniku automatyzacji testów za pomocą narzędzi AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer i AFL. Nie wykryto krytycznych problemów, które umożliwiałyby obejście wszystkich warstw zabezpieczeń przeglądarki i wykonanie kodu w systemie poza środowiskiem sandbox. W ramach programu wypłat za znalezienie luk w zabezpieczeniach w bieżącej wersji firma Google przyznała 22 nagrody o łącznej wartości 84 tysięcy dolarów (jedna nagroda 15 000 dolarów, jedna nagroda 10 000 dolarów, jedna nagroda 8 000 dolarów, jedna nagroda 7 000 dolarów, cztery nagrody po 5 000 dolarów, jedna nagroda 4 000 dolarów, trzy nagrody po 3 000 dolarów, cztery nagrody po 2 000 dolarów i trzy nagrody po 1 000 dolarów). Wartość jednej nagrody jeszcze nie została 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