PhantomRaven распространяется через вредоносные npm-пакеты
PhantomRaven, стилер информации на JavaScript, распространяется через вредоносные пакеты npm с опечатками в названиях. Вредоносное ПО нацелено на среды разработки и CI/CD, собирает системную информацию и переменные окружения, связанные с CI/CD, а затем передаёт данные по HTTP. Кампания, по всей видимости, направлена на компрометацию организаций и использование украденной информации для идентификации или поддержки отчётов в рамках программ bug bounty, а не на продажу учётных данных через рынки логов.
Распространение через пакеты npm
Как правило, вредоносные пакеты содержат безобидный на вид код, но определяют зависимость с HTTP-URL, указывающим на инфраструктуру, контролируемую злоумышленниками. Во время установки npm загружает удалённую зависимость с полезной нагрузкой PhantomRaven. В неё входит скрипт preinstall, который автоматически выполняется в затронутых конфигурациях npm.
Среди обнаруженных вредоносных пакетов исследователи называют transform-jsbi-to-bigint и sort-imports-es6-autofix. Связанные с ними аккаунты npm публиковали пакеты со ссылками на удалённые динамические зависимости, указывающие на домен npm.jpartifacts.com. В ноябре 2025 года этот домен использовался в качестве инфраструктуры управления.
В июне 2026 года npm внедрил механизмы контроля, предназначенные для блокировки скриптов установки зависимостей, если они не были явно одобрены. Это снижает вероятность автоматического выполнения таких скриптов.
Оператор также разработал связанный стилер на базе Python для распространения через PyPI. По оценке исследователей, это свидетельствует о повторном использовании подхода, основанного на путанице зависимостей и злоупотреблении пакетами, в различных экосистемах.
Сбор и передача данных
PhantomRaven собирает системную информацию и переменные окружения, связанные с CI/CD, вероятно, для получения учётных данных или других секретов. Вредоносное ПО выполняет запрос к api64.ipify.org?format=json, чтобы определить внешний IP-адрес жертвы.
Собранные данные передаются с помощью HTTP-запросов GET и POST. В GET-запросах информация размещается в параметре строки запроса, а в POST-запросах сериализуется в формате JSON в теле запроса. Для POST-трафика используется минимальный заголовок User-Agent со значением Mozilla/5.0 (Windows NT 10.0; Win64; x64).
В коде присутствует незавершённая процедура передачи данных через WebSocket, настроенная на использование адреса wss://yourserver.com/socket. По всей видимости, это неиспользуемый плейсхолдер, а не действующая инфраструктура.
Многословные комментарии в коде, заглушки, необычные двойные методы передачи данных по HTTP и статистические закономерности токенов указывают на то, что вредоносное ПО, вероятно, сгенерировали с помощью большой языковой модели. Общий инструментарий технически прост. Публикация вредоносных пакетов и генерация кода с помощью ИИ снижают порог входа для атак на среды разработки программного обеспечения.
Отчет получен из сервиса CTT Report Hub. Права на отчет принадлежат его владельцу.
Ознакомиться подробнее с отчетом можно по ссылке.



