Исследовательская группа Socket Research Team сообщила изданию The Hacker News о начале второй волны масштабной атаки на цепочки поставок, получившей название Shai-Hulud. В обновленном отчете, опубликованном во вторник, эксперты отметили агрессивное распространение вредоносного ПО, которое вышло за пределы экосистемы JavaScript (npm) и проникло в среду Java (Maven). Атака характеризуется как самовоспроизводящаяся, скрытная и разрушительная, использующая червеобразные механизмы для масштабирования заражения.

Хронология инцидента берет начало в августе 2025 года, когда стартовала широкая кампания S1ngularity, затронувшая пакеты Nx в реестре npm. Первоначальный вариант цепочки заражения Shai-Hulud был зафиксирован в сентябре 2025 года. Новая фаза атаки, обозначенная как v2, продемонстрировала значительную эволюцию методов злоумышленников, направленную на обход существующих систем безопасности и расширение поверхности атаки.
Масштаб поражения в экосистеме npm превысил 830 скомпрометированных пакетов. Злоумышленники публиковали троянизированные версии библиотек через взломанные учетные записи сопровождающих (мейнтейнеров). Однако наиболее тревожным событием стало выявление первого скомпрометированного пакета в среде Maven:
Реакция со стороны администраторов Maven Central последовала незамедлительно. К 22:44 UTC 25 ноября 2025 года было подтверждено, что все зеркальные копии скомпрометированного пакета были удалены. В дополнение к чистке репозитория, Maven Central внедряет дополнительные меры защиты для предотвращения повторной сборки и распространения известных зараженных компонентов npm в среде Java.
Техническая реализация атаки включает внедрение двух ключевых вредоносных компонентов: загрузчика "setup_bun.js" и основной полезной нагрузки "bun_environment.js". Инфекция эксплуатирует неправильные конфигурации непрерывной интеграции (CI) в существующих GitHub Actions, нацеливаясь на триггеры
Процесс заражения начинается с загрузки разработчиками инфицированных библиотек, после чего вредоносный код устанавливает бэкдор на машине жертвы. Скрипт сканирует систему на наличие секретов, включая API-ключи, облачные учетные данные, токены npm и GitHub, а затем эксфильтрует данные. Вредоносное ПО регистрирует машину жертвы как "self-hosted runner" (саморазмещенный раннер), что позволяет выполнять произвольные команды при открытии GitHub Discussion, и систематически собирает конфиденциальную информацию.
Новая версия Shai-Hulud v2 получила ряд технических усовершенствований для повышения скрытности и эффективности. Ропен Славин и Рони Кузницки из компании Cycode отметили использование среды выполнения Bun для сокрытия основной логики вредоносной программы. Лимит инфекции был увеличен с 20 до 100 пакетов, а для эксфильтрации данных теперь используются случайно названные публичные репозитории GitHub, вместо единственного жестко закодированного репозитория, что усложняет блокировку каналов утечки.
Общее влияние атаки оценивается как критическое: затронуто более 28 000 репозиториев, а в GitHub было загружено более 5 000 файлов, содержащих украденные секреты. Среди скомпрометированных проектов оказались такие крупные имена, как AsyncAPI, Postman и PostHog (релизы последнего пострадали как в npm, так и в Maven). Надав Шаркази, менеджер по продукту в Apiiro, назвал этот инцидент одной из самых значимых атак года.
Дэн Лоренц, соучредитель и генеральный директор Chainguard, прокомментировал ситуацию, подчеркнув хрупкость современной разработки. По его мнению, единственной реальной защитой является изменение способов создания и потребления программного обеспечения, поскольку подобные атаки используют пробелы в процессах публикации и упаковки, а не уязвимости нулевого дня.
Для нейтрализации угрозы пользователям рекомендуется немедленно провести ротацию всех токенов и ключей, а также выполнить полный аудит зависимостей. Необходимо удалить скомпрометированные версии библиотек и переустановить чистые пакеты. В качестве долгосрочных мер защиты эксперты советуют ужесточить среды разработки: внедрить принцип наименьших привилегий, использовать сканирование секретов и применять автоматизированное соблюдение политик безопасности в CI/CD конвейерах.

