- Известные библиотеки, такие как Аксиос и Мастра Они были взломаны через захваченные учетные записи разработчиков, что затронуло миллионы еженедельных загрузок.
- Злоумышленники использовали сложные методы. пост-инсталляционные хуки для внедрения кроссплатформенных бэкдоров и кражи конфиденциальных учетных данных из среды разработки.
- Злоумышленники, в том числе связанные с Северокорейские группыОни все чаще используют доверие к зависимостям с открытым исходным кодом, а не ищут уязвимости в программном обеспечении.
- Специалисты по безопасности рекомендуют отключение скриптов жизненного цикла а также внедрение строгих мер контроля исходящего сетевого трафика для смягчения последствий вредоносных пакетов.
Разработчики на собственном горьком опыте убеждаются, что современная среда разработки все больше превращается в минное поле, где один забытый пароль может поставить под угрозу тысячи проектов. В последнее время в мире технологий наблюдается резкий рост инцидентов в цепочках поставок, что доказывает: даже самые надежные инструменты разработчика могут быть использованы против него за считанные минуты, и никто этого не заметит, пока не станет слишком поздно.
Текущие данные свидетельствуют о фундаментальном сдвиге в методах работы хакеров, поскольку они отказываются от традиционных методов эксплуатации уязвимостей и сосредотачиваются на безопасности цепочек поставок . Проникая в экосистемы популярных платформ, таких как npm, злоумышленники могут одновременно распространять вредоносный код на миллионы систем, превращая легитимные обновления программного обеспечения в механизм доставки высокоуровневого вредоносного ПО и инструментов для кражи данных.
Экосистема Mastra и фишинговая ловушка LinkedIn

В середине 2026 года фреймворк Mastra, широко используемый для создания приложений искусственного интеллекта, стал жертвой скоординированной кампании, начавшейся со сложной атаки с применением методов социальной инженерии . Один из участников проекта получил обманчивое сообщение в LinkedIn, что в конечном итоге привело к компрометации его токена публикации npm. Злоумышленник, не теряя времени, опубликовал более 140 вредоносных версий пакетов в пространстве имен Mastra, достигнув пользовательской базы, генерирующей более миллиона загрузок каждую неделю.
Особенно коварным этот инцидент делает то, что сам код Mastra остался нетронутым, поскольку вредоносное ПО было спрятано внутри недавно добавленной зависимости под названием easy-day-js. Этот пакет представлял собой клон популярной библиотеки для работы с датами, разработанный таким образом, чтобы выглядеть совершенно безобидно для любого разработчика, бегло просмотревшего дерево зависимостей. Используя плавающий диапазон версий, злоумышленник гарантировал, что любая новая установка автоматически будет использовать зараженную версию, фактически открывая бэкдор на рабочей станции разработчика или в системе CI/CD.
Исследовательские группы отметили небольшие расхождения в общем количестве затронутых артефактов: подсчеты варьируются от 116 до 145 пакетов в зависимости от времени анализа. Это подчеркивает нестабильный характер подобных кампаний, когда злоумышленники могут быстро публиковать, изменять и удалять доказательства, в результате чего группам безопасности приходится прилагать усилия для оценки полного масштаба уязвимости до того, как будут замечены следы.
Axios взломан: связь plain-crypto-js

