Недавно был обнаружен новый тип вредоносных расширений для браузеров, получивший название «полиморфных» расширений. Эти расширения могут маскироваться под легитимные, такие как менеджеры паролей, обманывая пользователей и заставляя их передавать конфиденциальные данные.

Специалисты из SquareX Labs обнаружили эту технику, которая позволяет злоумышленникам клонировать иконку, интерфейс и функциональность любого установленного расширения, временно отключая легитимную версию.

Атака нацелена на популярные браузеры на базе Chromium, включая Google Chrome и Microsoft Edge, и представляет собой серьёзную угрозу для пользователей, которые используют расширения для управления паролями, финансовых операций и других конфиденциальных задач.

Атака осуществляется в четыре основных этапа: распространение, разведка, имперсонация и эксплуатация.

Фаза 1: Проникновение и социальная инженерия

Сначала злоумышленники распространяют полиморфное расширение, маскируя его под полезный инструмент — например, помощника на базе искусственного интеллекта или маркетинговое программное обеспечение — в Chrome Web Store.

Жертв обманывают, заставляя их установить и закрепить расширение с помощью методов социальной инженерии, таких как рекламные акции в социальных сетях или поддельные рекомендации. 

Чтобы сохранить легитимность, расширение изначально функционирует так, как рекламируется, выполняя безобидные задачи, пока не запустится следующая фаза.

Фаза 2: Определение целевого расширения

После установки полиморфное расширение начинает искать ценные объекты среди существующих расширений браузера пользователя. Поскольку прямой доступ к другим расширениям ограничен политиками безопасности Chrome, злоумышленники используют альтернативные методы, в том числе:

  • Эксплуатация API Chrome Management — этот API, предназначенный для административного контроля над установленными расширениями, может быть использован не по назначению для определения имеющихся расширений.
  • Использование веб-ресурсов — расширение внедряет скрипты на веб-страницы для поиска уникальных активов (например, иконок, файлов сценариев), связанных с известными расширениями, такими как 1Password или MetaMask.

Если обнаружен ценный объект, вредоносное расширение остаётся в спящем режиме до подходящего момента.

Фаза 3: Имперсонация и эксплуатация

Когда жертва пытается использовать своё законное расширение — например, нажимает на менеджер паролей для автозаполнения учётных данных, — полиморфное расширение осуществляет свою атаку:

  • Временно отключает настоящее расширение, скрывая его закреплённый значок.
  • Заменяет его идентичной по внешнему виду поддельной версией.
  • Отображает приглашение для входа, идентичное оригинальному расширению, и запрашивает учётные данные.
  • Отправляет украденные учётные данные на контролируемый злоумышленником сервер.
  • Вновь включает легитимное расширение, создавая видимость того, что ничего необычного не произошло.

Поскольку атака запускается контекстно — активируется только при попытке жертвы использовать определённое расширение, — она остается незамеченной при обычном сканировании системы безопасности.

Демонстрация

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

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

Кроме того, все разрешения, использованные в этой атаке (activeTab, scripting, chrome.management), относятся к категории среднего риска в Chrome, что снижает вероятность их обнаружения при проверке безопасности..

Поскольку эта атака использует легитимные функции браузера, простого патча для её предотвращения не существует.

Однако SquareX предложила несколько контрмер для Google Chrome, в том числе ограничение внезапных изменений иконок, HTML-файлов расширений и введение уведомлений для пользователей о таких изменениях.

Кроме того, следует усилить мониторинг разрешений для расширений, запрашивающих доступ к чувствительным API, чтобы предотвратить этот тип злоупотреблений.