Новая волна атак малвари Shai-Hulud затронула сотни пакетов в npm и PyPI. Хакеры из группировки TeamPCP скомпрометировали популярные проекты, включая TanStack и Mistral AI, встроили в них стилер для кражи секретов, а затем выставили внутренние репозитории Mistral AI в продажу. Вскоре после этого исходники самого червя были опубликованы на GitHub под лицензией MIT.
Атаки начались ранее на этой неделе с компрометации пакетов TanStack и Mistral AI. По данным экспертов, злоумышленники похитили CI/CD-учетные данные и использовали легитимные пайплайны для публикации зараженных релизов. В итоге вредоносные обновления получили SLSA Build Level 3 attestations, подписи GitHub Actions и Sigstore. То есть для разработчиков такие пакеты выглядели полностью легитимными.
Позднее кампания распространилась на десятки других проектов, включая UiPath, Guardrails AI, OpenSearch, Bitwarden CLI и официальные пакеты SAP. Разные ИБ-компании (включая Endor Labs, Aikido и Socket) насчитали от 160 до более чем 400 зараженных пакетов.
Согласно опубликованному TanStack отчету, в ходе атаки атакующие использовали сразу несколько проблем: опасный workflow pull_request_target, отравление кеша GitHub Actions и кражу OIDC-токенов из памяти runner’ов.
Кроме того, специалисты Endor Labs описали необычный трюк с orphan-коммитом в форке репозитория TanStack/router: npm автоматически подтягивал этот код через optional dependency и запускал его во время установки пакета.
Главная задача червя Shai-Hulud — кража секретов разработчиков и инфраструктурных токенов. Так, вредонос ищет GitHub PAT и OIDC-токены, AWS-ключи, учетные данные Kubernetes, Vault, SSH-ключи, .env-файлы, конфигурации Claude Code и VS Code. Для эксфильтрации данных используется Session P2P, то есть вредоносный трафик маскируется под зашифрованный мессенджер.
Причем удаление зараженного пакета не всегда помогает, так как вредонос закрепляется в системе через хуки Claude Code и задачи автозапуска VS Code.
Аналитики Microsoft отдельно изучили вредоносный пакет Mistral AI в PyPI. Они пишут, что полезная нагрузка под названием transformers.pyz маскировалась под библиотеку Hugging Face Transformers и устанавливала Linux-стилер. Кроме того, у малвари обнаружили геофенсинг: в системах с русской локалью она попросту не запускалась, а на хостах, связанных с Израилем или Ираном, с вероятностью один к шести выполнялась команда rm -rf /.
Пока расследование атак продолжается, участники группировки TeamPCP уже объявили о продаже данных, похищенных у Mistral AI. По данным издания Bleeping Computer, хакеры утверждают, что украли около 5 Гбайт внутренних репозиториев и исходников, связанных с обучением, инференсом и тестированием LLM-моделей.
За архив из примерно 450 репозиториев злоумышленники хотят получить 25 000 долларов США. Если покупатель не найдется, злоумышленники обещают «слить» данные бесплатно на хакерских форумах.
Представители Mistral AI подтвердили СМИ, что часть SDK-пакетов была скомпрометирована, однако в компании заявили, что основные репозитории, исследовательские и тестовые среды, а также пользовательские данные не пострадали.
Параллельно с этим представители компании OpenAI сообщили, что вредоносная кампания и взлом TanStack затронули учетные записи двух ее сотрудников. В результате были похищены некоторые учетные данные и ограниченный набор исходников. После обнаружения инцидента в OpenAI перевыпустили сертификаты подписи кода и предупредили пользователей macOS о том, что старые версии десктопного приложения перестанут работать после 12 июня.
Однако и на этом история не закончилась. Спустя несколько дней после начала атак исследователи из компании Ox обнаружили на GitHub два репозитория с исходниками червя Shai-Hulud и сообщением от TeamPCP: «Is it vibe coded? Yes. Does it work? Let results speak» («Это вайбкодинг? Да. Он работает? Пусть результаты говорят сами за себя»). По словам экспертов, форки и модификации вредоноса начали появляться практически сразу.
Специалисты предупреждают, что публикация исходников может резко увеличить число копий червя, что приведет к новым атакам на цепочки поставок. Ситуация осложняется тем, что Shai-Hulud способен автоматически похищать токены GitHub и npm, загружать украденные данные в новые репозитории на GitHub и самостоятельно распространяться дальше.
«Теперь TeamPCP не просто распространяет вредоносное ПО, они распространяют возможности. Открыв исходный код, они предоставили любому желающему инструменты для создания собственного варианта [малвари]. И подражатели уже здесь», — пишут аналитики Ox.


