Эволюция киберугроз в npm и Maven: самораспространяющийся червь Shai-Hulud и поддельный Jackson

Исследователи безопасности зафиксировали критическую эволюцию вредоносного ПО Shai-Hulud, которое трансформировалось в угрозу типа «червь» с возможностью самораспространения в реестре npm. Вектором атаки стал пакет @vietmoney/react-big-calendar, изначально загруженный пользователем hoquocdat еще в марте 2021 года. Инцидент был инициирован 28 декабря 2025 года, когда пакет обновился до вредоносной версии 0.26.2. Несмотря на то что общее число скачиваний за всё время составило 698, последняя зараженная версия уже успела набрать 197 загрузок, что, по мнению экспертов, указывает на стадию тестирования полезной нагрузки.
Эволюция киберугроз в npm и Maven: самораспространяющийся червь Shai-Hulud и поддельный Jackson
Изображение носит иллюстративный характер

Главной особенностью новой модификации Shai-Hulud стала способность автоматизировать масштаб компрометации. Злоумышленники используют украденные токены npm для извлечения 100 самых популярных пакетов разработчика, внедряют в них вредоносный код и повторно публикуют их в реестре. Этот механизм превращает жертву в невольного распространителя инфекции. Анализ кода показал, что это копирование предыдущих атак: различия в структуре указывают на доступ хакеров к исходному коду оригинала, который был повторно обфусцирован.

Технический анализ выявил, что начальным файлом цепочки заражения является bun_installer.js, который запускает основную полезную нагрузку environment_source.js. Украденные данные, включая API-ключи, учетные данные облачных сервисов и токены GitHub, эксфильтруются в репозиторий GitHub с описанием Goldox-T3chs: Only Happy Girl. Среди похищаемых файлов фигурируют 3nvir0nm3nt.json, cl0vd.json, c9nt3nts.json, pigS3cr3ts.json и actionsSecrets.json. В новой версии также улучшена обработка ошибок для тайм-аутов TruffleHog и оптимизирован процесс публикации в зависимости от операционной системы.

История атак Shai-Hulud прослеживается с сентября 2025 года. Вторая волна активности была зафиксирована в ноябре 2025 года, когда описание репозитория гласило: «Sha1-Hulud: The Second Coming» («Sha1-Hulud: Второе пришествие»). Исследователь безопасности Чарли Эриксен, комментируя ситуацию, подтверждает серьезность угрозы, отмечая методы обхода обнаружения и настойчивость атакующих в совершенствовании своих инструментов.

Параллельно с атакой на npm была обнаружена отдельная кампания в репозитории Maven Central, нацеленная на Java-разработчиков. Злоумышленники использовали технику тайпосквоттинга, загрузив пакет org.fasterxml.jackson.core/jackson-databind. Это имитация легитимной библиотеки Jackson JSON, которая находится в пространстве имен com.fasterxml.jackson.core. Подмена префикса com. на org. позволила разместить вредоносный код, содержащий маяк Cobalt Strike — инструмент симуляции атак, часто используемый хакерами для управления зараженными системами (C2).

Механизм атаки в Maven использует особенности Spring Boot. Как только разработчик добавляет вредоносный JAR-файл в pom.xml, Spring автоматически сканирует конфигурации и находит класс JacksonSpringAutoConfiguration. Благодаря аннотации @ConditionalOnClass({ApplicationRunner.class}), вредоносный код проходит проверку и запускается автоматически через ApplicationRunner без необходимости явного вызова функций разработчиком. Это делает атаку незаметной на этапе сборки и запуска приложения.

Инфраструктура злоумышленников была подготовлена заранее: домен fasterxml[.]org был зарегистрирован через регистратора GoDaddy 17 декабря 2025 года, примерно за неделю до обнаружения пакета в Maven (около 24 декабря). Вредоносная программа связывается с управляющим сервером по адресу m.fasterxml[.]org:51211 для получения URL-адреса зашифрованной полезной нагрузки. Исходный IP-адрес загрузки был идентифицирован как 103.127.243[.]82:8000.

Для обеспечения скрытности и предотвращения конфликтов вредоносное ПО использует механизм проверки окружения (kill switch). Если в системе обнаруживается файл .idea.pid (указывающий на работу среды разработки IntelliJ IDEA), программа прекращает выполнение, предполагая, что экземпляр уже запущен. В зависимости от операционной системы загружаются разные файлы: для Windows скачивается и выполняется svchosts.exe и для macOS — файл с именем update.

Компания Aikido, специализирующаяся на безопасности цепочек поставок, указала на фундаментальную проблему, позволившую осуществить атаку через Maven: невозможность обнаружения имитаторов, использующих схожие префиксы. Чарли Эриксен и эксперты Aikido сходятся во мнении, что для предотвращения подобных инцидентов репозиториям необходимо вести список особо ценных пространств имен и подвергать любые похожие названия дополнительной верификации.


Новое на сайте

20327Кости прерий: как истребление бизонов породило целую индустрию — и сама себя же уничтожила 20326Кто и зачем взламывает серверы Ollama и ComfyUI ради ключей от AWS? 20325Как злоумышленники спрятали командный сервер внутри блокчейна и почему его невозможно... 20324Брюссель заставляет Android делиться секретами с чужими ИИ-помощниками 20323WordPress: как два бага слились в одну критическую дыру, которую назвали wp2shell 20322Как китайские хакеры обманули DigiCert и украли сертификаты для подписи кода? 20321Что скрывается за уязвимостью, которую агентство США внесло в список активно используемых... 20320Автономные системы наступают быстрее, чем инфраструктура для управления ими: кто выиграет... 20319Почему в OpenSSL нашли дыру, съедающую память серверов, но не дали ей даже номер CVE? 20317SonicWall SMA 1000: как два бага превратили VPN-шлюз в бэкдор для атакующих 20316Может ли уязвимость в клиенте Zoom для Windows открыть доступ к чужому аккаунту без... 20315TELEPUZ: новый вредонос на C, который научился прятаться в Telegram, Steam и блокчейне... 20314Дома из дёрна: как исландцы триста лет прятались от холода под слоем земли и травы 20313Как один токен от чужого сервиса мог впустить злоумышленника в чужой аккаунт n8n?
Ссылка