Как хакеры из Северной Кореи обманули разработчика популярной npm-библиотеки Axios
Представьте, что вы поддерживаете программный пакет, который каждую неделю скачивают почти сто миллионов раз. А потом однажды вам пишет основатель известной компании с предложением сотрудничества. Вы проверяете информацию — всё выглядит абсолютно реально. Но на самом деле это ловушка, подготовленная профессиональными злоумышленниками. Именно так произошло с Джейсоном Саайманом — мейнтейнером библиотеки Axios для экосистемы JavaScript.
Что случилось и кто за этим стоит
Группа, известная под именем UNC1069 (её также связывают с северокорейскими кластерами BlueNoroff и GhostCall), организовала целенаправленную атаку на цепочку поставок npm. Злоумышленники не действовали вслепую — они подготовились основательно. По словам самого Джейсона, кампания социальной инженерии была подстроена «именно под него».
Как выглядела схема обмана
Хакеры создали копию образа реально существующего основателя легитимной и хорошо известной компании. Они клонировали не только его фотографию и биографию, но и саму компанию — вплоть до логотипов, стиля общения и рабочих процессов. Затем разработчика пригласили в настоящий Slack-канал. Рабочее пространство было оформлено в духе компании, названо правдоподобно и содержало тематические каналы, где даже публиковались ссылки на посты из LinkedIn. Всё выглядело как обычная рабочая переписка.
Дальше — больше. Злоумышленники назначили встречу в Microsoft Teams. Когда Джейсон подключился к поддельному звонку, на экране появилось сообщение об ошибке. В нём говорилось, что какая-то часть его системы устарела, и требовалось срочное обновление. Стоило разработчику запустить предложенное «исправление», как на его компьютер проник удалённый троян удалённого доступа (RAT).
Что дал доступ трояна
Получив контроль над системой мейнтейнера, хакеры украли учётные данные от npm-аккаунта. Этого оказалось достаточно, чтобы опубликовать две заражённые версии пакета Axios: 1.14.1 и 0.30.4. Внутри этих версий скрывалась вредоносная вставка под названием WAVESHAPER.V2 — по сути, имплант для удалённого управления.
Джейсон Саайман признаётся: «Всё было исключительно слаженно, выглядело легитимно и выполнялось на профессиональном уровне. Я ни на секунду не усомнился».
Почему это важно для всей индустрии
История наглядно показывает, как злоумышленники смещают фокус. Раньше UNC1069 и BlueNoroff охотились на основателей криптопроектов, венчурных инвесторов и публичных людей. Их цель — взломать аккаунт одной крупной фигуры, а затем атаковать следующий круг жертв. Теперь же они переключились на мейнтейнеров открытых библиотек. Исследователь безопасности Тейлор Монахан комментирует: «Эта эволюция — переход на поддержателей открытого кода — вызывает серьёзное беспокойство».
Масштаб потенциального ущерба
Axios — не просто очередной пакет. Его еженедельная загрузка приближается к 100 миллионам раз. Библиотека встроена в огромное количество проектов по всей JavaScript-экосистеме. Если злоумышленники выпускают отравленную версию, она распространяется мгновенно — через прямые и транзитивные зависимости. Взрывной радиус такой атаки на цепочку поставок может быть колоссальным.
Ахмад Нассри из компании Socket подчёркивает: «Компрометация такого широко используемого пакета, как Axios, показывает, насколько сложно оценить реальные риски в современном JavaScript-окружении. Это прямое следствие того, как работает разрешение зависимостей сегодня».
Какие меры приняты после инцидента
Джейсон Саайман уже внёс ряд изменений, чтобы подобное не повторилось:
полный сброс всех устройств и учётных данных;
настройка неизменяемых (иммутабельных) релизов;
внедрение потока OIDC для публикации пакетов;
обновление GitHub Actions в соответствии с лучшими практиками безопасности.
Главный вывод для разработчиков и компаний
Атака на мейнтейнера Axios — это не единичный случай, а тревожный тренд. Поддержатели открытых проектов становятся новой целью для профессиональных групп, финансируемых государствами. И если раньше хакеры вымогали криптовалюту или похищали личные данные, то теперь они стремятся получить контроль над цепочкой поставок, чтобы поразить тысячи компаний одной уязвимостью. Каждому, кто управляет популярным пакетом, стоит пересмотреть свои защитные меры, внедрить двухфакторную аутентификацию и никогда не запускать «исправления» из непроверенных источников — даже если звонок выглядит очень убедительно.