Исследователи 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 (кроме тарифа «Прогрев»).