Компрометация популярной библиотеки axios в экосистеме JavaScript

Исследователи StepSecurity выявили инцидент с одной из самых популярных HTTP-библиотек для JavaScript — axios, которая скачивается около 83 миллионов раз в неделю через npm. Злоумышленник получил контроль над учётной записью мейнтейнера и разместил вредоносные версии пакета: axios@1.14.1 и axios@0.30.4.

Эти обновления выглядели как обычные релизы, однако установка заражённых версий могла привести к внедрению трояна удалённого доступа в систему.

Атака не затрагивала репозиторий на GitHub напрямую и не нарушала стандартные CI/CD процессы. Вредоносный код был внедрён после смены email и публикации через npm CLI с использованием полномочий мейнтейнера. Из-за этого обычные механизмы защиты не сработали, позволяя вредоносному коду маскироваться под легитимное обновление.

Axios используется повсеместно — в пользовательских проектах, внутренних сервисах, backend-приложениях и CI/CD-конвейерах, что увеличивает риски распространения вредоносной нагрузки и утечки секретов.

Вредоносный пакет включал зависимость plain-crypto-js@4.2.1, не связанную напрямую с функциональностью axios, но содержащую postinstall-скрипт, который связывался с управляющим сервером и загружал дополнительный вредоносный код для macOS, Windows и Linux.

Троян скрывал своё присутствие, удаляя следы работы и заменяя package.json на чистую версию. Обфускация кода, динамическая загрузка модулей и выполнение shell-команд служили для усложнения обнаружения.

Рекомендуется проверить использование уязвимых версий, откатиться на безопасные, проверить логи и сетевую активность, удалить вредоносные артефакты и провести ротацию всех ключей и токенов. Для сборок советуется использовать npm с флагом —ignore-scripts для блокировки вредоносных postinstall-скриптов.

Данный инцидент демонстрирует риски компрометации аккаунтов в open source проектах и уязвимость цепочек поставок, способных привести к масштабным проблемам для тысяч разработчиков и организаций.

В заключение — если в инфраструктуре была установлена одна из проблемных версий axios, это следует считать серьёзным инцидентом информационной безопасности.

Для читателей нашего блога действует промокод: HABRFIRSTVDS — скидка 15% на любой заказ VDS (кроме тарифа «Прогрев»).

Понравилась статья? Поделиться с друзьями: