Каждый такой пакет содержит всего три файла: package.json, index.js и postinstall.js. В них нет ни описания, ни ссылок на репозиторий, ни домашней страницы. Разработчики, стоящие за этой кампанией, намеренно указали версию 3.6.8, чтобы пакеты казались зрелыми и надёжными плагинами для Strapi v3, созданными силами сообщества. Об этом сообщает компания SafeDep, занимающаяся анализом безопасности пакетов.
Все вредоносные пакеты имеют одинаковую структуру имени: они начинаются с приставки strapi-plugin-, за которой следуют такие слова, как cron, database или server. Такая тактика рассчитана на невнимательных разработчиков, которые могут случайно установить подделку вместо официального плагина. Важно помнить: настоящие плагины Strapi всегда имеют область видимости @strapi/ и выглядят иначе.
Пакеты загружались с четырёх поддельных аккаунтов: umarbek1233, kekylf12, tikeqemif26 и umar_bektembiev1. Весь процесс занял всего тринадцать часов. Вот полный список заражённых компонентов (все они уже удалены из реестра, но могли попасть в проекты):
strapi-plugin-cron
strapi-plugin-config
strapi-plugin-server
strapi-plugin-database
strapi-plugin-core
strapi-plugin-hooks
strapi-plugin-monitor
strapi-plugin-events
strapi-plugin-logger
strapi-plugin-health
strapi-plugin-sync
strapi-plugin-seed
strapi-plugin-locale
strapi-plugin-form
strapi-plugin-notify
strapi-plugin-api
strapi-plugin-sitemap-gen
strapi-plugin-nordica-tools
strapi-plugin-nordica-sync
strapi-plugin-nordica-cms
strapi-plugin-nordica-api
strapi-plugin-nordica-recon
strapi-plugin-nordica-stage
strapi-plugin-nordica-vhost
strapi-plugin-nordica-deep
strapi-plugin-nordica-lite
strapi-plugin-nordica
strapi-plugin-finseven
strapi-plugin-hextest
strapi-plugin-cms-tools
strapi-plugin-content-sync
strapi-plugin-debug-tools
strapi-plugin-health-check
strapi-plugin-guardarian-ext
strapi-plugin-advanced-uuid
strapi-plugin-blurhash
Если внимательно изучить эти пакеты, становится видно, что вредоносный код спрятан внутри сценария postinstall. Он запускается автоматически в момент выполнения команды npm install — без каких-либо действий со стороны пользователя. Скрипт выполняется с теми же правами, что и у человека, который устанавливает пакет. Это особенно опасно в средах непрерывной интеграции (CI/CD) и внутри Docker-контейнеров, где нередко используются права root.
Что именно делали эти вредоносные программы? Их эволюция выглядит так:
Сначала злоумышленники атаковали локальный экземпляр Redis. Они внедряли запись в планировщик задач crontab, который каждую минуту скачивал и запускал shell-скрипт с удалённого сервера. Тот, в свою очередь, записывал PHP-веб-шелл и Node.js-обратную оболочку в публичную директорию загрузки Strapi. Кроме того, скрипт сканировал диск на предмет секретов — например, ключей Elasticsearch или фраз-паролей от криптовалютных кошельков, а также выгружал модуль API Guardarian.
Затем атака усложнилась: эксплуатация Redis была дополнена побегом из Docker-контейнера. Это позволяло записать вредоносные скрипты на хост-систему, за пределами контейнера. Параллельно запускалась прямая обратная оболочка на Python через порт 4444, а через Redis в папку node_modules приложения записывался ещё один триггер для обратного подключения.
Далее последовало развёртывание классического reverse shell и загрузчика скриптов через Redis с последующим исполнением полученного файла.
Следующий этап — разведка: сканирование переменных окружения системы и строк подключения к PostgreSQL.
Потом появился расширенный сборщик учётных данных. Он выгружал дампы окружения, настройки Strapi, извлекал данные из Redis с помощью команд INFO, DBSIZE и KEYS, строил карту сетевой топологии, воровал секреты Docker и Kubernetes, криптографические ключи и файлы криптокошельков.
Далее началась прямая атака на PostgreSQL. Злоумышленники подключались к целевой базе данных, используя жёстко заданные пароли, и выполняли запросы к таблицам Strapi в поисках чувствительной информации. Особый интерес вызывали любые данные, связанные с криптовалютами: кошельки, транзакции, депозиты, вывод средств, горячие и холодные хранилища, балансы. Кроме того, вредонос пытался подключиться сразу к шести базам данных Guardarian. Это говорит о том, что атакующие уже имели доступ к этим данным — либо через предыдущую атаку, либо другим способом.
Затем в ход пошёл постоянный имплант. Он был рассчитан на удалённое управление конкретным хостом с именем prod-strapi. Такой подход позволяет удерживать контроль над системой неделями и месяцами.
Финальный этап — кража учётных данных через сканирование заранее известных путей на диске и запуск устойчивой обратной оболочки.
Как отмечают в SafeDep, все эти восемь этапов выстраиваются в чёткую картину: атакующий начал агрессивно — с удалённого выполнения кода на Redis и побега из Docker. Когда эти методы перестали приносить результат, он переключился на разведку и кражу данных, затем использовал встроенные пароли для прямого доступа к базам данных и в итоге остановился на постоянном невидимом присутствии с точечным хищением учётных данных.
Учитывая, что основная цель — цифровые активы, а в коде встречаются жёстко прописанные пароли от БД и имя хоста, исследователи склоняются к версии о целенаправленной атаке на криптовалютную платформу. Всем, кто установил хотя бы один из перечисленных пакетов, настоятельно рекомендуют считать свою среду скомпрометированной и немедленно сменить все пароли, ключи и токены.
Это открытие совпало с целой волной атак на цепочки поставок в open-source экосистеме:
Аккаунт на GitHub под именем ezmtebo отправил более 256 пулл-реквестов в разные репозитории. В каждом — код для кражи секретов через логи CI, комментарии в пулл-реквестах, автоматическую подмену меток и фоновый сканер процессов.
Был взломан верифицированный GitHub-орг «dev-protocol», через который распространялись вредоносные торговые боты для Polymarket с опечаточными npm-зависимостями (ts-bign, levex-refa и другие). Они воровали приватные ключи от кошельков, файлы и открывали SSH-люк.
Популярный пакет Emacs kubernetes-el был скомпрометирован через уязвимость Pwn Request в GitHub Actions. Злоумышленники украли токен репозитория, выгрузили секреты CI/CD, испортили содержимое и удалили почти все файлы.
В легитимном GitHub Actions xygeni/xygeni-action с помощью украденных учётных данных посадили обратную оболочку.
Пакет mgc в npm перехватили через захват аккаунта и выпустили четыре версии с дроппером, который под операционную систему скачивал Python-трояна для Linux или PowerShell-версию для Windows под названием WAVESHAPER.V2. Эта атака совпадает с недавней атакой на Axios, приписываемой северокорейской группе UNC1069.
Пакет express-session-js (опечатка в express-session) содержал дроппер, который загружал следующую стадию — RAT через JSON Keeper для кражи данных и постоянного доступа.
В PyPI пакет bittensor-wallet версии 4.0.2 развернул бэкдор, активирующийся при расшифровке кошелька. Ключи уходили через HTTPS, DNS-туннели и Raw TLS на жёстко заданный домен или генерируемый ежедневно.
Пакет pyronut (подделка под pyrogram) встраивал скрытый бэкдор, который запускался при каждом старте Telegram-клиента и позволял двум аккаунтам злоумышленников выполнять произвольный Python-код и команды оболочки.
Три расширения для VS Code от IoliteLabs (solidity-macos, solidity-windows, solidity-linux) бездействовали с 2018 года, но 25 марта 2026 года обновились и начали устанавливать многоступенчатый бэкдор.
Расширение KhangNghiem/fast-draft в Open VSX выпускало загрузчик с GitHub, который разворачивал RAT через Socket.IO, кражу информации, выгрузку файлов и мониторинг буфера обмена. Причём некоторые версии были чистыми, что указывает на конкурирующие потоки релизов от одного издателя.
В отчёте Group-IB за февраль 2026 года говорится, что атаки на цепочки поставок стали доминирующей силой в ландшафте киберугроз. Злоумышленники атакуют доверенных вендоров, открытое ПО, SaaS-платформы, расширения браузеров и поставщиков управляемых услуг, чтобы получить доступ сразу к сотням организаций.
Одна локальная атака может за считанные часы перерасти в инцидент международного масштаба. Репозитории пакетов вроде npm и PyPI превратились в главные цели: кража учётных записей мейнтейнеров и автоматизированные черви позволяют превратить конвейеры разработки в крупные каналы распространения вредоносного кода.