Поддельные расширения Open VSX крадут данные через DNS и WebView
12 августа 2026 года в течение примерно одного часа в Open VSX появились не менее 28 поддельных расширений. Пакеты имитировали 12 легитимных пространств имен и распространялись через четыре временных аккаунта издателей. Реальные проекты и издатели в кампании не участвовали.
Сбор данных и передача на инфраструктуру злоумышленников
Вредоносные версии обычно содержали минимальную функциональность расширений. Вместо этого они собирали имя хоста, имя редактора, идентификатор издателя и имя расширения, после чего передавали данные на инфраструктуру по адресу i.apee.my.id.
В кампании использовались несколько методов backdooring. Многие релизы версии 0.0.2 выполняли эксфильтрацию данных через DNS с помощью функции dns.resolve4(). Они формировали поддомены, в которых кодировались идентификатор редактора, имя хоста и название расширения.
Другие варианты выполняли скрытые команды терминала с вызовом curl. Один из пакетов содержал обрезанный ELF-бинарник размером 14 КБ и запускал его при каждом событии сохранения файла. Бинарник использовал функцию getaddrinfo() для разрешения домена, содержащего украденный идентификатор.
Повторяющийся разделитель, литерал 0d0, встречался между именами издателей и расширений в DNS-метках, аргументах нативных бинарников и Node-API аддоне. Это делает его полезным индикатором кампании.
Механизмы в более поздних версиях
В более поздних версиях появились дополнительные механизмы сбора и доставки данных.
- Версия 0.0.10 использовала WebView с маячком размером 1×1 пиксель, который отправлял данные на
result.i.apee.my.id. - Версия 0.0.11 загружала встроенный нативный аддон
binding.node, генерировавший DNS-идентификаторы. - Версия 0.0.42 регистрировала WebviewViewProvider, отправляющий данные о цифровом отпечатке браузера на
httpbin.org. В набор входили user agent, язык, размеры экрана и смещение часового пояса.
Приманки с чистым кодом
Вскоре после выпуска вредоносных версий 0.0.1 и 0.0.2 операторы загрузили чистые версии 0.0.3 в качестве приманок. Эти пакеты сохраняли аналогичную структуру команд, но не содержали backdoor.
Такой подход мог скрыть историю издателя и ввести в заблуждение рецензентов, которые проверяют только последнюю версию расширения.
Что проверять при обнаружении
Поиск следов кампании должен включать следующие источники.
- Установленные расширения.
- Файлы конфигурации рабочей области.
- DNS-запросы к
*.kpandbla.i.apee.my.id. - Запросы к
result.i.apee.my.id.
Для защиты информации автоматическую установку от непроверенных издателей и недавно зарегистрированных пространств имен следует запретить.
Отчет получен из сервиса CTT Report Hub. Права на отчет принадлежат его владельцу.
Ознакомиться подробнее с отчетом можно по ссылке.



