Данные кошельков Solana, Sui и Aptos подверглись атаке пакета TrapDoor

Новая кампания по краже криптовалют нацелена на разработчиков, которые, скорее всего, имеют на своих машинах ключи кошелька, облачные учетные данные и доступ к рабочей среде.
Ранее на этой неделе исследователи из охранной компании Socket заявили, что обнаружили атаку на цепочку поставок под названием TrapDoor, распространившуюся на три основных реестра программ с открытым исходным кодом и содержащую более 34 вредоносных пакетов и сотни связанных версий и артефактов.
Ключевой вывод заключается в том, что злоумышленники становятся более сосредоточенными. Помимо социальной инженерии, нацеленной на лиц, владеющих ключевой информацией, атаки на цепочки поставок направлены не на случайных розничных пользователей, а на разработчиков. Это те самые люди, у которых могут быть файлы кошелька, ключи SSH, токены GitHub, облачные учетные данные и производственный доступ на той же машине, которую они используют для создания инструментов шифрования и искусственного интеллекта.
Socket не назвал жертв или украденные средства, но сообщил, что пакеты были доступны через npm, PyPI и Crates.io и содержали полезную нагрузку, которая могла украсть данные кошелька, украсть учетные данные, протестировать токены AWS и GitHub и оставить файлы, чтобы поддерживать активный доступ.
Пакеты, написанные на JavaScript, Python и Rust, были замаскированы под помощники разработчика, сканеры безопасности, инструменты кошелька, утилиты Solidity, пакеты подсказок AI и помощники сборки Sui или Move.
Скучно по дизайну
Имена были скучными по замыслу. Пакеты назывались «wallet-security-checker», «defi-risk-scanner», «solidity-build-guard», «move-compiler-tools» и «llm-context-compressor» и выглядели как небольшие утилиты, которые разработчик криптовалюты или искусственного интеллекта мог бы установить, не задумываясь.
Однако после установки полезные данные пытались получить гораздо больше, чем просто данные пакета.
В пакетах npm вредоносное ПО искало на компьютере разработчика секретные ключи, пароли, токены GitHub и данные для входа в облако. Он также проверил некоторые украденные учетные данные, попытался проникнуть в другие системы через ключи SSH и оставил после себя файлы, которые могли поддерживать активность заражения.
Ключи SSH — это файлы входа, которые разработчики используют для доступа к серверам, репозиториям кода и другим машинам. В случае кражи они могут позволить злоумышленнику переместиться с одного скомпрометированного ноутбука в более широкую инфраструктуру компании.
В атаке также используются такие файлы, как .cursorrules и claude.md, которые позволяют разработчикам давать специфичные для проекта инструкции инструментам кодирования ИИ. Сокет сообщил, что кампания внедряла скрытые инструкции с использованием символов Юникода нулевой ширины, по-видимому, пытаясь заставить будущие сеансы помощника ИИ запускать фальшивые «сканирования безопасности», которые собирали и раскрывали секреты.
Это превратило атаку из обычного кражи пакетов в нечто похожее на вредоносное ПО для среды разработчика. Установка пакета — это только первый шаг, реальной целью которого является рабочая станция, включая кошельки, репозитории, данные браузера, облачные ключи, доступ по SSH и любые инструменты кодирования AI, которые будут читаться дальше.
Пакеты Rust использовали вредоносные скрипты build.rs для запуска во время компиляции, нацеленные на разработчиков sui и move. Пакеты PyPI выполняли удаленный JavaScript при импорте. Пакеты на npm использовали перехватчики postinstall.
Socket сообщила, что сообщила о пакетах в затронутые реестры и классифицировала пакеты кампании как вредоносные. Компания также предупредила, что злоумышленник открывал запросы на включение в проекты искусственного интеллекта и разработчиков, пытаясь добавить файлы .cursorrules и CLAUDE.md через обычные пути вклада с открытым исходным кодом.