Релиз Firefox 77

Состоялся релиз web-браузера Firefox 77, а также мобильной версии Firefox 68.9 для платформы Android. Кроме того, сформировано обновление ветки с длительным сроком поддержки 68.9.0. В ближайшее время на стадию бета-тестирования перейдёт ветка Firefox 78, релиз которой намечен на 30 июня.

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

  • Добавлена новая служебная страница «about: certificate» для доступа ко встроенному интерфейсу просмотра сертификатов. В интерфейсе можно вывести список корневых и сохранённых сертификатов, посмотреть детали по каждому сертификату и выполнить экспорт сертификатов (поддержка импорта пока отсутствует). 0_1591114579.png
  • Добавлена экспериментальная поддержка формата изображений AVIF (AV1 Image Format), в котором задействованы технологии внутрикадрового сжатия из формата кодирования видео AV1 (поддерживается начиная с Firefox 55). Для включения AVIF в about: config предусмотрена опция image.avif.enabled. Контейнер для распространения сжатых данных в AVIF полностью аналогичен HEIF. AVIF поддерживает как изображения в HDR (High Dynamic Range) и цветовом пространстве Wide-gamut, так и в стандартном динамическом диапазоне (SDR).
  • Расширено число систем, для которых включена система композитинга WebRender, написанная на языке Rust и позволяющая добиться существенного увеличения скорости отрисовки и снизить нагрузку на CPU. WebRender выносит на сторону GPU операции отрисовки содержимого страницы, которые реализованы через выполняемые в GPU шейдеры. WebRender теперь включён на оборудовании с Intel Skylake GT1, APU AMD Raven Ridge, AMD Evergreen и на ноутбуках с видеокартами NVIDIA, работающих под управлением Windows. Для принудительного включения в about: config следует активировать настройки «gfx.webrender.all» и «gfx.webrender.enabled» или запустив Firefox с выставленной переменной окружения MOZ_WEBRENDER=1.
  • В адресной строке улучшен разбор поисковых фраз. Слова с точкой оцениваются на предмет актуальных доменов (например, раньше ввод ключей вида «test.log» приводил не к поиску, а к попытке открытия сайта, а ввод «data: url» с пробелами и символом вопроса — к поиску, а не загрузке).
  • Включён по умолчанию режим очистки старых Cookie и данных сайта при обращении к сайтам с кодом отслеживания перемещений, с которыми пользователь интерактивно не взаимодействовал. Режим нацелен на борьбу с отслеживанием через редиректы.
  • В about: config добавлена новая настройка middlemouse.openNewWindow, при помощи которой можно отключить открытие ссылки в новой вкладки нажатием средней кнопки мыши.
  • Удалена настройка browser.urlbar.update1.view.stripHttps (поддержка настройки browser.urlbar.trimURLs сохранена).
  • Добавлена поддержка необязательных полномочий, запрос которых в дополнениях не приводит к выводу уведомления о подтверждении новых полномочий при установке или обновлении дополнения, а выводится при непосредственном обращении дополнения к операции, требующей повышенных полномочий. В число полномочий, которые можно заявить как необязательные, включены management, devtools, browsingData, pkcs11 proxy и session. В качестве мотива добавления необязательных полномочий упоминается желание снизить нагрузку на пользователей при обновлении дополнений и предоставить возможность обновления дополнения без обязательного подтверждения полномочий (ранее, если пользователь не согласен с полномочиями, дополнение не обновлялось).
  • Для пользователей из Великобритании на странице новой вкладки включено отображение контента, рекомендованного сервисом Pocket. Ранее подобные страницы показывалась только пользователям из США, Канады и Германии. Связанная с подбором контента персонализация выполняется на стороне клиента и без передачи сведений о пользователе третьим лицам (в браузер загружается весь список рекомендованных ссылок на текущий день, который ранжируется на стороне пользователя, отталкиваясь от данных истории посещений). Следует отметить, что оплаченные спонсорами блоки показывается только в США и явно помечены как реклама, в остальных странах рекламные статьи пока не используются. Для отключения рекомендованного Pocket контента предусмотрена настройка в конфигураторе (Firefox Home Content/Recommended by Pocket) и опция «browser.newtabpage.activity-stream.feeds.topsites» в about: config. 0_1525205587.png
  • В движке Gecko включён по умолчанию режим полного управления цветом (gfx.color_management.mode = 1), обеспечивающий цветокоррекцию с использованием цветовых профилей не только для изображений в тегах img, но и для CSS.
  • В конфигураторе в выпадающий блок методов блокировки Cookie в секции настройки блокировки отслеживания перемещений добавлен новый пункт для динамической изоляции Cookie по отображаемому в адресной строке домену («Dynamic First Party Isolation», когда свои и сторонние вставки определяются на основе базового домена сайта).
  • Для упрощения навигации на устройствах с сенсорными экранами увеличены отступы на панели закладок (при открытии новой вкладки новая адресная строка Megabar частично перекрывает панель с закладками и оставляет мало места для нажатия). Реализованы модальные диалоги, привязанные к отдельным вкладкам и не блокирующие весь интерфейс. 0_1583300586.png
  • Из движка Gecko полностью удалена поддержка XUL Grids.
  • По умолчанию включён автоматический поворот JPEG-изображений на основе данных из Exif.
  • Удалена настройка «browser.urlbar.oneOffSearches». Для скрытия кнопок альтернативных поисковых систем, появляющихся при начале набора в адресной или поисковой строке, можно выбрать необходимые поисковые системы на странице about: preferences#search.
  • Текст, не вмещающийся в ограничение «maxlength», больше не обрезается при вставки в поля ‹input› и ‹textarea›.
  • Добавлен метод String.prototype.replaceAll (), возвращающий новую строку (исходная строка не меняется), в которой на основании заданного шаблона выполнены замены всех совпадений. Шаблоны могут быть как простыми масками, так и регулярными выражениями.
  • Добавлена экспериментальная поддержка раскладки Masonry в grid-контейнерах.
  • В средства для разработчиков добавлена панель для оценки потенциальных проблем с совместимостью с разными браузерами (показывается в каких браузерах поддерживается то или иное свойство CSS, привязанное к выбранному элементу). Включается через настройку devtools.inspector.compatibility.enabled в about: config. 0_1591094881.png
  • В отладчике JavaScript ускорена загрузка и пошаговая отладка, сокращён потребление памяти отладчиком. Улучшено сопоставление разных представлений кода (source map), позволяющее просматривать переменные из оригинальных исходных текстов при отладке итоговых модулей.
  • На Firefox 79 перенесено отключение поддержки FTP. Добавлена опция для управления включением FTP (в about: config — network.ftp.enabled), которая пока оставлена включённой. В качестве причины прекращения поддержки FTP называется незащищённость данного протокола от модификации и перехвата транзитного трафика при совершении MITM-атак. Код поддержки FTP в Firefox очень старый, создаёт проблемы при сопровождении и имеет историю выявления большого числа уязвимостей в прошлом. Для тех кому необходима поддержка FTP предлагается использовать внешние приложения, прикрепляемые в качестве обработчиков для URL ftp://, по аналогии с тем как используются обработчики irc:// или tg://.

Кроме новшеств и исправления ошибок в Firefox 77 устранено 9 уязвимостей, из которых 7 помечены как опасные:

  • Четыре уязвимости (собраны под CVE-2020–12411 и CVE-2020–12409) вызваны проблемами работы с памятью, такими как переполнения буферов и обращение к уже освобождённым областям памяти. Потенциально данные проблемы способны привести к выполнению кода злоумышленника при открытии специально оформленных страниц.
  • Уязвимость CVE-2020–12406 вызвана отсутствием проверки типов при удалении объектов NativeTypes и потенциально может использоваться для организации выполнения кода атакующего.
  • Уязвимость CVE-2020–12405 вызвана обращением к освобождённому блоку памяти (Use-after-free) в SharedWorkerService и скорее всего ограничивается вызовом краха.
  • Уязвимость CVE-2020–12399 связанная с подверженностью библиотеки атаке по сторонним каналам, позволяющей на основе анализа различий во времени вычислений восстановить закрытый ключ для цифровой подписи DSA.



Источник: http://www.opennet.ru/opennews/art.shtml? num=53072

© OpenNet