Ситуация ещё больше обострилась, когда Axios, популярный HTTP-клиент для разработчиков JavaScript, подвергся аналогичной атаке с захватом учётной записи . Были выпущены версии 1.14.1 и 0.30.4 со скрытой зависимостью под названием plain-crypto-js, которая функционировала как кроссплатформенный троян удалённого доступа (RAT). Это вредоносное ПО было специально разработано для инвентаризации систем, обеспечения постоянного присутствия и кражи конфиденциальных данных из сред Windows, macOS и Linux.
Аналитики по безопасности из Unit 42 и ESET связали взлом Axios с группировкой, известной как Sapphire Sleet или UNC1069 , которая, как сообщается, связана с интересами Северной Кореи. Эта связь указывает на сильный финансовый мотив, поскольку вредоносное ПО содержало специализированные модули для обнаружения и атаки расширений криптовалютных кошельков. Это классический случай высокорискованного цифрового шпионажа, скрывающегося на виду в инструментах, которые мы используем для создания простых веб-приложений.
Техническая реализация была пугающе эффективной, часто завершая полный цикл заражения менее чем за пятнадцать секунд . После запуска полезной нагрузки установщик выполнял агрессивную очистку, удаляя вредоносные файлы установки и заменяя измененный манифест на чистый на вид файл-приманку. Такой уровень осведомленности в вопросах криминалистики означает, что разработчик мог бы просмотреть свою папку node_modules всего через несколько минут после заражения и не обнаружить абсолютно ничего необычного.
Технические аспекты работы постмонтажного крюка
Основной движущей силой этих атак является хук npm postinstall, функция, позволяющая пакетам автоматически запускать скрипты после установки. Хотя он предназначен для легитимных задач настройки , он стал открытой лазейкой для злоумышленников. В случаях с Mastra и Axios скрипт postinstall запускал обфусцированный загрузчик, который отключал проверку TLS-сертификатов, позволяя вредоносному ПО взаимодействовать с серверами управления и контроля, не будучи обнаруженным стандартными инструментами проверки сети.
После загрузки второй стадии вредоносного ПО оно часто запускалось как отдельный процесс, то есть вредоносный код продолжал работать в фоновом режиме даже после завершения процесса установки npm. В системах Windows было замечено, что вредоносное ПО перехватывало легитимные бинарные файлы, такие как PowerShell, для выполнения своих скриптов, в то время как на macOS и Linux оно использовало системные службы, чтобы гарантировать сохранение работоспособности после перезагрузки, что делало простое удаление пакета неэффективным.
Помимо кражи криптовалюты, эти импланты были способны перехватывать историю браузера и искать учетные данные облачных провайдеров или SSH-ключи. Для технологического стартапа это кошмарный сценарий, когда локальная среда разработчика становится шлюзом для злоумышленника, позволяющим проникнуть на производственные серверы или в частные репозитории кода. Оказывается, безопасность вашей компании может зависеть от того, насколько хорошо совершенно незнакомый человек справляется с управлением паролями.
Укрепление трубопровода от будущих угроз
Стандартные инструменты безопасности, такие как npm audit, часто не справляются с обнаружением подобных инцидентов на ранних стадиях, поскольку они полагаются на известные базы данных уязвимостей , которые могут отставать от активных кампаний вредоносного ПО. Для реальной защиты организации командам необходимо перейти к более проактивным методам защиты, например, запускать установку с флагом –ignore-scripts по умолчанию. Этот простой шаг предотвращает выполнение postinstall-хуков, которые являются основным вектором большинства атак на цепочку поставок на основе npm.
Еще одна важная стратегия заключается в переходе к модели нулевого доверия для зависимостей. Используя замороженные файлы блокировки и частные реестры , компании могут создать буферную зону, где новые версии пакетов анализируются на предмет поведенческих аномалий, прежде чем им будет разрешено участвовать в основном конвейере сборки. Ограничение исходящего сетевого трафика от CI/CD-серверов только разрешенными доменами также может разорвать цепочку связи, необходимую вредоносному ПО для получения своих вторичных полезных нагрузок или кражи токенов.
В конечном итоге, ответственность за ужесточение контроля доступа и внедрение многофакторной аутентификации, которую невозможно обойти с помощью автоматизированных токенов, ложится как на разработчиков, так и на потребителей программного обеспечения с открытым исходным кодом. По мере развития отрасли, рассматривать каждую стороннюю библиотеку как потенциальный риск, а не как надежный актив, — единственный способ выжить в эпоху, когда сама цепочка поставок стала одним из самых эффективных орудий в арсенале хакера.