Исследователи из Socket обнаружили координированную атаку на цепочку поставок, получившую кодовое название TrapDoor, которая одновременно затронула три крупнейших реестра пакетов — npm, PyPI и Crates.io. По данным исследователей, кампания включает более 34 вредоносных пакетов в 384+ версиях, нацеленных на кражу криптовалютных кошельков, SSH-ключей, облачных учётных данных и переменных окружения. Разработчикам, работающим с криптовалютными проектами, инструментами DeFi, платформой Solana и средствами ИИ, рекомендуется немедленно проверить свои зависимости на наличие перечисленных ниже пакетов.
Масштаб и хронология кампании
По данным Socket, первая активность TrapDoor зафиксирована 22 мая 2026 года в 20:20 UTC. Новые пакеты публиковались волнами с кластера учётных записей в быстрой последовательности — тактика, типичная для координированных атак на цепочку поставок, когда злоумышленник стремится максимизировать охват до обнаружения.
Полный список вредоносных пакетов распределяется по экосистемам следующим образом:
- Crates.io (6 пакетов): move-analyzer-build, move-compiler-tools, move-project-builder, sui-framework-helpers, sui-move-build-helper, sui-sdk-build-utils
- npm (21 пакет): async-pipeline-builder, build-scripts-utils, chain-key-validator, crypto-credential-scanner, defi-env-auditor, defi-threat-scanner, deployment-key-auditor, dev-env-bootstrapper, eth-wallet-sentinel, llm-context-compressor, mnemonic-safety-check, model-switch-router, node-setup-helpers, project-init-tools, prompt-engineering-toolkit, solidity-deploy-guard, token-usage-tracker, wallet-backup-verifier, wallet-security-checker, web3-secrets-detector, workspace-config-loader
- PyPI (7 пакетов): cryptowallet-safety, data-pipeline-check, defi-risk-scanner, env-loader-cli, eth-security-auditor, git-config-sync, solidity-build-guard
Названия пакетов подобраны так, чтобы выглядеть как легитимные инструменты для криптовалютной разработки, аудита безопасности, настройки окружения и работы с ИИ. Пакеты в Crates.io целенаправленно имитируют инструменты экосистемы Sui и Move.
Техническая реализация по экосистемам
npm: общий полезный груз trap-core.js
Несколько npm-пакетов используют хуки postinstall для запуска общего JavaScript-модуля trap-core.js. Этот модуль выполняет следующие действия: сканирует файловую систему на наличие учётных данных и секретов разработчика, валидирует украденные токены AWS и GitHub через вызовы к соответствующим API, устанавливает персистентность через задания cron, сервисы systemd и хуки Git, а также осуществляет латеральное перемещение по сети через SSH.
Crates.io: эксфильтрация через GitHub Gists
Вредоносные Rust-пакеты используют механизм сборочных скриптов Cargo (build.rs) для запуска вредоносного кода на этапе компиляции. Малварь ищет локальные хранилища ключей, шифрует найденные данные с помощью жёстко закодированного XOR-ключа и отправляет их в GitHub Gists. Использование build.rs — штатного механизма Cargo — делает обнаружение вредоносной активности затруднительным без специализированного анализа.
PyPI: делегирование выполнения удалённому JavaScript
Python-пакеты автоматически исполняются при импорте. Их основная задача — загрузить JavaScript с домена злоумышленника ddjidd564.github[.]io (GitHub Pages) и выполнить его через node -e. Такой подход позволяет атакующему обновлять поведение вредоносного кода без публикации новых версий пакета на PyPI — достаточно изменить содержимое на GitHub Pages.
Атака на ИИ-ассистенты через отравление конфигурационных файлов
Наиболее нетривиальный элемент кампании — внедрение файлов .cursorrules и CLAUDE.md со скрытыми инструкциями, направленными на манипуляцию ИИ-ассистентами для программирования. Эти файлы содержат указания, побуждающие ИИ запустить «проверку безопасности», которая в действительности приводит к обнаружению и эксфильтрации секретов.
По данным Socket, злоумышленник открывал pull request в популярных проектах, связанных с ИИ, включая browser-use/browser-use, langchain-ai/langchain и langflow-ai/langflow. Исследователи предполагают, что атакующий тестировал возможность внедрения вредоносных конфигурационных файлов через стандартные рабочие процессы контрибуции в открытый код. Если такие файлы попадут в репозиторий, ИИ-инструменты для написания кода будут автоматически парсить скрытые инструкции и выполнять их. Эта оценка исходит от одного исследовательского источника и требует независимого подтверждения.
Индикаторы компрометации
- Домен: ddjidd564.github[.]io — используется для хостинга удалённых JavaScript-полезных нагрузок
- Файлы: trap-core.js — общий вредоносный модуль в npm-пакетах
- Механизмы персистентности: .cursorrules, CLAUDE.md, хуки Git, хуки оболочки, сервисы systemd, задания cron, конфигурация SSH
Оценка воздействия
Наибольшему риску подвержены разработчики, работающие с криптовалютными проектами, протоколами DeFi, блокчейном Solana, а также с инструментами ИИ. Компрометация рабочей станции разработчика может привести к утечке приватных ключей криптокошельков, облачных учётных данных AWS, токенов GitHub и SSH-ключей — что открывает путь для дальнейших атак на инфраструктуру организации. Механизм латерального перемещения через SSH означает, что единичная заражённая машина может стать точкой входа в корпоративную сеть.
Рекомендации
- Проверьте зависимости: выполните аудит файлов package.json, requirements.txt и Cargo.toml на наличие любого из 34 перечисленных пакетов. Удалите обнаруженные пакеты и все связанные артефакты.
- Ротация секретов: если вредоносный пакет был установлен, немедленно отзовите и перевыпустите все токены AWS, GitHub, SSH-ключи и мнемонические фразы криптокошельков, к которым имела доступ скомпрометированная система.
- Проверьте механизмы персистентности: осмотрите задания cron (
crontab -l), сервисы systemd, хуки Git в репозиториях (.git/hooks/), а также файлы .cursorrules и CLAUDE.md в корне проектов. - Заблокируйте домен: добавьте ddjidd564.github[.]io в списки блокировки на уровне DNS и прокси.
- Ревью pull request: при сопровождении проектов с открытым кодом проверяйте входящие PR на наличие файлов .cursorrules и CLAUDE.md с подозрительными инструкциями.
- Используйте инструменты анализа зависимостей: внедрите проверку пакетов на этапе CI/CD с помощью специализированных сканеров, способных выявлять подозрительные хуки postinstall, скрипты build.rs и автоисполнение при импорте.
Кампания TrapDoor демонстрирует конвергенцию двух тенденций: классического тайпсквоттинга пакетов и эксплуатации новых векторов через ИИ-ассистенты для разработки. Приоритетное действие — аудит зависимостей по приведённому списку пакетов с последующей ротацией всех секретов на затронутых системах. Команды, использующие ИИ-инструменты для написания кода (Cursor, Claude), должны дополнительно проверить свои репозитории на наличие несанкционированных конфигурационных файлов, способных направлять поведение ИИ-ассистентов.