Состоялся релиз web-браузера , a także Firefox 68.6 для платформы Android. Кроме того, сформировано обновление с длительным сроком поддержки . В ближайшее время на стадию перейдёт ветка Firefox 75, релиз которой намечен на 7 апреля (проект на 4-5-недельный ). Для бета-ветки Firefox 75 формирование для Linux в формате Flatpak.
:
- В сборках для Linux задействован механизм изоляции , нацеленный на блокирование эксплуатации уязвимостей в сторонних библиотеках функций. На данном этапе изоляция включена только для библиотеки , отвечающей за отрисовку шрифтов. RLBox выполняет компиляцию C/C++ кода изолируемой библиотеки в низкоуровневый промежуточный код WebAssembly, который затем оформляется в виде WebAssembly-модуля, полномочия которого задаются в привязке только к этому модулю. Собранный модуль работает в отдельной области памяти и не имеет доступа к остальному адресному пространству. В случае эксплуатации уязвимости в библиотеке атакующий будет ограничен и не сможет обратиться к областям памяти основного процесса или передать управление вне изолированного окружения.
- Режим DNS поверх HTTPS (DoH, DNS over HTTPS) для пользователей из США. В качестве DNS-провайдера по умолчанию предлагается CloudFlare (mozilla.cloudflare-dns.com w Роскомнадзора), а в качестве опции доступен NextDNS. Изменить провайдера или включить DoH в странах, отличных от США, в настройках сетевого соединения. Подробнее о DoH в Firefox можно прочитать в .
- поддержка протоколов TLS 1.0 и TLS 1.1. Для обращения к сайтам по защищённому каналу связи сервер должен предоставить поддержку как минимум TLS 1.2. По данным Google в настоящее время около 0.5% загрузок web-страниц продолжает осуществляться с использованием устаревших версий TLS. Отключение произведено в соответствии с IETF (Internet Engineering Task Force). Причиной отказа от поддержки TLS 1.0/1.1 является отсутствие поддержки современных шифров (например ECDHE и AEAD) и требование поддержки старых шифров, надёжность которых на современном этапе развития вычислительной техники поставлена под сомнение (например, требуется поддержка TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA, для проверки целостности и аутентификации используется MD5 и SHA-1). При попытке использования TLS 1.0 и TLS 1.1 начиная с Firefox 74 будет выводиться ошибка. Вернуть возможность работы с устаревшими версиями TLS можно через настройку security.tls.version.enable-deprecated = true или при помощи кнопки на странице с ошибкой, выводимой при заходе на сайт со старым протоколом.
- В примечании к выпуску рекомендовано дополнение , которое автоматически блокирует размещаемые на сторонних сайтах виджеты Facebook, применяемые для аутентификации, отправки комментариев и лайков. Параметры идентификации Facebook изолируются в отдельном контейнере, затрудняя отождествление пользователя с посещаемыми сайтами. Возможность работы с основным сайтом Facebook сохраняется, но производится его изоляция от остальных сайтов.
Для более гибкой изоляции произвольных сайтов предлагается дополнение с реализацией концепции контекстных контейнеров. Контейнеры предоставляют возможность изоляции различных типов контента без создания отдельных профилей, что позволяет отделить между собой информацию отдельных групп страниц. Например, можно создать отдельные, изолированные друг от друга, области для персонального общения, работы, покупок и банковских операций или организовать одновременное использование разных аккаунтов пользователя на одном сайте. В каждом контейнере используются отдельные хранилища для Cookies, Local Storage API, indexedDB, кэша и содержимого OriginAttributes.
- В about:config добавлена настройка «browser.tabs.allowTabDetach», позволяющая запретить отсоединение вкладок в новые окна. Случайное отсоединение вкладки является одной из самых раздражающих недоработок Firefox, устранения которой 9 лет. Браузер позволяет мышью перетащить вкладку в новое окно, но при определённом стечении обстоятельств вкладка отсоединяется в отдельное окно и в процессе работы при неосторожном движении мыши во время клика на вкладку.
- поддержки дополнений, устанавливаемых обходным путём и не привязанных к пользовательским профилям. Изменение касается только установки дополнений в общие каталоги (/usr/lib/mozilla/extensions/, /usr/share/mozilla/extensions/ или ~/.mozilla/extensions/), обрабатываемые всеми экземплярами Firefox в системе (без привязки к пользователю). Подобный метод обычно применяется для предустановки дополнений в дистрибутивах, для непрошенной подстановки вместе со сторонними приложениями, для интеграции вредоносных дополнений или для обособленной поставки дополнения со своим инсталлятором. В Firefox 73 ранее принудительно установленные дополнения были автоматически перенесены из общего каталога в индивидуальные профили пользователей и теперь могут быть через штатный менеджер дополнений.
- Во входящем в состав браузера системном дополнении Lockwise, предлагающем интерфейс «about:logins» для управления сохранёнными паролями, появилась сортировки в обратном порядке (от Z к A).
- В WebRTC повышена защита от утечки сведений о внутреннем IP-адресе во время голосовых и видеовызовов при помощи механизма ««, скрывающем локальный адрес за динамически генерируемым случайным идентификатором, определяемым через Multicast DNS.
- Изменено расположение переключателя режима просмотра «картинка в картинке», который перекрывал кнопку перехода к следующему изображению в интерфейсе пакетной загрузки фотографий в Instagram.
- В JavaScript оператор «?.», предназначенный для единовременной проверки всей цепочки свойств или вызовов. Например, указав «db?.user?.name?.length» теперь можно обратиться к значению «db.user.name.length» без предварительных проверок. Если какой-то элемент обработан как null или undefined на выходе будет выдано значение «undefined».
- поддержка на сайтах и в дополнениях метода Object.toSource() и глобальной функции uneval().
- Добавлено новое событие и связанное с ним свойство , которые позволяют вызвать обработчик при смене пользователем языка интерфейса.
- Включена обработка HTTP-заголовка (), позволяющего сайтам запретить вставку ресурсов (например, изображений и скриптов), загружаемых с других доменов (cross-origin и cross-site). Заголовок может принимать два значения: «same-origin» (разрешает только запросы ресурсов с той же схемой, именем хоста и номером порта) и «same-site» (разрешает только запросы с того же сайта).
Cross-Origin-Resource-Policy: same-site
- Включён по умолчанию HTTP-заголовок , позволяющий управлять поведением API и включением определённых возможностей (например, можно отключить доступ к Geolocation API, камере, микрофону, переходу на полный экран, автовоспроизведению, encrypted-media, анимации, Payment API, синхронному режиму работы XMLHttpRequest и т.п.). Для блоков iframe отдельно предложен атрибут ««, который может применяться в коде страницы для назначения прав для определённых блоков iframe.
<iframe src=»https://example.com» allow=»fullscreen»></iframe>
Feature-Policy: microphone ‘none’; geolocation ‘none’
В случае разрешения сайтом через атрибут «allow» работы с ресурсом для определённого iframe, и поступлении запроса из iframe на получения полномочий для работы с этим ресурсом, браузер теперь выводит диалог предоставления полномочий в контексте основной страницы и делегирует подтверждённые пользователем права в iframe (вместо отдельного подтверждения для iframe и основной страницы). Но, если основная страница не имеет полномочий на ресурс, запрошенный через атрибут allow, доступ для iframe к ресурсу сразу , без вывода диалога пользователю.
- Включена по умолчанию поддержка CSS-свойства ‘‘, определяющее позицию подчёркивания текста (например, при вертикальном отображении текста можно организовать подчёркивание слева или справа, а при горизонтальном не только снизу, но и сверху). Дополнительно в управляющих стилем подчёркивания CSS-свойствах i добавлена поддержка использования значений в процентах.
- В CSS-свойстве , определяющем стиль линии вокруг элементов, по умолчанию разрешено использование значения «auto» (ранее было из-за проблем в GNOME).
- В отладчик JavaScript возможность отладки вложенных Web Worker-ов, выполнение которых может быть приостановлено и пошагово отлажено с применением точек останова.
- В интерфейсе для инспектирования web-страниц обеспечено отображение предупреждений для CSS-свойств, зависящих от позиционируемых элементов z-index, top, left, bottom и right.
- Для Windows и macOS реализована возможность импорта профилей из браузера Microsoft Edge на базе движка Chromium.
Кроме новшеств и исправления ошибок в Firefox 74 устранено , из которых 10 (собраны под i ) помечены как потенциально способные привести к выполнению кода злоумышленника при открытии специально оформленных страниц. Напомним, что проблемы с памятью, такие как переполнения буферов и обращение к уже освобождённым областям памяти, с недавних пор помечаются как опасные, но не критические.
Źródło: opennet.ru
