
Вредоносный пакет NPM похищает приватные ключи, активы пользователей Solana украдены
Автор: Thinking
Редактор: Liz
Предистория
2 июля 2025 года жертва обратилась в команду безопасности SlowMist за помощью в расследовании причин кражи активов из кошелька. Инцидент произошел после того, как днем ранее он использовал открытый проект, размещенный на GitHub, — zldp2002/solana-pumpfun-bot, после чего его криптоактивы были похищены.
Ход анализа
Мы немедленно приступили к расследованию инцидента. Сначала мы посетили репозиторий проекта на GitHub: https://github.com/zldp2002/solana-pumpfun-bot. Можно заметить, что показатели Stars и Forks у него достаточно высокие, однако время коммитов во всех каталогах проекта сосредоточено примерно три недели назад, что является явным аномальным признаком и указывает на отсутствие регулярной активности, характерной для нормально развивающихся проектов.

Это проект на базе Node.js. Мы начали с анализа зависимостей и обнаружили, что он ссылается на сторонний пакет под названием crypto-layout-utils.

При более глубокой проверке выяснилось, что этот пакет зависимости был удален из официального реестра NPM, а указанная версия в package.json отсутствует в официальной истории публикаций. Первоначально мы классифицировали данный пакет как подозрительный, и скачать его через официальный источник NPM стало невозможно. Таким образом, каким образом жертва смогла получить эту вредоносную зависимость?

При дальнейшем изучении проекта мы нашли ключевую зацепку в файле package-lock.json: злоумышленники заменили ссылку для скачивания crypto-layout-utils на: https://github.com/sjaduwhv/testing-dev-log/releases/download/1.3.1/crypto-layout-utils-1.3.1.tgz.

Мы скачали этот подозрительный пакет зависимости: crypto-layout-utils-1.3.1 и обнаружили, что это код, подвергшийся сильному смешиванию с помощью инструмента jsjiami.com.v7, что значительно усложняет анализ.


После деобфускации мы подтвердили, что это вредоносный пакет NPM. Злоумышленники внедрили в crypto-layout-utils-1.3.1 логику сканирования файлов компьютера жертвы: при обнаружении содержимого или файлов, связанных с кошельками или приватными ключами, они автоматически загружаются на сервер под контролем атакующих (githubshadow.xyz).
Сканирование чувствительных файлов и директорий вредоносным пакетом NPM:

Загрузка данных или файлов, содержащих приватные ключи, вредоносным пакетом NPM:

При дальнейшем изучении тактики атаки мы установили, что автор проекта (https://github.com/zldp2002/, вероятно, управляет группой аккаунтов GitHub, которые используются для создания Fork вредоносных проектов и их распространения. Одновременно это делается для искусственной накрутки показателей Fork и Star, чтобы привлечь больше пользователей и расширить охват распространения вредоносного ПО.

Кроме того, мы выявили, что несколько форков также содержат аналогичное вредоносное поведение, причем некоторые версии используют другой вредоносный пакет bs58-encrypt-utils-1.0.3.
Данный вредоносный пакет был создан 12 июня 2025 года. Вероятно, именно тогда атакующие начали распространять вредоносные пакеты NPM и проекты на Node.js. Однако после удаления bs58-encrypt-utils из реестра NPM злоумышленники перешли на схему распространения через замену прямых ссылок для скачивания пакетов NPM.

Кроме того, с помощью инструмента для цепочечного отслеживания и противодействия отмыванию денег MistTrack мы выяснили, что один из адресов атакующих после кражи криптовалюты перевел средства на платформу FixedFloat.

Заключение
В ходе данной атаки злоумышленники маскировались под легитимный открытый проект (solana-pumpfun-bot), заманивая пользователей для загрузки и запуска вредоносного кода. На фоне искусственно накрученной популярности проекта пользователи без опасений запускали проект Node.js с вредоносными зависимостями, что привело к утечке приватных ключей от кошельков и краже активов.
Вся цепочка атаки включала скоординированные действия множества аккаунтов GitHub, что расширило охват распространения, повысило доверие к проекту и сделало атаку крайне обманчивой. Подобные угрозы сочетают социальную инженерию и технические методы, из-за чего их крайне сложно полностью предотвратить даже внутри организаций.
Мы рекомендуем разработчикам и пользователям проявлять максимальную осторожность при работе с неподтвержденными проектами на GitHub, особенно если они затрагивают работу с кошельками или приватными ключами. Если необходимо запустить или отладить такой код, рекомендуется делать это в изолированной среде без доступа к чувствительным данным.
Информация о вредоносных пакетах зависимостей
Репозитории GitHub с вредоносными проектами Node.js:
2723799947qq2022/solana-pumpfun-bot
2kwkkk/solana-pumpfun-bot
790659193qqch/solana-pumpfun-bot
7arlystar/solana-pumpfun-bot
918715c83/solana-pumpfun-bot
AmirhBeigi7zch6f/solana-pumpfun-bot
asmaamohamed0264/solana-pumpfun-bot
bog-us/solana-pumpfun-bot
edparker89/solana-pumpfun-bot
ii4272/solana-pumpfun-bot
ijtye/solana-pumpfun-bot
iwanjunaids/solana-pumpfun-bot
janmalece/solana-pumpfun-bot
kay2x4/solana-pumpfun-bot
lan666as2dfur/solana-pumpfun-bot
loveccat/solana-pumpfun-bot
lukgria/solana-pumpfun-bot
mdemetrial26rvk9w/solana-pumpfun-bot
oumengwas/solana-pumpfun-bot
pangxingwaxg/solana-pumpfun-bot
Rain-Rave5/solana-pumpfun-bot
wc64561673347375/solana-pumpfun-bot
wj6942/solana-pumpfun-bot
xnaotutu77765/solana-pumpfun-bot
yvagSirKt/solana-pumpfun-bot
VictorVelea/solana-copy-bot
Morning-Star213/Solana-pumpfun-bot
warp-zara/solana-trading-bot
harshith-eth/quant-bot
Вредоносные пакеты NPM:
crypto-layout-utils
bs58-encrypt-utils
Ссылки для скачивания вредоносных пакетов NPM:
https://github.com/sjaduwhv/testing-dev-log/releases/download/1.3.1/crypto-layout-utils-1.3.1.tgz
Сервер для загрузки данных вредоносными пакетами NPM:
githubshadow.xyz
Присоединяйтесь к официальному сообществу TechFlow
Telegram:https://t.me/TechFlowDaily
X (Twitter):https://x.com/TechFlowPost
X (Twitter) EN:https://x.com/BlockFlow_News















