imageФото: Doug Belshaw/Flickr

Mozilla расширила защиту пользователей браузера Firefox от атак с попытками внедрения вредоносного кода. Разработчики сосредоточились на удалении «потенциально опасных артефактов» в исходном коде Firefox.

Под артефактами подразумеваются встроенные скрипты и функции типа eval(). Mozilla рассчитывает улучшить защиту встроенных служебных страниц «about:» за счет удаления таких кусков кода.

Всего насчитывается 45 страниц «about:», которые позволяют пользователям углубиться в конфигурацию браузера, а также просмотреть установленные плагины и отобразить сетевую информацию. Разработчиков беспокоила возможность провести инъекцию кода с помощью страницы about:config, позволяющей пользователям адаптировать свой Firefox к конкретным потребностям, так как страница «раскрывала API для обновления настроек и конфигурации».

Страницы «about:» написаны на HTML и JavaScript и имеют те же слабые места, что и обычные веб-страницы, то есть хакер может внедрить свой код непосредственно в служебную страницу и выполнять действия от имени пользователя. Однако Mozilla ввела защиту, которая запрещает выполнять код JavaScript, внедренный злоумышленником. Весь встроенный код JavaScript переместили в упакованные файлы для всех страниц about:. Код JavaScript выполняется только при загрузке из упакованного ресурса с использованием внутреннего протокола chrome:.

«Доказанно эффективный способ противодействия атакам путем внедрения кода заключается в уменьшении поверхности атаки путем удаления потенциально опасных артефактов в базе кода и, следовательно, упрочнения кода на различных уровнях», — отметили в компании.

Чтобы еще больше минимизировать поверхность атаки в Firefox, разработчики переписали все использование eval()-подобных функций из системных привилегированных контекстов и из родительского процесса в кодовой базе Firefox. Кроме того, были добавлены утверждения, запрещающие использование eval() в контекстах сценариев с системными привилегиями. Введенные утверждения будут продолжать информировать команду безопасности Mozilla о еще неизвестных экземплярах eval().

В сентябре Mozilla объявила о решении включить по умолчанию протокол DoH (DNS-over-HTTPS) в одной из следующих версий браузера Firefox. Разработанный Mozilla, Google и Cloudflare протокол DNS-шифрования сводит на нет попытки мониторинга трафика «человеком-в-середине». Он устраняет открытые DNS-запросы, по которым злоумышленник может отслеживать содержимое DNS-пакетов и даже подменять их. Это позволяет блокировать доступ к ресурсу по IP-адресу или доменному имени.

Комментарии (10)


  1. annasmirn
    15.10.2019 17:02

    Очень интересно, станет ли действительно меньше атак или хакеры придумают что-то хитрее защиты Мозилы?


    1. ffs
      15.10.2019 17:19

      Это противостояние бесконечно


  1. gremlin244
    15.10.2019 18:33

    Это наверное все замечательно, но меня не покидает чувство, что на определенном этапе что-то пошло не так, и с защитой пользователя перегнули палку. Уже ну абсолютно куда ни зайди, браузер найдет на что поругаться.


    1. maxzhurkin
      15.10.2019 20:04

      В данном случае на что он будет ругаться?


      1. gremlin244
        15.10.2019 20:57

        Очевидно на то где есть eval(). И споров на тему даже гугл выдаст вот прям тут
        habr.com/ru/post/221937
        habr.com/ru/post/138151.
        Моя точка зрения в том, что нельзя решать за пользователя. Должна быть презумпция вменяемости пользователя, окей, пусть будут предупреждения, чекбоксы со страшными карами для не чекнувших, но я должен иметь возможность зайти на этот чертов небезопасный сайт не делая финт ушами.


        1. maxzhurkin
          15.10.2019 21:45

          При чём здесь пользователи?
          Речь исключительно о внутренностях браузера.
          В данном случае создатели браузера воюют с унаследованным кодом внутри самого браузера, а победа в этой войне приведёт к тому, что браузер станет более безопасным, а не «пользователю станет доступно меньше контента»


    1. Anynickname
      15.10.2019 21:25
      +1

      Уже ну абсолютно куда ни зайди, браузер найдет на что поругаться.
      Уж и не знаю, куда вы там ходите.


    1. kunix
      15.10.2019 23:54

      А меня не покидает чувство, что Web was never designed with security in mind.
      На самом деле, в балансе между безопасностью и удобством по традиции сильно отклоняются в сторону последнего, что ужасно.


  1. Invisibler
    16.10.2019 14:27

    внутреннего протокола chrome:

    Объясните пожалуйста, что за хром в мозиле, обращал внимание, но так и не нашел что это.