ChainVeil попал в npm через заражённый репозиторий с подачи ИИ
💀 ChainVeil попал в npm через заражённый репозиторий с подачи ИИ
Знакомый получил от ИИ-агента рекомендацию: репозиторий inbox-ai. Клонировал, запустил локально. Kaspersky прервал выполнение — Trojan.Script.Agent.mlgj, без конкретного семейства. Это не ложное срабатывание.
Анализ кода совпал с кампанией ChainVeil — как писали на habr_infosec. Глобальный идентификатор `global['!']='9-0554-3'` — вариант A9 вместо A6-* из npm-образцов Checkmarx. Механика та же: TRON отдаёт идентификатор последней исходящей транзакции, Aptos — резервный вариант, BSC хранит нагрузку в поле input. Дальше XOR, перестановка, RAT. C2 совпали.
Внедрение — через коммит слияния a40301a 29 марта 2026. В navigation.js добавили обфусцированный однострочник, скрытый пробелами. 30 марта — в calendar-rail.js. Код лежит до сих пор. Автор аккаунта не новичок: 320 репозиториев. Сценарии: компрометация аккаунта, рабочего окружения или EvilMerge.
Инфраструктура старше, чем считали. BSC-транзакция от 7 февраля 2025 структурно совпадает с цепочкой доставки. Нагрузка менялась каждые 2–3 дня, серии — за минуты. Заражение репозитория 29 марта, а первые npm-пакеты — только 18 мая. Вывод: npm не единственный канал.
Пока все следят за npm-реестром, ChainVeil уже проникает через рекомендации ИИ в частные репозитории. Это не новый вектор — это смена точки входа в среду разработки.
#ChainVeil #Malware #GitHub #AIAgent #npm
Такие разборы выходят в канале каждый день — коротко и со ссылкой на первоисточник.