Состоялся релиз web-браузера Firefox 124 и сформировано обновление ветки с длительным сроком поддержки – 115.9.0. На стадию бета-тестирования переведена ветка Firefox 125, релиз которой намечен на 16 апреля.
Основные новшества в Firefox 124:
- На странице Firefox View, упрощающей доступ к ранее просматриваемому содержимому, добавлена возможность сортировки списка открытых вкладок по порядку открытия или недавней активности.
- Изменены настройки по умолчанию секции “Recent browsing” на странице Firefox View (скрыты закладки). Можно выбрать показ недавно просмотренных вкладок, закладок, недавних загрузок и вкладок, сохранённых в сервис Pocket.
- Во встроенный просмотрщик PDF добавлена поддержка клавиатурной навигации по тексту c использованием курсора (Caret Navigation), которая обычно применяется людьми с ограниченными возможностями.
- На платформе Windows повышена эффективность заполнения списка быстрого перехода (jump list) в панели.
- На платформе macOS во всех типах полноэкранных окон задействован специфичных для этой платформы API для вывода на весь экран.
- Добавлен метод AbortSignal.any(), возвращающий сигнал, прерываемый в случае прерывания любого исходного сигнала, что можно использовать в fetch() для комбинирования нескольких прерывающих сигналов, например, AbortSignal.timeout() и AbortController.
- При создании WebSocket разрешено использование HTTP/HTTPS и относительных URL.
- Добавлена возможность применения к SVG-элементу псевдоэлементов CSS “::first-letter” и “::first-line“, позволяющих выбрать иное оформление или изменить шрифт для первой буквы и первой строки текста.
- Для разработчиков дополнений реализовано событие runtime.onPerformanceWarning, позволяющее определить ситуации, когда браузер выявляет проблемы с производительностью в дополнении (например, медленные скрипты обработки содержимого).
- Предоставлена экспериментальная возможность увеличения или уменьшения размера ArrayBuffer, а также увеличения размера SharedArrayBuffer. Предложены новые методы ArrayBuffer.prototype.resize() и SharedArrayBuffer.prototype.grow().
- В версии для 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-изоляции и выполнения кода.