Wydano przeglądarkę internetową Firefox 132 oraz zaktualizowano starsze wersje z długoterminowym wsparciem — 115.17.0 i 128.4.0. W fazie beta testów jest już wersja Firefox 133, której wydanie zaplanowano na 26 listopada.
Najważniejsze nowości w Firefox 132:
- W trybie zaawansowanej ochrony (strict) przed śledzeniem (ETP, Enhanced Tracking Protection) oraz podczas przeglądania stron w trybie prywatnym zablokowano dostęp do wszystkich zewnętrznych plików cookie ustawionych podczas odwiedzania domen różniących się od domeny aktualnej strony. Na przykład, jeśli wcześniej zewnętrzny kod ze strony „C”, wbudowany w strony „A” i „B”, mógł przetwarzać wspólne pliki cookie tych stron, to od teraz pliki cookie ustawione przez stronę „C” będą niedostępne podczas ładowania kodu ze stron „A” i „B”. Zewnętrzne pliki cookie są stosowane do śledzenia aktywności użytkownika między stronami w kodzie sieci reklamowych, widgetów społecznościowych oraz systemów analizy webowej.
- Opcja „Kopiuj bez śledzenia stron” jest teraz wygaszana w menu kontekstowym, jeśli wybrany link nie zawiera parametrów śledzących ruch między stronami. Rozszerzono zakres wspieranych parametrów do śledzenia w URL, na przykład ustalono usuwanie parametrów stosowanych na stronach LinkedIn i Shopee.
- Zmieniła się logika obsługi ikonek favicon przy automatycznej zamianie protokołu HTTP na HTTPS. Jeśli ikona jest dostępna tylko przez HTTP, jej ładowanie będzie teraz zablokowane.
- W TLS 1.3 dodano wsparcie dla hybrydowego algorytmu wymiany kluczy „mlkem768x25519”, odpornego na ataki z użyciem komputerów kwantowych, który jest kombinacją X25519 ECDH i algorytmu ML-KEM (CRYSTALS-Kyber), niedawno ustandaryzowanego przez Narodowy Instytut Standardów i Technologii USA (NIST). ML-KEM wykorzystuje metody kryptografii oparte na rozwiązaniach problemów teorii krat, których czas rozwiązywania nie różni się na klasycznych i komputerach kwantowych.
- Zaimplementowano wsparcie dla rozszerzenia TLS do kompresji certyfikatów na etapie negocjacji połączeń (RFC 8879), co pozwala na przyspieszenie nawiązywania połączenia, ponieważ znaczna część ruchu podczas negocjacji połączenia dotyczy przesyłania danych certyfikatów.
- Dla API EME (Encrypted Media Extensions) wprowadzono moduł obsługujący technologię ochrony przed kopiowaniem PlayReady stworzoną przez firmę Microsoft, zapewniającą elementy DRM (Digital Rights Management) do oglądania zaszyfrowanego wideo w jakości 1080p oraz 4K Ultra HD na platformach streamingowych obsługujących PlayReady. Możliwość korzystania z PlayReady początkowo jest dostępna dla niewielkiego odsetka użytkowników, ale w przyszłości zostanie stopniowo zwiększona.
- W API WebRender dla filtrów SVG eBlend, feColorMatrix, feComponentTransfer, feComposite, feDropShadow, feFlood, feGaussianBlur, feMerge i feOffset wprowadzono przyspieszenie sprzętowe renderowania, co poprawiło wydajność podczas pracy z niektórymi typami zawartości graficznej.
- Dla platform Windows i macOS wprowadzono wsparcie dla przestrzeni kolorów Wide-gamut, która na razie ogranicza się tylko do profili P3 z 8-bitowym przedstawieniem koloru na kanał.
- W wersjach dla macOS rozszerzono narzędzia do odzyskiwania sesji (Firefox teraz automatycznie uruchamia się, jeśli sesja została przerwana z powodu restartu systemu) oraz dodano możliwość udostępniania ekranu.
- W API HTMLVideoElement dodano metodę requestVideoFrameCallback(), umożliwiającą organizację przetwarzania wideo klatka po klatce.
- W API MediaStreamTrack dodano metodę getCapabilities() do określenia zakresu dozwolonych wartości właściwości związanych z dźwiękiem i zawartością wideo (częstotliwość próbkowania, opóźnienia, liczba kanałów, proporcje, rozmiar, FPS itd.);
- W elementach <link>, <script> и <img> добавлен атрибут «fetchpriority», позволяющий выставить относительный приоритет загрузки того или иного ресурса, который будет учтён при планировании порядка загрузки ресурсов, загружаемых через HTTP/2 и HTTP/3. Для установки приоритетов в API HTMLLinkElement, HTMLScriptElement и HTMLImageElement также реализовано свойство fetchPriority, а в конструктор Request() добавлена поддержка параметра «options.priority». Среди допустимых значений приоритета: auto, low и high.
- W przeciwieństwie do innych przeglądarek, Firefox zrezygnował z obsługi technologii Server Push, zdefiniowanej w standardach HTTP/2 i HTTP/3, umożliwiającej serwerowi wysyłanie zasobów do klienta bez oczekiwania na ich jawne żądanie.
- Do narzędzi dla web deweloperów przywrócono możliwość debugowania zewnętrznych urządzeń podłączonych przez USB. W konsoli webowej wznowiono wsparcie dla rejestrowania działania Service Workerów, używając API console.log.
- W wersji na platformę Android w nowych instalacjach pasek adresu domyślnie przeniesiono na górną część ekranu. Aby przenieść pasek adresu w dół, można skorzystać z ustawienia „Customize > Toolbar”. W metatagach „viewport” w parametrze „interactive-widget” na domyślnie ustawiono teraz wartość „resizes-visual”, co powoduje, że pojawienie się klawiatury ekranowej prowadzi do zmiany rozmiaru widocznego obszaru (visual viewport), ale nie zmienia rozmiaru obszaru renderowania (layout viewport), co pozwala uniknąć zasobożernej przerysowania treści.
Oprócz nowości i poprawek błędów w Firefox 132 naprawiono 17 luk w zabezpieczeniach. Dwie luki oznaczone są jako krytyczne, ale jeszcze 7 luk, zebranych pod CVE-2024-10467, spowodowane jest problemami z pamięcią takimi jak przepełnienia buforów oraz dostęp do już zwolnionych obszarów pamięci. Potencjalnie te problemy mogą prowadzić do wykonania kodu przez złośliwego użytkownika przy otwieraniu specjalnie przygotowanych stron.
W wersji Firefox 133, która przeszła do etapu testów beta, pojawiła się możliwość przeglądania kart z innych urządzeń za pośrednictwem menu w prawym górnym rogu. W kompilacjach dla platformy Linux dodano wsparcie dla dodatkowych gestów na touchpadzie (na przykład dotknięcie dwoma palcami w celu wstrzymania bezwładnego przewijania). W wersji na Android na urządzeniach z dużymi ekranami domyślnie aktywowany jest tryb desktopowy.
Źródło: opennet.ru
