GlassWorm: вредоносные расширения Open VSX используют extensionDependencies

Недавние расследования выявили новую волну вредоносных расширений Open VSX, связанных с кампанией GlassWorm. Атака расширилась минимум до 73 случаев применения переходных зависимостей (transitive dependencies), что позволяет злоумышленникам маскировать вредоносную полезную нагрузку внутри, на первый взгляд, безвредных расширений.

В чём суть угрозы

Механизм заражения базируется на использовании полей манифеста, таких как extensionPack и extensionDependencies. Это даёт злоумышленникам возможность публиковать легитимно выглядящие расширения, которые при установке подтягивают и активируют другие пакеты — в том числе те, которые содержат вредоносный код. В результате простой просмотр исходной публикации расширения перестаёт быть достаточной мерой предосторожности.

Как работает GlassWorm (ключевые принципы)

  • Поэтапное выполнение JavaScript с разделением логики на несколько стадий, что затрудняет статический анализ.
  • Геозонирование: привязка выполнения к русской локали и часовому поясу для таргетинга.
  • Использование заметок о транзакциях Solana (transaction memos) для скрытой передачи данных.
  • Ротация инфраструктуры C2 и кошельков для усложнения трекинга и отслеживания активности.

«Стратегия ротации направлена на поддержание оперативной безопасности злоумышленников путем усложнения обнаружения и установления личности», — отмечают аналитики.

Эволюция тактик и усиление обфускации

В последних вариантах кампании злоумышленники перешли к более агрессивной ротации инфраструктуры: например, был зафиксирован переход с кошелька Solana BjVeAjPrSKFiingBn4vZvghsGj9KCE8AJVtbc9S8o8SC на новый 6YGcuyFRJKZtcaYCCFba9fScNUvPkGXodXE1mJiSzqDJ, а также введение новых IP-адресов командования и контроля (C2) наряду с уже используемыми.

Для снижения видимости вредоносного компонента злоумышленники усложнили обфускацию: статический загрузчик AES заменён более сложной цепочкой RC4/base64/string-array, а материалы, необходимые для расшифровки, частично переносятся из расширения в заголовки HTTP-ответов. Это добавляет уровень уклонения от классических механизмов детектирования.

Индикаторы компрометации и что отслеживать

Защитникам следует особенно мониторить следующие признаки:

  • Изменения в манифестах расширений, включающие поля extensionPack или extensionDependencies в новых версиях.
  • Поэтапный JavaScript-код с признаками геозонирования (локаль/часовой пояс).
  • Использование встроенных криптографических подписей и нетипичные схемы обфускации (RC4/base64/string-array).
  • Транзакции Solana с подозрительными memos, используемыми для передачи скрытых данных.
  • Необычная ротация кошельков и появление новых C2 IP-адресов.

Примеры зафиксированных расширений

  • otoboss.autoimport-extension — в манифесте ссылается на известные расширения, связанные с GlassWorm.
  • twilkbilk.color-highlight-css — имитация законного инструмента, маскировка под надежный функционал.

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

Рекомендации — немедленные и долгосрочные

Эксперты по кибербезопасности и команды разработчиков должны предпринять следующие действия без промедления:

  • Провести аудит полной истории установленных расширений — не только текущих версий, но и предыдущих.
  • Идентифицировать и удалить инфраструктуру, связанную с GlassWorm, из сред разработки.
  • Проверить и при необходимости очистить потенциально выполняемые в памяти полезные нагрузки; рассмотреть возможность сканирования на предмет пост-эксплуатационных модулей, ориентированных на локальные учётные данные и конфигурационные файлы.
  • Блокировать известные кошельки и подозрительные C2 IP/доменные имена на уровне сети; мониторить появление новых адресов.
  • Усилить контроль за распространением расширений: переоценить процессы верификации и ревью для Open VSX/VS Code, в том числе проверку зависимостей в манифесте.
  • Рассмотреть реализацию дополнительных мер целостности — например, проверки подписей расширений и политики доверенных источников.
  • Ротация и защита учётных данных, которые могли быть скомпрометированы вследствие выполнения вредоносных нагрузок в памяти.

Поверхность атаки и значение бдительности

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

Заключение

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

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

Отчет получен из сервиса CTT Report Hub. Права на отчет принадлежат его владельцу.

Ознакомиться подробнее с отчетом можно по ссылке.

Технологии киберугроз
Автор: Технологии киберугроз
Технологии киберугроз (бренд RST Cloud Russia) – технологическая компания, специализирующаяся на решениях по анализу угроз для предприятий любого размера. Мы собираем, нормализуем, обогащаем информацию о киберугрозах со всего мира. Нашими источниками являют более 260 открытых фидов, более 100 открытых поставщиков Threat Intelligence-отчетов, открытые online sandbox, социальные сети и репозитории GitHub. Мы также предоставляем ряд сервисов по: семантическом анализу Threat Intelligence-отчетов и приведения их в машиночитаемый формат STIX 2.1, проверки IoC на потенциальные ложноположительные сработки, а также получению WHOIS-записей для доменных имен.
Комментарии: