Wydanie Firefoksa 75

Odbyła się wydanie przeglądarki internetowej Firefox 75a także wersja mobilna Firefox 68.7 na platformę Android. Dodatkowo została wygenerowana aktualizacja gałązki z długoterminowym wsparciem 68.7.0. Już niedługo na scenie testowanie beta Przeniesiona zostanie gałąź przeglądarki Firefox 76, której wydanie zaplanowano na 5 maja (project przeniósł przez 4-5 tygodni cykl rozwoju).

Głównym innowacje:

  • Rozpoczęło się tworzenie systemu Linux oficjalne konstrukcje w formacie Flatpak.
  • Zaktualizowany wygląd paska adresu. Po kliknięciu paska adresu rozwijana lista najczęściej używanych łączy jest teraz natychmiast wyświetlana, bez konieczności rozpoczynania pisania. Etykietka wyników wyszukiwania została zoptymalizowana tak, aby działała lepiej na mniejszych ekranach. W obszarze zaleceń kontekstowych znajdują się wskazówki dotyczące rozwiązywania typowych problemów pojawiających się podczas pracy z przeglądarką.

    Przestało wyświetlać się protokół https:// i subdomena „www”. w rozwijanym bloku linków wyświetlanych podczas wpisywania w pasku adresu (na przykład https://opennet.ru i https://www.opennet.ru, które różnią się treścią, staną się nie do odróżnienia). Protokół http:// jest wyświetlany w wynikach wyszukiwania w niezmienionej formie.

    Wydanie Firefoksa 75

  • Dla Linuksa zmieniono zachowanie po kliknięciu w pasek adresu (zrobiono tak jak w Windows i macOS) - pojedyncze kliknięcie zaznacza całą zawartość bez umieszczania jej w schowku, podwójne kliknięcie wybiera jedno słowo, potrójne kliknięcie zaznacza całą treść i umieszcza go w schowku.
  • Wdrożone okazja Nie ładuj obrazów, które znajdują się poza widocznym obszarem, dopóki użytkownik nie przewinie zawartości strony do lokalizacji bezpośrednio przed obrazem. Aby kontrolować leniwe ładowanie stron, do tagu „img” dodano atrybut „img”.załadunek", który może przyjąć wartość "leniwy". Oczekuje się, że leniwe ładowanie zmniejszy zużycie pamięci, zmniejszy ruch i zwiększy prędkość początkowego otwierania strony. Dodano opcję „dom.image-lazy-loading.enabled” do about:config, aby kontrolować leniwe ładowanie.
  • Wdrożone pełna obsługa WebGL w środowiskach korzystających z protokołu Wayland. Do tej pory wydajność WebGL w Linuxowych kompilacjach Firefoksa pozostawiała wiele do życzenia ze względu na brak obsługi akceleracji sprzętowej, problemy ze sterownikami gfx dla X11 i stosowanie różnych standardów. Podczas korzystania z Waylanda sytuacja uległa zmianie dzięki pojawieniu się nowego zapleczeza pomocą mechanizmu DMABUF. Oprócz akceleracji sprzętowej, backend WebGL również dozwolony wprowadzić w życie obsługa akceleracji dekodowania wideo H.264 przy użyciu VA-API (Video Acceleration API) i FFmpegDataDecoder (obsługa VP9 i innych formatów kodowania wideo spodziewane w Firefoksie 76). Aby kontrolować, czy akceleracja jest włączona w about:config, zaproponowano parametry „widget.wayland-dmabuf-webgl.enabled” i „widget.wayland-dmabuf-vaapi.enabled”.
  • Dla użytkowników z Wielkiej Brytanii na stronie startowej w sekcji treści rekomendowanych przez serwis Pocket włączone jest wyświetlanie bloków opłaconych przez sponsorów. Bloki są wyraźnie oznaczone jako reklamowe i można je wyłączyć w ustawieniach. Wcześniej reklama pokazał się Tylko użytkownicy z USA.
  • Wdrożone tryb usuwania starych plików cookie i danych witryn podczas uzyskiwania dostępu do witryn z kodem śledzenia nawigacji, z którymi użytkownik nie wchodził w interakcję interaktywną. Tryb ma na celu zwalczanie śledzenia poprzez przekierowania.
  • Zaczęła się implementacja modalnych okien dialogowych powiązanych z poszczególnymi zakładkami i nie blokujących całego interfejsu.

    Wydanie Firefoksa 75

  • Dodany możliwość instalowania i otwierania witryn w formie aplikacji (Apps), co pozwala organizować pracę z witryną jak ze zwykłym programem komputerowym. Aby ją włączyć w about:config należy dodać ustawienie „browser.ssb.enabled=true”, po czym w menu kontekstowym działań ze stroną pojawi się pozycja „Zainstaluj witrynę jako aplikację” (wielokropek w adresie bar), pozwalający na umieszczenie go na pulpicie lub w menu aplikacji skrótu umożliwiającym osobne otwieranie bieżącej witryny. Rozwój trwa opracowanie koncepcji”Przeglądarka specyficzna dla witryny„(SSB), co oznacza otwarcie witryny w osobnym oknie bez menu, paska adresu i innych elementów interfejsu przeglądarki. W bieżącym oknie otwierane są jedynie odnośniki do stron aktywnego serwisu, a podążanie za linkami zewnętrznymi powoduje utworzenie osobnego okna w zwykłej przeglądarce.
    Wydanie Firefoksa 75

  • Rozszerzony wdrożenie „nosniff", aktywowany poprzez nagłówek HTTP "X-Content-Type-Options", który teraz wyłącza logikę automatycznego wykrywania typu MIME dla dokumentów HTML, a nie tylko dla JavaScript i CSS. Tryb pomaga chronić przed atakami związanymi z manipulacją typem MIME. Domyślna przeglądarka analizuje rodzaj przetwarzanych treści i przetwarza je w oparciu o konkretny typ. Na przykład, jeśli zapiszesz kod HTML w pliku „.jpg”, to po otwarciu plik ten zostanie przetworzony jako HTML, a nie jako obraz. Osoba atakująca może skorzystać z formularza przesyłania obrazu dla pliku jpg, w tym HTML z kodem JavaScript, a następnie opublikować link do tego pliku, po bezpośrednim otwarciu kod JavaScript zostanie wykonany w kontekście witryny, do której dokonano przesłania (możesz zdefiniować pliki cookie i inne powiązane dane witryny użytkownika, który otworzył link).
  • Wszystkie znane Mozilli zaufane certyfikaty PKI CA są buforowane lokalnie, co poprawia kompatybilność ze źle skonfigurowanymi serwerami internetowymi.
  • Na stronach otwieranych poprzez HTTP bez szyfrowania korzystanie z Web Crypto API jest zabronione.
  • W systemie Windows zaimplementowano tryb bezpośredniego komponowania, aby poprawić produktywność i przyspieszyć wdrażanie systemu komponowania WebRender, napisany w języku Rust i zlecający renderowanie zawartości strony stronie GPU.
  • W przypadku systemu macOS zaimplementowano eksperymentalną opcję korzystania z certyfikatów klienta z ogólnego magazynu certyfikatów systemu operacyjnego (opcja security.osclientcerts.autoload musi być włączona, aby można ją było uwzględnić w about:config). Począwszy od przeglądarki Firefox 72, ta funkcja była dostępna tylko w systemie Windows.
  • W przypadku Linuksa kompilacje dla systemu macOS korzystają z mechanizmu izolacji RLBox, mający na celu blokowanie wykorzystania luk w bibliotekach funkcji stron trzecich. Na tym etapie izolacja jest włączona tylko dla biblioteki grafit, odpowiedzialny za renderowanie czcionek. RLBox kompiluje kod C/C++ izolowanej biblioteki do niskopoziomowego kodu pośredniego WebAssembly, który jest następnie projektowany jako moduł WebAssembly, którego uprawnienia są ustawione w odniesieniu tylko do tego modułu. Zmontowany moduł pracuje w wydzielonym obszarze pamięci i nie ma dostępu do reszty przestrzeni adresowej. W przypadku wykorzystania luki w bibliotece atakujący będzie ograniczony i nie będzie mógł uzyskać dostępu do obszarów pamięci głównego procesu ani przenieść kontroli poza izolowane środowisko.
  • Atrybut „type” elementu теперь может принимать только значение «text/css».
  • Funkcje zaimplementowane w CSS min (), max () и Zacisk().
  • Dla właściwości CSS tekst-dekoracja-pomiń-atrament zaimplementowano obsługę wartości „all”, która wymaga obowiązkowego przerwania linii podkreślenia i przekreślenia podczas przecinania się z glifami tekstowymi (wcześniej używana wartość „auto” tworzona adaptacyjnie łamie i nie wyklucza dotknięć; przy wartości all dotyka z glifem są całkowicie zabronione).
  • Włączono JavaScript publiczne pola statyczne dla instancji klas JavaScript, które pozwalają określić predefiniowane właściwości, które są inicjowane poza konstruktorem.

    klasa ClassWithStaticField {
    static staticField = „pole statyczne”
    }

  • Dodano obsługę klas Międzynarodowe, który zapewnia metody analizowania i przetwarzania ustawień języka, regionu i stylu specyficznych dla ustawień regionalnych, a także odczytywania i zapisywania znaczników rozszerzeń Unicode oraz przechowywania ustawień regionalnych zdefiniowanych przez użytkownika w formacie serializowanym;
  • Implementacja właściwości Function.caller została dostosowana do najnowszej wersji nowej specyfikacji ECMAScript (teraz wyrzuca wartość null zamiast TypeError, jeśli wywołanie jest wykonywane z funkcji z atrybutem strict, async lub generator).
  • Dodano metodę do HTMLFormElement żądaniePrześlij(), który inicjuje programowe przesłanie danych formularza w taki sam sposób, jak kliknięcie przycisku przesyłania. Funkcji można użyć podczas tworzenia własnych przycisków przesyłania formularzy, dla których wywołanie form.submit() nie jest wystarczające, ponieważ nie interaktywnie sprawdza poprawności parametrów, nie generuje zdarzenia „wyślij” i nie przekazuje danych powiązanych z przyciskiem przesyłania.
  • Zdarzenie przesyłania jest teraz implementowane przez obiekt typu SubmitEvent, a nie przez Event. SubmitEvent zawiera nowe właściwości, które informują o elemencie, który spowodował przesłanie formularza. Na przykład SubmitEvent umożliwia użycie jednego modułu obsługi, który jest wspólny dla różnych przycisków i linków prowadzących do przesłania formularza.
  • Zaimplementowano poprawną transmisję zdarzenia kliknięcia przy wywołaniu metody click() dla elementów odłączonych (nie będących częścią drzewa DOM).
  • W API Animacje internetowe dodano możliwość powiązania animacji z początkową lub końcową klatką kluczową, a przeglądarka sama obliczy stan końcowy lub początkowy (wystarczy określić tylko pierwszą lub ostatnią klatkę kluczową). Domyślnie włączone są funkcje pobierające Animation.timeline, Document.timeline, DocumentTimeline, AnimationTimeline, Document.getAnimations() i Element.getAnimations().
  • Dodano możliwość aktywacji interfejsu profilowania strony bez instalowania osobnego dodatku, poprzez kliknięcie przycisku „Włącz przycisk menu Profilera” na stronie profiler.firefox.com. Dodano tryb analizy wydajności tylko dla aktywnej karty.
  • Konsola internetowa ma teraz tryb natychmiastowego obliczania wyrażeń, umożliwiający programistom szybką identyfikację i poprawianie błędów podczas wprowadzania złożonych wyrażeń poprzez wyświetlanie wstępnego wyniku w trakcie ich wpisywania.
  • В instrument do pomiaru obszarów strony (Measuring Tool) dodano możliwość zmiany wielkości prostokątnej ramki (wcześniej po zwolnieniu przycisku myszy nie można było zmienić ramki i w przypadku niedokładnego celowania konieczne było zmierzyć od zera).
  • Interfejs inspekcji strony obsługuje teraz wyszukiwanie elementów za pomocą wyrażeń XPath, oprócz wcześniej dostępnego wyszukiwania za pomocą selektorów CSS.
  • Dodano możliwość filtrowania wiadomości WebSocket przy użyciu wyrażeń regularnych (wcześniej obsługiwane były tylko maski tekstowe).
  • Dodano obsługę wiązania punktów przerwania z procedurami obsługi zdarzeń WebSocket w debugerze JavaScript.
  • Interfejs został wyczyszczony w celu analizy aktywności sieciowej. Zoptymalizowane renderowanie tabeli podczas jednoczesnego przetwarzania dużej liczby połączeń. Zwiększono kontrast między separatorami kolumn i przyciskami stosowania filtrów. W panelu blokowania żądań sieciowych zaimplementowano możliwość wykorzystania znaku „*” w maskach adresów URL (pozwala ocenić zachowanie witryny w warunkach braku ładowania zasobów).

    Wydanie Firefoksa 75

Oprócz innowacji i poprawek błędów w Firefoksie 75 wyeliminowano szereg luk, z których kilka oznaczono jako krytyczne, tj. może prowadzić do wykonania kodu atakującego podczas otwierania specjalnie zaprojektowanych stron. Informacje szczegółowo naprawione problemy bezpieczeństwa nie są obecnie dostępne, ale oczekuje się, że lista luk zostanie opublikowana w ciągu kilku godzin.

Źródło: opennet.ru

Dodaj komentarz