Przeglądarka internetowa Firefox 109 została wydana. Utworzono również aktualizację gałęzi wsparcia długoterminowego – 102.7.0. Gałąź Firefox 110 wkrótce przejdzie do fazy testów beta, której wydanie planowane jest na 14 lutego.
Kluczowe innowacje w Firefoksie 109:
- Domyślnie włączona jest obsługa wersji 3 manifestu Chrome, która definiuje możliwości i zasoby dostępne dla dodatków napisanych za pomocą interfejsu API WebExtensions. Obsługa wersji 2 manifestu będzie utrzymana w dającej się przewidzieć przyszłości. Ponieważ wersja 3 manifestu była przedmiotem krytyki i doprowadzi do zakłóceń w działaniu niektórych dodatków blokujących niechcianą zawartość i zapewniających bezpieczeństwo, Mozilla odeszła od zapewniania pełnej zgodności z manifestem w Firefoksie i zaimplementowała niektóre funkcje w inny sposób. Na przykład, obsługa starego trybu blokowania interfejsu API webRequest nie została wycofana, a w Chrome została zastąpiona nowym, deklaratywnym interfejsem API filtrowania treści. Obsługa modelu granularnego żądania uprawnień również została zaimplementowana nieco inaczej, zgodnie z którym dodatek nie może być aktywowany dla wszystkich stron jednocześnie (uprawnienie „all_urls” zostało usunięte). W Firefoksie ostateczna decyzja o udzieleniu dostępu należy do użytkownika, który może selektywnie decydować, które dodatki mają udzielić dostępu do jego danych na danej stronie. Aby zarządzać uprawnieniami, do interfejsu dodano przycisk „Unified Extensions”, za pomocą którego użytkownik może udzielać i odbierać dostęp dodatkowi do dowolnej witryny. Zarządzanie uprawnieniami dotyczy tylko dodatków opartych na trzeciej wersji manifestu; w przypadku dodatków opartych na drugiej wersji manifestu szczegółowa kontrola dostępu do witryn nie jest realizowana.

- Na stronie Firefox View poprawiono wygląd pustych sekcji, które pokazują ostatnio zamknięte karty i karty otwarte na innych urządzeniach.
- Lista ostatnio zamkniętych kart wyświetlana na stronie Widok przeglądarki Firefox zawiera teraz przyciski umożliwiające usuwanie pojedynczych linków z listy.

- Dodano możliwość wyświetlania wpisanego zapytania wyszukiwania na pasku adresu, zamiast wyświetlania adresu URL wyszukiwarki (czyli klucze są wyświetlane na pasku adresu nie tylko podczas wprowadzania tekstu, ale także po uzyskaniu dostępu do wyszukiwarki i wyświetleniu wyników wyszukiwania powiązanych z wprowadzonymi kluczami). Funkcja ta jest obecnie domyślnie wyłączona i wymaga ustawienia opcji „browser.urlbar.showSearchTerms.featureGate” w about:config, aby ją aktywować.

