В браузере Opera GX обнаружена уязвимость, из-за которой вредоносный сайт мог без разрешения установить аддон GX Mods, а затем использовать его для кражи данных с других страниц. С помощью этого способа исследователям удалось узнать email-адрес авторизованного пользователя. При этом для атаки было достаточно просто открыть вредоносный сайт.

Напомним, что браузер Opera GX построен на базе Chromium и ориентирован на геймеров, стримеров и создателей контента. В частности, он отличается расширенными возможностями для кастомизации и функциями для оптимизации потребления ресурсов.

Аддоны GX Mods позволяют менять оформление Opera GX, включая темы, обои, звуки и CSS-стили сайтов. Они распространяются в виде файлов crx, как обычные браузерные расширения, но не могут выполнять JavaScript и не запрашивают каких-либо разрешений.

Уязвимость обнаружили в механизме установки GX Mods: как оказалось, браузер автоматически скачивал и активировал мод, не показывая при этом окно подтверждения. Атакующему было достаточно встроить в страницу скрытый iframe со ссылкой на вредоносный crx-файл. Единственным предупреждением об установке аддона была небольшая панель под адресной строкой с кнопкой удаления мода.

После установки CSS мода применялся ко всем страницам, которые открывал пользователь. Исследователи называют это универсальной CSS-инъекцией, так как в отличие от обычной атаки, вредоносные стили применялись ко всем открываемым страницам.

Хотя CSS сам по себе не позволяет читать содержимое страниц и отправлять его на внешний сервер, селекторы атрибутов могут поочередно проверять отдельные символы или фрагменты значения HTML-атрибута. Например, можно определить, начинается ли скрытый email-адрес с определенной последовательности символов, и в случае совпадения запросить фоновое изображение с сервера атакующего (по этому запросу злоумышленник сможет определить, какой фрагмент адреса оказался верным). Серия подобных запросов постепенно позволяет раскрыть значение полностью.

Для демонстрации атаки исследователи перенаправляли жертву на страницу myaccount.google.com/contactemail, где адрес Gmail присутствовал в нескольких HTML-атрибутах. Вредоносный мод при этом содержал около 150 000 CSS-правил, проверявших все возможные трехсимвольные фрагменты адреса. Затем отдельный скрипт собирал все совпадения воедино.

Отмечается, что изначально специалисты использовали фрагменты из четырех символов, но для этого потребовалось 5,6 млн правил и около 880 Мбайт CSS, с чем браузер не справился. Переход на трехсимвольные последовательности позволил уменьшить нагрузку.

В итоге атака занимала всего несколько секунд: пользователь открывал вредоносный сайт, мод незаметно устанавливался в Opera GX, после чего JavaScript перенаправлял браузер жертвы на страницу аккаунта Google. В итоге email-адрес передавался операторам атаки еще до того, как пользователь успевал прочитать уведомление об установке аддона и нажать кнопку удаления.

Аналогичным способом злоумышленники могли похищать и другие значения, доступные в HTML-разметке, например имя пользователя.

Уязвимость устранили с релизом Opera GX 130.0.5847.89. Идентификатор CVE проблеме не присвоили, и подчеркивается, что единственным способом защиты от нее является обновление браузера. В компании отмечают, что не обнаружили признаков эксплуатации этого бага в реальных атаках.

За обнаружение этого вектора атаки исследователи получили награду в размере 5000 долларов США в рамках программы Opera bug bounty.

Стоит отметить, что автоматическая установка модов уже подвергалась критике. Еще в 2023 году исследователь под ником Renwa использовал ее, чтобы превратить мод в полноценное расширение, в итоге подменив адресную строку браузера. Тогда разработчики Opera исправили уязвимость, однако сам механизм автоустановки модов остался неизменным.

  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии