Shai-Hulud проник в 100 репозиториев через сессию ИИ-ассистента

Mandiant сообщила о компрометации неназванного SaaS-поставщика, где атакующий захватил активную сессию ИИ-ассистента для программирования и распространил червя Shai-Hulud примерно по 100 внутренним репозиториям. В результате были похищены секреты репозиториев и исходный код продуктов компании.
Перед распространением по репозиториям ассистент рекомендовал программное обеспечение, которое злоумышленник предварительно скомпрометировал. Рекомендацию приняли, после чего атакующий воспользовался действующей сессией разработчика.
Как развивалась атака
Через отравленный пакет в PyPI злоумышленник установил инфостилер и получил GitHub OAuth-токены. Затем он развернул самораспространяющийся Shai-Hulud во внутренних репозиториях компании.
Атакующий также скомпрометировал пакет в официальном пространстве имён организации. Другой сотрудник загрузил заражённую версию, что привело ко второму случаю заражения.
Публичное описание Mandiant не раскрывает ни время первоначального проникновения, ни способ захвата активной сессии ИИ-ассистента. Этот эпизод включён в сентябрьский отчёт компании за 2026 год.
Что меняется в защите разработки
Mandiant рекомендует проверять сторонние зависимости, предложенные ИИ, по криптографическим контрольным суммам и утверждённым спискам разрешённых пакетов. Сырым API-ключам, долгоживущим OAuth-токенам и другим секретам не следует давать прямой доступ расширениям.
Трафик зависимостей стоит направлять через контролируемые внутренние репозитории. Такой подход позволяет проверять пакеты до того, как они попадут в среду разработки.
Контекст кампаний Shai-Hulud
Mandiant ранее отмечала, что в 2025 году злоумышленники перешли от использования генеративного ИИ для ускорения отдельных задач к применению больших языковых моделей в вредоносном ПО и активных атаках.
В августе червь, связанный с Keyv в npm, заразил сотни пакетов и установил хуки для Claude Code и Visual Studio Code. Отдельный вариант Shai-Hulud, согласно более позднему анализу, искал учётные данные в 469 расположениях на системах разработчиков, в CI/CD-инструментах, облачных конфигурациях и файлах ИИ-инструментов. Эти кампании не связаны доступными доказательствами с описанным Mandiant инцидентом.
Практический вывод для бизнеса: рекомендации ИИ-ассистента по зависимостям нужно обрабатывать как внешний код и пропускать через те же проверки пакетов, секретов и токенов, что и любые другие поставки в цепочке разработки.

