Два расширения для блокировки рекламы шпионили за диалогами пользователей с нейросетями

information security

Исследователи безопасности обнаружили масштабную операцию по сбору данных, скрытую внутри двух популярных расширений для браузера. Дополнения Smart Adblocker и Adblock for Browser, установленные в общей сложности у 90 тысяч человек, маскировались под обычные блокировщики рекламы. Однако на деле они втайне перехватывали полный текст переписки пользователей с восемью крупными платформами искусственного интеллекта, включая ChatGPT, Gemini, Claude и Copilot. Операция получила внутреннее название PromptSnatcher (Panel 231). Расширения предоставляли реальную функцию блокировки рекламы и баннеров, загружая легитимные публичные фильтры EasyList и IDCAC, что делало их поведение трудноотличимым от безвредных аналогов.

Описание

Обнаружение началось с работы автоматического сканера MalExt Sentry (инструмента для поиска подозрительного кода в дополнениях), который зафиксировал повторение одного и того же идентификатора Google Tag Manager GTM-TCT2RJ в правилах фильтрации у нескольких разных расширений. Этот идентификатор оказался невинным артефактом из публичного списка IDCAC, но он послужил зацепкой для ручного анализа. В ходе более глубокой статической и динамической проверки исследователи нашли истинную связь: общий SDK (программный комплект) Panel 231, присутствующий в обоих расширениях. Этот SDK содержал идентичную обфусцированную логику перехвата данных, единый внутренний протокол обмена сообщениями LDP_MESSAGE и одинаковые модели взаимодействия с командными серверами, несмотря на то, что расширения выходили под разными именами и от разных издателей.

В отличие от многих вредоносных расширений, которые копируют чужой код, здесь создатели написали собственный профессиональный движок. Он не имеет отношения к коду легитимных блокировщиков приватности. При установке расширение предлагало пользователю пройти процесс настройки "Улучшенная защита", где ни словом не упоминался сбор диалогов с чат-ботами. Самое примечательное - движок использует динамическую загрузку правил. При запуске расширение обращается к удаленному серверу на эндпоинт /configuration и получает свежий набор парсеров для каждой целевой платформы. Такой подход позволяет операторам добавлять новые цели или менять методы перехвата без публикации обновления в магазине расширений. В конфигурации версии 1.0.1 перечислены все восемь платформ, включая Meta AI, которая отсутствует в статическом коде расширения, но была активирована позднее - еще одно доказательство гибкости системы.

В момент посещения пользователем страницы AI-сервиса расширение внедряет в основное окружение страницы скрипт capture, который модифицирует стандартные функции fetch, XMLHttpRequest и WebSocket. Это позволяет клонировать весь проходящий трафик в реальном времени и извлекать из него текст запроса и ответа. Перехваченные данные буферизуются: до 10 тысяч символов для промптов и до 30 тысяч для ответов. Затем они отправляются через внутренний канал LDP_MESSAGE в фоновый процесс, а оттуда методом POST передаются на сервер /captures. Каждый пакет содержит уникальный идентификатор установки, код платформы, идентификатор беседы, название модели и сведения о подписке (бесплатный или платный тариф). Для ChatGPT, например, скрипт извлекает флаг is_paid из глобального объекта window.__STATSIG__, а для Copilot перехватывает кадры протокола SignalR через WebSocket.

Отдельного внимания заслуживает ситуация с версиями для Firefox. В манифестах этих версий обоих расширений явно указано data_collection_permissions: none, то есть сбор данных якобы отсутствует. Однако поведение кода в Firefox ничем не отличается от сборок для Chrome - те же перехватчики, та же отправка на C2-серверы. Такое расхождение между заявленным и фактическим является прямым нарушением правил магазина дополнений и вводит пользователей в заблуждение. Очевидно, что разработчики намеренно скрывали истинные намерения.

Учитывая масштаб установок - около 90 тысяч пользователей - это одна из самых значительных клиентских операций по сбору приватных разговоров с нейросетями. Под угрозой оказались как личные данные, так и корпоративная информация, которую пользователи могли доверить AI-помощникам. Специалисты рекомендуют немедленно удалить расширения Smart Adblocker и Adblock for Browser, а также проверить сетевые журналы на предмет обращений к доменам c.smartadblocker.com и c.abforbrowser.com. Идентификаторы расширений в каталоге Chrome - iojpcjjdfhlcbgjnpngcmaojmlokmeii и jcbjcocinigpbgfpnhlpagidbmlngnnn. Организациям стоит добавить эти адреса в списки блокировки на файрволах. Поскольку расширения имели доступ ко всем сайтам, возможна утечка и других конфиденциальных данных.

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

Индикаторы компрометации

Extension

  • Name Smart Adblocker
  • Adblock for Browser

Extension ID

  • iojpcjjdfhlcbgjnpngcmaojmlokmeii
  • jcbjcocinigpbgfpnhlpagidbmlngnnn

C2 Domain

  • smartadblocker.com
  • abforbrowser.com

Комментарии: 0