Червь Mini Shai-Hulud захватывает 323 пакета npm менее чем за 30 минут с помощью одной украденной учетной записи

19 мая червь Mini Shai-Hulud взломал одну учетную запись сопровождающего npm и распространил 639 вредоносных версий в 323 пакета менее чем за 30 минут.
Скомпрометированная учетная запись «atool» (i@hust.cc) публикует весь стек визуализации данных @antv Alibaba вместе с автономными библиотеками, используемыми в криптопанельных панелях, интерфейсах DeFi и финтех-приложениях.
Цели с самым высоким трафиком: size-sensor — 4,2 миллиона загрузок в неделю, echarts-for-react — 1,1 миллиона, @antv/scale — 2,2 миллиона и timeago.js — 1,15 миллиона.
Проекты, использующие диапазоны semver, такие как ^3.0.6 для echarts-for-react, автоматически разрешаются во вредоносную версию 3.2.7 при следующей чистой установке. Мейнтейнер закрыл предупреждения безопасности GitHub в течение часа, похоронив их в закрытых задачах.
Что крадет полезная нагрузка и как она сохраняется
Вредоносная программа собирает более 20 типов учетных данных: ключи AWS через метаданные EC2 и ECS, токены Google Cloud и Azure, токены GitHub и npm, ключи SSH, учетные записи служб Kubernetes, секреты HashiCorp Vault, ключи API Stripe, строки подключения к базе данных и локальные хранилища паролей из 1Password и Bitwarden, согласно Socket.dev.
Эксфильтрация осуществляется по двум каналам. Украденные учетные данные шифруются с помощью AES-256-GCM и отправляются на сервер управления.
В качестве запасного варианта червь использует скомпрометированные токены GitHub для создания публичных репозиториев с названиями в стиле Дюны, например sardaukar-melange-742 или fremen-sandworm-315, а затем сохраняет украденные данные в виде файлов. StepSecurity сообщила, что более 2500 репозиториев GitHub уже содержат индикаторы, связанные с кампанией.
Кроме того, червь использует шифрование украденных данных в трассировках OpenTelemetry, передаваемых по протоколу HTTPS. На машинах под управлением Linux он устанавливает пользовательскую службу systemd, которая способна получать инструкции из GitHub даже после удаления пакета.
Червь модифицирует файлы конфигурации .vscode и .claude, чтобы обеспечить повторную активацию в средах разработки.
Кампания продолжает расти
Это третья волна. Как сообщал Cryptopolitan в январе, первоначальный вариант Shai-Hulud поразил пакеты npm Trust Wallet и причинил убытки в размере 8,5 миллионов долларов. Вторая волна поразила Mistral AI, TanStack, UiPath и Guardrails AI 11 мая.
Socket смог идентифицировать в общей сложности 1055 скомпрометированных версий в 502 различных пакетах с помощью npm, PyPI и Composer.
По данным исследователей Datadog, группа угроз, стоящая за кампанией, TeamPCP, продвигала свой инструмент на подпольных хакерских форумах. Появились версии-подражатели, в которых используются разные серверы управления и контроля, что затрудняет атрибуцию.
Генеральный директор SlowMist 23pds заявил, что любую среду, в которой установлены затронутые версии, следует рассматривать как полностью скомпрометированную.
Некоторые рекомендуемые действия включают отзыв всех токенов доступа, смену учетных данных для AWS, GitHub, npm и облачных провайдеров, внедрение многофакторной аутентификации для публикации учетных записей и проверку любой подозрительной активности в репозиториях.