Новая кибератака крадет криптовалюту у пользователей во время отправки транзакций, и многие эксперты называют ее крупнейшей атакой на цепочку поставок в истории. Хакеры взломали учетные записи сопровождающих пакеты npm, используя фишинговые письма. Эти письма выглядели так, будто пришли от “[email protected]“, копируя реальный реестр npm. В сообщениях разработчикам сообщалось, что их учетные записи будут заблокированы, если они не обновят двухфакторную аутентификацию. Когда сопровождающие переходили по ссылке, злоумышленники получали их данные для входа и размещали вредоносное ПО внутри популярных пакетов npm.
Были скомпрометированы восемнадцать широко используемых библиотек JavaScript, включая chalk, debug и ansi-styles. Вместе эти пакеты загружаются миллиарды раз в неделю и используются разработчиками по всему миру. Это означает, что вся экосистема JavaScript, возможно, подверглась риску. BleepingComputer сообщила, что злоумышленники внедрили в эти библиотеки код, который действовал как перехватчик на основе браузера. Этот код отслеживал сетевой трафик и искал криптотранзакции в Bitcoin, Ethereum, Solana, Tron, Litecoin и Bitcoin Cash. Когда кто-то отправлял перевод, вредоносное ПО заменяло реальный адрес кошелька на адрес, контролируемый хакерами, до подписания транзакции.
Исследователь безопасности Чарли Эриксен объяснил, что вредоносное ПО работает несколькими способами. Оно изменяет то, что отображается на веб-сайтах, подделывает вызовы API и обманывает приложения, заставляя их подписывать транзакции, которые пользователь не намеревался совершать. Шарль Гийем, технический директор Ledger, предупредил, что атака все еще активна, и заявил, что криптопользователи должны избегать совершения ончейн-транзакций, если они используют только программные кошельки. Пользователи аппаратных кошельков могут защитить себя, проверяя детали перед подписанием, но все, у кого нет такого кошелька, подвергаются более высокому риску.
Исследователи также обнаружили, что фишинговая инфраструктура отправляла украденные данные на «websocket-api2.publicvm.com». Это показывает, что атака была хорошо скоординирована. Она следует за другими инцидентами npm в начале этого года, включая один в марте, который пропатчил пакет ethers обратной оболочкой, и другой в июле, нацеленный на eslint-config-prettier. Кампания продолжает развиваться, и на этот раз злоумышленники использовали смарт-контракты Ethereum новым способом. Два пакета npm под названием colortoolsv2 и mimelib2 скрывали вредоносные команды внутри смарт-контрактов Ethereum. После загрузки пакеты устанавливали вредоносное ПО второго этапа, что усложняло его обнаружение.
Смарт-контракты Ethereum — это небольшие программы, работающие в блокчейне. Они публичны и действуют как открытые API. В этом случае хакеры использовали их для хранения ссылок для загрузки вредоносного ПО, поэтому, даже если кто-то проверял пакет, он мог не увидеть опасный код. Этот креативный метод управления и контроля показывает, как субъекты угроз адаптируются, чтобы избежать обнаружения.
Злоумышленники также пытались сделать свои репозитории GitHub заслуживающими доверия. Они создали поддельные проекты, такие как solana-trading-bot-v2 и ethereum-mev-bot-v2. У них было много звезд, наблюдателей и коммитов, но большая часть этой активности была поддельной. Учетные записи создавались в одно и то же время, часто только с одним файлом, а автоматизированные коммиты завышали цифры. Этот метод социальной инженерии заставил репозитории выглядеть реальными для разработчиков, которые могут включать вредоносные пакеты npm в свою работу.
Эксперты предупреждают, что атаки на цепочку поставок особенно опасны, потому что они нацелены на доверенные инструменты. Скрывая вредоносное ПО внутри библиотек с открытым исходным кодом, хакеры могут охватить миллионы разработчиков и конечных пользователей одновременно. Только в этом году исследователи обнаружили более двадцати кампаний в npm, GitHub и PyPI, направленных на кражу криптовалюты. Некоторые использовали программы-инфостилеры, другие развертывали майнеры, и многие полагались на фишинг для захвата конфиденциальных данных.
Индикаторы компрометации (IOC), такие как подозрительные домены, обфусцированный код и поддельные репозитории, помогают группам безопасности обнаруживать эти угрозы. Тем не менее, многие пользователи не заметят ничего, пока средства не исчезнут. На данный момент разработчикам необходимо тщательно проверять пакеты, сопровождающих и код перед использованием. Криптопользователям следует рассмотреть возможность использования аппаратных кошельков и избегать крупных переводов, пока угроза не будет взята под контроль. Атака показывает, как быстро развивается киберпреступность и как важно обеспечивать безопасность как цепочек поставок программного обеспечения, так и цифровых активов.