💀 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