Состоялся релиз Firefox 124

Состоялся релиз web-браузера Firefox 124 и сформировано обновление ветки с длительным сроком поддержки - 115.9.0. На стадию бета-тестирования переведена ветка Firefox 125, релиз которой намечен на 16 апреля.

Основные новшества в Firefox 124:

  • На странице Firefox View, упрощающей доступ к ранее просматриваемому содержимому, добавлена возможность сортировки списка открытых вкладок по порядку открытия или недавней активности.
  • Изменены настройки по умолчанию секции "Recent browsing" на странице Firefox View (скрыты закладки). Можно выбрать показ недавно просмотренных вкладок, закладок, недавних загрузок и вкладок, сохранённых в сервис Pocket.
  • Добавлена возможность назначения поддерживаемых в GTK и применяемых в GNOME действий при двойном щелчке левой, средней и правой кнопками мыши на заголовке окна. Действие можно определить утилитой gnome-tweaks. Например, можно использовать двойной щелчок левой кнопкой для раскрытия окна на весь экран. Опционально, при активации параметра widget.gtk.titlebar-action-middle-click-enabled в about:config, можно использовать действия при одинарном щелчке средней кнопкой мыши на заголовке.



  • Во встроенный просмотрщик PDF добавлена поддержка выделения текста и клавиатурной навигации по тексту c использованием курсора (Caret Navigation), которая обычно применяется людьми с ограниченными возможностями. Также реализована возможность выделения текста, скомпонованного в виде изображения (например, после сканирования документа).
  • Включён по умолчанию (настройка quicksuggest.rustEnabled) новый бэкенд для вывода рекомендаций в адресной строке, написанный на языке Rust.
  • В системе предотвращения утечек информации реализована возможность анализа контента, передаваемого через буфер обмена или диалог выбора файлов.
  • Включена по умолчанию настройка "network.http.http2.move_to_pending_list_after_network_change".
  • Для WebAssembly на системах x86, x86_64 и aarch64 включены оптимизации умножения матриц с использованием SIMD-инструкций.
  • На платформе Windows повышена эффективность заполнения списка быстрого перехода (jump list) в панели.
  • На платформе macOS во всех типах полноэкранных окон задействован специфичных для этой платформы API для вывода на весь экран.
  • Добавлен метод AbortSignal.any(), возвращающий сигнал, прерываемый в случае прерывания любого исходного сигнала, что можно использовать в fetch() для комбинирования нескольких прерывающих сигналов, например, AbortSignal.timeout() и AbortController.
  • При создании WebSocket разрешено использование схем http/https вместо ws/wss (например, "WebSocket('https://foo')") и относительных URL (например "WebSocket('//example.com/foo')").
  • Добавлена возможность применения к SVG-элементу <text> псевдоэлементов CSS "::first-letter" и "::first-line", позволяющих выбрать иное оформление или изменить шрифт для первой буквы и первой строки текста.
  • Включена поддержка CSS-свойства content-visibility, применяемого для исключения лишней отрисовки областей вне поля видимости.
  • Для разработчиков дополнений реализовано событие runtime.onPerformanceWarning, позволяющее определить ситуации, когда браузер выявляет проблемы с производительностью в дополнении (например, медленные скрипты обработки содержимого).
  • Предоставлена экспериментальная возможность увеличения или уменьшения размера ArrayBuffer, а также увеличения размера SharedArrayBuffer. Предложены новые методы ArrayBuffer.prototype.resize() и SharedArrayBuffer.prototype.grow().
  • Добавлена поддержка инструментария windows-rs (Rust for Windows) для доступа к Windows API.
  • В версии для Android включена по умолчанию обработка экранного жеста сдвига вниз пальцем (pull-to-refresh) для перезагрузки страницы. Реализована возможность использования API Drag & Drop для перемещения голого текста и HTML-разметки при помощи мыши, среди прочего и для перемещения контента из внешних приложений. Предоставлена возможность выборочного разрешения использования дополнений в приватном режиме просмотра.

Кроме новшеств и исправления ошибок в Firefox 124 устранено 16 уязвимостей. 2 уязвимости помечены как критические, а 8 как опасные. 7 уязвимостей (6 собраны под CVE-2024-2615 и CVE-2024-2614) вызваны проблемами работы с памятью, такими как переполнения буферов и обращение к уже освобождённым областям памяти. Потенциально данные проблемы способны привести к выполнению кода злоумышленника при открытии специально оформленных страниц. Помеченные критическими уязвимости (CVE-2024-2615), позволяют обойти все механизмы дополнительной изоляции. Уязвимость CVE-2024-2607 из-за ошибки в JIT на системах Armv7-A позволяет добиться перезаписи регистра с адресом возврата и выполнения своего кода. Уязвимость CVE-2024-2605 позволяет использовать Windows Error Reporter для обхода Sandbox-изоляции и выполнения кода.

OpenNET

Связь с редакцией