Изображение носит иллюстративный характер
Хронология инцидента берет начало в августе 2025 года, когда стартовала широкая кампания S1ngularity, затронувшая пакеты Nx в реестре npm. Первоначальный вариант цепочки заражения Shai-Hulud был зафиксирован в сентябре 2025 года. Новая фаза атаки, обозначенная как v2, продемонстрировала значительную эволюцию методов злоумышленников, направленную на обход существующих систем безопасности и расширение поверхности атаки.
Масштаб поражения в экосистеме npm превысил 830 скомпрометированных пакетов. Злоумышленники публиковали троянизированные версии библиотек через взломанные учетные записи сопровождающих (мейнтейнеров). Однако наиболее тревожным событием стало выявление первого скомпрометированного пакета в среде Maven:
org.mvnpm:posthog-node:4.18.1. Важно отметить, что данный пакет не был опубликован компанией PostHog напрямую; он был сгенерирован через mvnpm — автоматизированный процесс, пересобирающий пакеты npm в артефакты Maven. Реакция со стороны администраторов Maven Central последовала незамедлительно. К 22:44 UTC 25 ноября 2025 года было подтверждено, что все зеркальные копии скомпрометированного пакета были удалены. В дополнение к чистке репозитория, Maven Central внедряет дополнительные меры защиты для предотвращения повторной сборки и распространения известных зараженных компонентов npm в среде Java.
Техническая реализация атаки включает внедрение двух ключевых вредоносных компонентов: загрузчика "setup_bun.js" и основной полезной нагрузки "bun_environment.js". Инфекция эксплуатирует неправильные конфигурации непрерывной интеграции (CI) в существующих GitHub Actions, нацеливаясь на триггеры
pull_request_target и workflow_run. По словам исследователя безопасности Ильяса Макари из Aikido, злоумышленники «использовали рискованный триггер pull_request_target таким образом, который позволял выполнять код, предоставленный любым новым запросом на слияние (pull request)». Процесс заражения начинается с загрузки разработчиками инфицированных библиотек, после чего вредоносный код устанавливает бэкдор на машине жертвы. Скрипт сканирует систему на наличие секретов, включая API-ключи, облачные учетные данные, токены npm и GitHub, а затем эксфильтрует данные. Вредоносное ПО регистрирует машину жертвы как "self-hosted runner" (саморазмещенный раннер), что позволяет выполнять произвольные команды при открытии GitHub Discussion, и систематически собирает конфиденциальную информацию.
Новая версия Shai-Hulud v2 получила ряд технических усовершенствований для повышения скрытности и эффективности. Ропен Славин и Рони Кузницки из компании Cycode отметили использование среды выполнения Bun для сокрытия основной логики вредоносной программы. Лимит инфекции был увеличен с 20 до 100 пакетов, а для эксфильтрации данных теперь используются случайно названные публичные репозитории GitHub, вместо единственного жестко закодированного репозитория, что усложняет блокировку каналов утечки.
Общее влияние атаки оценивается как критическое: затронуто более 28 000 репозиториев, а в GitHub было загружено более 5 000 файлов, содержащих украденные секреты. Среди скомпрометированных проектов оказались такие крупные имена, как AsyncAPI, Postman и PostHog (релизы последнего пострадали как в npm, так и в Maven). Надав Шаркази, менеджер по продукту в Apiiro, назвал этот инцидент одной из самых значимых атак года.
Дэн Лоренц, соучредитель и генеральный директор Chainguard, прокомментировал ситуацию, подчеркнув хрупкость современной разработки. По его мнению, единственной реальной защитой является изменение способов создания и потребления программного обеспечения, поскольку подобные атаки используют пробелы в процессах публикации и упаковки, а не уязвимости нулевого дня.
Для нейтрализации угрозы пользователям рекомендуется немедленно провести ротацию всех токенов и ключей, а также выполнить полный аудит зависимостей. Необходимо удалить скомпрометированные версии библиотек и переустановить чистые пакеты. В качестве долгосрочных мер защиты эксперты советуют ужесточить среды разработки: внедрить принцип наименьших привилегий, использовать сканирование секретов и применять автоматизированное соблюдение политик безопасности в CI/CD конвейерах.