Атака на цепочку поставок сильно ударила по npm: учетная запись мейнтейнера axios была взломана, все 300 миллионов загрузок в неделю находятся в критическом состоянии

供應鏈攻擊重挫npm

Исследовательская организация по кибербезопасности Socket обнаружила 31 марта, что базовый npm-пакет axios подвергся активной атаке на цепочку поставок. Злоумышленник взломал npm-аккаунт главного мейнтейнера axios jasonsaayman, опубликовал вредоносные версии и внедрил вредоносный пакет зависимостей, чтобы развернуть кроссплатформенный троян удалённого доступа (RAT). Целью являются системы macOS, Windows и Linux.

Разбор атакующей цепочки: полный процесс от взлома аккаунта до самоуничтожения RAT

axios供應鏈攻擊 (Источник: Socket)

Это событие представляет собой тщательно спланированную многоступенчатую атаку на цепочку поставок. Злоумышленник сначала получает доступ к аккаунту мейнтейнера, меняет email на ifstap@proton.me, затем использует украденные npm-учётные данные для ручной публикации вредоносных версий, полностью обходя штатный процесс публикации axios через GitHub Actions + OIDC Trusted Publisher. В GitHub-репозитории у двух вредоносных версий отсутствуют соответствующие коммиты, теги или записи о релизах.

Подготовка злоумышленника также выполнена точно: он контролировал другой аккаунт (nrwise, nrwise@proton.me), который примерно за 18 часов до этого опубликовал чистую приманочную версию plain-crypto-js@4.2.0, чтобы создать историю, а затем 30 марта в 23:59 UTC опубликовал вредоносную версию 4.2.1.

После выполнения вредоносного postinstall hook загрузчик RAT (setup.js) подключается к серверу команд и управления sfrclak[.]com:8000, чтобы развернуть платформенно-специфичные полезные нагрузки. После завершения работы он самоуничтожается и заменяет package.json на чистый заглушечный файл, в результате чего при последующей проверке директория node_modules не позволяет обнаружить следы заражения.

Ключевые технические показатели атаки (IOC)

Версии вредоносного пакета:axios@1.14.1、axios@0.30.4、plain-crypto-js@4.2.1

Сервер C2:sfrclak[.]com / 142.11.206.73 / [.]com:8000

Следы заражения на macOS:/Library/Caches/com.apple.act.mond

Следы заражения на Windows:%PROGRAMDATA%\wt.exe、%TEMP%\6202033.vbs

Следы заражения на Linux:/tmp/ld.py

Аккаунт злоумышленника:jasonsaayman(взломан)、nrwise(аккаунт злоумышленника)

Срочное руководство по реагированию: проверка затронутости и шаги по устранению

Поскольку вредоносный загрузчик после выполнения самоуничтожается, невозможно подтвердить заражение, проверяя каталог node_modules. Правильный способ — напрямую проверить lockfile (package-lock.json или yarn.lock) на наличие записей версий axios@1.14.1 или axios@0.30.4.

Откат безопасной версии: для пользователей 1.x понизить до axios@1.14.0; для пользователей 0.x понизить до axios@0.30.3, и одновременно удалить каталог plain-crypto-js из node_modules, а затем заново установить зависимости.

Если в системе обнаружены какие-либо следы заражения RAT (com.apple.act.mond、wt.exe、ld.py), не пытайтесь удалять их на месте. Следует заново собрать систему из заведомо нормального состояния и немедленно выполнить ротацию всех потенциально раскрытых учётных данных, включая токены npm, AWS access key, SSH private key, ключи для CI/CD-конфигураций и значения в файле .env.

Для разработчиков криптовалют и Web3 axios — это ключевая HTTP-библиотека, используемая во многих front-end’ах DeFi-протоколов, инструментах управления криптоактивами и сервисах запросов ончейн-данных. Инфицированная среда разработки может привести к утечке кошельковых приватных ключей, seed-фраз или API-ключей в адрес злоумышленника; рекомендуется в первую очередь проверить и выполнить ротацию всех чувствительных учётных данных.

Часто задаваемые вопросы

Как подтвердить, установлена ли затронутая версия axios?

Поскольку вредоносный загрузчик после выполнения самоуничтожается, нельзя подтвердить заражение, полагаясь на каталог node_modules. Следует напрямую проверить lockfile на наличие записей axios@1.14.1 или axios@0.30.4, а также убедиться, что в node_modules присутствует каталог plain-crypto-js. Можно выполнить команду npm list axios или напрямую выполнить поиск строки версий в lockfile.

Какое особое влияние эта атака на цепочку поставок оказывает на разработчиков криптовалют и Web3?

axios — популярная HTTP-библиотека для Web3-приложений на стороне фронтенда и пользовательских интерфейсов DeFi-протоколов. Инфицированная среда разработки может привести к раскрытию злоумышленнику чувствительных учётных данных, таких как приватные ключи, seed-фраз, ключи API бирж или ключи конфигурации CI/CD; соответствующим разработчикам следует в первую очередь проверить и выполнить ротацию всех возможных криптосвязанных учётных данных.

Как защититься от будущих атак на цепочку поставок npm?

Основные меры профилактики включают: в CI/CD всегда использовать npm ci --ignore-scripts, чтобы отключить postinstall hook; фиксировать версии критически важных пакетов зависимостей; регулярно просматривать журнал изменений lockfile; а также развёртывать инструменты вроде Socket, Aikido для мониторинга в реальном времени зависимостей на наличие вредоносного ПО.

Отказ от ответственности: Информация на этой странице может поступать от третьих лиц и не отражает взгляды или мнения Gate. Содержание, представленное на этой странице, предназначено исключительно для справки и не является финансовой, инвестиционной или юридической консультацией. Gate не гарантирует точность или полноту информации и не несет ответственности за любые убытки, возникшие от использования этой информации. Инвестиции в виртуальные активы несут высокие риски и подвержены значительной ценовой волатильности. Вы можете потерять весь инвестированный капитал. Пожалуйста, полностью понимайте соответствующие риски и принимайте разумные решения, исходя из собственного финансового положения и толерантности к риску. Для получения подробностей, пожалуйста, обратитесь к Отказу от ответственности.
комментарий
0/400
Нет комментариев