- Okno dialogowe wyboru daty dla pola z typami „data” i „data/godzina” jest dostosowany do sterowania klawiaturą, co pozwala na poprawną obsługę czytników ekranu i korzystanie ze skrótów klawiaturowych do nawigacji po kalendarzu.
- Zakończono eksperyment polegający na wykorzystaniu wbudowanego dodatku Colorways do zmiany wyglądu przeglądarki (dostępna była kolekcja motywów kolorystycznych dla obszaru treści, paneli oraz paska przełączania kart). Dostęp do wcześniej zapisanych motywów kolorystycznych można uzyskać na stronie Dodatki i motywy.
- W systemach z GTK wprowadzono możliwość jednoczesnego przenoszenia kilku plików do menedżera plików. Poprawiono przenoszenie obrazów z jednej karty do drugiej.
- W systemie automatycznego klikania banerów, które proszą o pozwolenie na używanie plików cookie na stronach (cookiebanners.bannerClicking.enabled i cookiebanners.service.mode w about:config) wprowadzono możliwość dodawania stron do listy wyjątków, w przypadku których automatyczne klikanie nie jest stosowane.
- Domyślnie ustawienie network.ssl_tokens_cache_use_only_once jest włączone, aby zapobiec ponownemu używaniu biletów sesji w protokole TLS.
- Włączono ustawienie network.cache.shutdown_purge_in_background_task, co rozwiązuje problem z czystym kończeniem operacji wejścia/wyjścia plików podczas wyłączania systemu.
- Dodano element („Przypnij do paska narzędzi”) do menu kontekstowego dodatku, który umożliwia przypięcie przycisku dodatku do paska narzędzi.
- Dodano możliwość wykorzystania przeglądarki Firefox jako przeglądarki dokumentów, wybieranej w systemie za pomocą menu kontekstowego „Otwórz za pomocą”.
- Informacje o częstotliwości odświeżania ekranu zostały dodane na stronie about:support.
- Dodano ustawienia ui.font.menu, ui.font.icon, ui.font.caption, ui.font.status-bar, ui.font.message-box itp. w celu zastąpienia czcionek systemowych.
- Obsługa zdarzenia scrollend, które jest generowane, gdy użytkownik przestaje przewijać (gdy pozycja przestaje się zmieniać), jest domyślnie włączona w obiektach Element i Document.
- Umożliwia partycjonowanie dostępu za pośrednictwem interfejsu API magazynu podczas przetwarzania treści stron trzecich, niezależnie od interfejsu API dostępu do magazynu.
- Element range obsługuje teraz atrybut list, który przekazuje identyfikator elementu. z listą predefiniowanych wartości oferowanych do wprowadzenia.
- Do właściwości CSS content-visibility dodano wartość „auto”, która służy do unikania niepotrzebnego renderowania obszarów poza widocznym obszarem. Po ustawieniu tej opcji przeglądarka ustala widoczność na podstawie bliskości elementu do granicy widocznego obszaru.
- W typie CSS , który definiuje domyślne wartości kolorów dla różnych komponentów strony, dodano obsługę wartości Mark, MarkText i ButtonBorder.
- Usługa Web Auth obsługuje teraz uwierzytelnianie za pomocą protokołu CTAP2 (Client to Authenticator Protocol) przy użyciu tokenów USB HID. Obsługa nie jest jeszcze domyślnie włączona. Można ją włączyć za pomocą parametru security.webauthn.ctap2 w about:config.
- Debuger JavaScript w narzędziach Web Developer Tools ma nową opcję punktu przerwania, która jest wyzwalana podczas przechodzenia do obsługi zdarzeń scrollend.
- Protokół zdalnego sterowania przeglądarką WebDriver BiDi obsługuje teraz polecenia „session.subscribe” i „session.unsubscribe”.
- W zespołach dla platformy Windows Wprowadzono mechanizm ochrony sprzętowej ACG (Arbitrary Code Guard) blokujący wykorzystywanie luk w procesach zapewniających odtwarzanie treści multimedialnych.
- Platforma macOS Zmieniono działanie kombinacji klawiszy Ctrl/Cmd + gładzik lub Ctrl/Cmd + kółko myszy. Teraz powodują one przewijanie (jak w innych przeglądarkach), a nie powiększanie.
- Ulepszenia w wersji dla Android:
- Podczas oglądania filmu w trybie pełnoekranowym wyświetlanie paska adresu podczas przewijania jest wyłączone.
- Dodano przycisk umożliwiający cofnięcie zmian po usunięciu przypiętej witryny.
- Lista wyszukiwarek jest aktualizowana po zmianie języka.
- Naprawiono błąd powodujący awarię podczas umieszczania dużej ilości danych w schowku lub pasku adresu.
- Poprawiono wydajność wyjścia elementu canvas.
- Rozwiązano problem z połączeniami wideo, które mogły wykorzystywać jedynie kodek H.264.
Oprócz nowych funkcji i poprawek błędów, Firefox 109 naprawia 21 luk. 15 luk oznaczono jako niebezpieczne, z czego 13 (zgromadzonych pod numerami CVE-2023-23605 i CVE-2023-23606) jest spowodowanych problemami z zarządzaniem pamięcią, takimi jak przepełnienia bufora i dostęp do już zwolnionych obszarów pamięci. Problemy te mogą potencjalnie doprowadzić do wykonania kodu atakującego podczas otwierania specjalnie zaprojektowanych stron. Luka CVE-2023-23597 jest spowodowana błędem logicznym w kodzie tworzenia nowych procesów potomnych i umożliwia uruchomienie nowego procesu w kontekście file:// w celu odczytania zawartości dowolnych plików. Luka CVE-2023-23598 jest spowodowana błędem w obsłudze operacji przeciągania i upuszczania w powiązaniu GTK i umożliwia odczytanie zawartości dowolnych plików poprzez wywołanie DataTransfer.setData.
Źródło: opennet.ru



