24 ноября 2025 года обнаружена масштабная и технологически продвинутая кампания распространения вредоносного ПО под названием Shai-Hulud версии 2 (Shai-Hulud V2). Операторы называют эту кампанию «Вторым пришествием». По объёму и методикам она представляет собой серьёзную эволюцию по сравнению с предыдущей версией Shai-Hulud V1 и несёт прямую угрозу экосистеме npm и связанным облачным и CI/CD-инфраструктурам.
Краткие факты
- Дата выявления: 24 ноября 2025 года.
- За первые часы после обнаружения скомпрометировано более 700 пакетов npm.
- Создано свыше 27 000 вредоносных репозиториев на GitHub.
- Обнаружено около 14 000 секретов в репозиториях принадлежащих 487 организациям.
- Операторы называют кампанию «Вторым пришествием».
Чем Shai-Hulud V2 отличается от V1
Ключевое тактическое изменение — переход от перехватчиков после установки (post-install interceptors) к использованию скриптов жизненного цикла предустановки (preinstall lifecycle script). Это означает, что вредоносный код может выполняться ещё до успешного завершения установки пакета, что повышает вероятность успешного внедрения даже при сбоях установки.
Механика атак и ключевые функции
- Использование Bun: вредоносный установочный скрипт применяет Bun — высокопроизводительную среду выполнения JavaScript — для выполнения ряда операций, что повышает скорость и надёжность выполнения кода.
- Адаптивное выполнение: Shai-Hulud V2 автоматически определяет окружение и подстраивает поведение, выбирая оптимальные инструменты и стратегии для добычи данных и распространения.
- Сбор учётных данных: реализован механизм сбора учетных данных различных платформ, включая AWS, GCP и Azure.
- Неправильное использование TruffleHog: вредонос использует TruffleHog (open-source инструмент для поиска секретов) для сканирования домашних каталогов пользователей в поисках конфиденциальной информации.
- Эксфильтрация через GitHub: вместо традиционных C2 (command-and-control) серверов злоумышленники используют скомпрометированные токены для отправки украденных данных в вновь созданные репозитории GitHub, маскируя утечку под легитимную активность на платформе.
- Реиспользование данных предыдущих жертв: полученные учетные данные могут быть переработаны и использованы для атаки на новые цели.
- Червеобразное распространение: автоматизация распространения по экосистеме npm с применением действительных npm-токенов.
- Устойчивая долгоживущая эксплуатация: установка автономных GitHub Actions-раннеров и создание вредоносных workflow-файлов для выполнения удалённого кода на постоянной основе и обхода обнаружения.
- Сбор секретов GitHub Actions: развертывание рабочих процессов, которые собирают секреты действий GitHub и упаковывают их в JSON-артефакт для облегчения поиска и последующей обработки.
- Функция «dead man’s switch»: механизм уничтожения данных (data destruction), срабатывающий при потере доступа к GitHub и npm, усложняющий судебно-медицинский анализ и восстановление.
- Поддержка Azure DevOps: специализированная логика для использования агентов сборки Azure DevOps на Linux-системах, что расширяет векторы атак за пределы только npm/GitHub.
Тактика маскировки и затруднение обнаружения
Одно из заметных изменений — эксфильтрация данных через GitHub-репозитории с использованием легитимных токенов. Такой подход затрудняет обнаружение, поскольку трафик и операции выглядят как обычная активность разработчиков. Кроме того, использование рабочих процессов и автономных раннеров позволяет поддерживать долговременный доступ и выполнять команды без прямой связи с внешними C2-инфраструктурами.
«Использование GitHub как канала эксфильтрации и Bun для исполнения делает Shai-Hulud V2 особенно устойчивым и трудно детектируемым в современных цепочках поставок»
Последствия для организаций и экосистемы
- Утечка секретов и учётных данных облачных провайдеров (AWS, GCP, Azure) может привести к компрометации инфраструктур и финансовым потерям.
- Скомпрометированные npm-пакеты угрожают тысячам проектов, которые зависят от публичных пакетов.
- Автоматизированное червеобразное распространение способно быстро увеличить масштаб инцидента.
- Функция уничтожения данных и использование легитимных платформ для эксфильтрации затрудняют реагирование и судебно-медицинское расследование.
Рекомендации для разработчиков и организаций
- Проверить и при необходимости отозвать все скомпрометированные токены и ключи доступа (GitHub, npm, облачные провайдеры).
- Провести аудит зависимостей npm и проверить пакеты на наличие preinstall-скриптов и подозрительной активности.
- Ограничить привилегии токенов и использовать принцип наименьших привилегий для CI/CD-агентов и npm-токенов.
- Контролировать и логировать создание новых репозиториев в организации и аномалии в GitHub Actions.
- Провести сканирование рабочих станций пользователей на предмет присутствия вредоносных установочных скриптов и артефактов Bun-исполнения.
- Внедрить защиту секретов (секреты в хранилищах, автоматическое вращение ключей) и мониторинг их доступа.
- Подготовить планы реагирования, включающие этапы изоляции, отзыв токенов и восстановление из надёжных резервных копий в случае срабатывания dead man’s switch.
Вывод
Shai-Hulud V2 — это серьёзная, эволюционировавшая угроза цепочке поставок в экосистеме npm и связанных CI/CD и облачных средах. Комбинация адаптивного исполнения, использования Bun, эксфильтрации через GitHub и возможностей для широкого автоматизированного распространения делает кампанию высокоэффективной и трудно детектируемой. Немедленные меры по аудиту, отзыву токенов и ужесточению контроля CI/CD-процессов критически важны для снижения риска.
Отчет получен из сервиса CTT Report Hub. Права на отчет принадлежат его владельцу.
Ознакомиться подробнее с отчетом можно по ссылке.
Оригинал публикации на сайте CISOCLUB: "Shai-Hulud V2: новая угроза цепочке поставок npm".
Смотреть публикации по категориям: Новости | Мероприятия | Статьи | Обзоры | Отчеты | Интервью | Видео | Обучение | Вакансии | Утечки | Уязвимости | Сравнения | Дайджесты | Прочее.
Подписывайтесь на нас: VK | Rutube | Telegram | Дзен | YouTube.