Новая npm-атака за минуты затронула сотни пакетов AntV

Утром 19 мая 2026 года npm снова оказался в центре крупной supply-chain атаки. Злоумышленники получили доступ к npm-аккаунту мейнтейнера atool и начали публиковать вредоносные версии пакетов, связанных с экосистемой AntV и несколькими популярными JavaScript-проектами.

По данным Socket, в атаке было выявлено 639 вредоносных версий в 323 уникальных пакетах. Snyk отдельно пишет, что основная автоматизированная публикация заняла около 22 минут. Для npm это очень короткое окно: пока команда безопасности разбирается, заражённые версии уже могут попасть в CI/CD или на машины разработчиков.

Что именно пострадало

Под удар попали пакеты из экосистемы AntV — библиотек визуализации данных, связанных с Alibaba, а также несколько отдельных популярных проектов. Среди заметных примеров исследователи называют echarts-for-react, timeago.js, size-sensor и пакеты из пространства @antv.

Особенно неприятно, что речь не о малоизвестных зависимостях. У echarts-for-react около 1,1 млн загрузок в неделю, а совокупная аудитория затронутых пакетов, по оценкам Snyk, достигает примерно 16 млн еженедельных загрузок. Это не значит, что все эти установки были заражены, но показывает потенциальный радиус риска.

Коротко: атака была опасна не только числом пакетов, а тем, что затронула доверенные библиотеки с большой реальной аудиторией.

Как работал вредонос

Схему связывают с новой волной Mini Shai-Hulud. Вредоносные версии содержали preinstall-хук: код запускался сразу при установке пакета, ещё до того, как разработчик начал использовать библиотеку в проекте.

По описанию исследователей, payload был нацелен на сбор секретов: npm- и GitHub-токены, SSH-ключи, облачные ключи, CI/CD-секреты, доступы к Kubernetes, Vault, базам данных и другим сервисам. The Hacker News также пишет, что атака затрагивала пакеты, связанные с аккаунтом atool, включая популярный echarts-for-react.

Опасность была не только в краже данных. Если вредонос находил npm-токен с правами публикации, он мог использовать его для дальнейшего заражения пакетов. Именно поэтому такие атаки часто сравнивают с червём внутри open source-экосистемы: один скомпрометированный аккаунт открывает путь к следующему.

Почему это глубже обычной вредной зависимости

Обычный вредоносный пакет ещё можно распознать по странному названию, пустой истории или подозрительному автору. Здесь всё иначе: вредонос попал в настоящие пакеты, опубликованные через доверенный аккаунт. Для разработчика это могло выглядеть как обычное обновление зависимости.

Ещё один неприятный момент — живучесть атаки. Некоторые разборы указывают, что вредонос не ограничивался npm-пакетом: он мог искать секреты в окружении, затрагивать локальные проекты и оставлять следы в конфигурациях инструментов разработки. Поэтому простое удаление заражённой версии не всегда достаточно, если она уже успела выполниться.

Что делать разработчикам

Если проект использует AntV, echarts-for-react, timeago.js, size-sensor или связанные зависимости, стоит проверить установки и lock-файлы за 19 мая 2026 года. Особенно внимательно — CI/CD, dev-машины и окружения, где могли быть доступны токены.

Минимальные действия:

  • проверить package-lock.json, pnpm-lock.yaml или yarn.lock;

  • сверить версии с advisory от Socket, Snyk или npm;

  • удалить скомпрометированные версии и пересобрать окружение;

  • ротировать npm, GitHub, SSH, облачные и CI/CD-секреты;

  • проверить локальные проекты и конфиги инструментов разработки;

  • временно ограничить автоматическое подтягивание свежих версий.

Важно не ждать, пока пакет начнёт использоваться в коде. В этой атаке вредонос срабатывал уже на этапе установки.

Что пока неизвестно

Пока нет полной ясности, как именно был скомпрометирован аккаунт atool. В публикациях также встречается атрибуция к TeamPCP, но её лучше подавать осторожно: разные исследователи формулируют связь по-разному.

Также может меняться точное число затронутых пакетов и репозиториев с утечками. Такие инциденты обычно уточняются несколько дней: часть версий удаляют, часть находят позже, а некоторые следы атаки всплывают уже после первичной зачистки.

Итог

Эта атака хорошо показывает, как изменилась логика угроз для open source. Злоумышленники всё чаще атакуют не сам код библиотеки, а механизм доверия: аккаунты мейнтейнеров, lifecycle-скрипты, токены публикации и CI/CD-секреты. Масштаб в 639 вредоносных версий за короткое окно означает, что ручная реакция почти всегда будет запаздывать. Для команд разработки зависимости становятся таким же важным периметром безопасности, как облачная инфраструктура.

Самое тревожное — скорость и автоматизация. Раньше можно было надеяться, что подозрительную зависимость заметят до массового распространения, но в случае с доверенным пакетом это почти не работает. Простая рекомендация «проверяйте зависимости» уже недостаточна: нужны lock-файлы, задержка свежих релизов, изоляция сборок, запрет лишних install-скриптов и быстрая ротация секретов. npm остаётся удобной экосистемой, но доверие к обновлениям «на автомате» теперь выглядит всё более дорогой привычкой.

Источник: Socket

Дополнительный источник: Snyk

Дополнительные источники: The Hacker News

00 оценок
ЦитироватьПост-цитата
0Счет: 033Просмотры: 330Комментарии: 00Цитаты: 00Посты-цитаты: 00Оценки: 0

Подписка

Сейчас: Не подписан

Подписка: Не подписан
Войдите, чтобы подписаться на обсуждение.

Участники

0

Видимых участников обсуждения пока нет.

Лучшие комментарии

Лучшие комментарии появятся после первых оценок и ответов.

Активные ветки

Активные ветки появятся, когда у корневых комментариев будут ответы.

Комментарии

0 всего
Написать комментарий

Войдите, чтобы участвовать в обсуждении.

Комментариев пока нет. Можно начать ветку первым.

ymki

Цитаты из этого топика

Последние цитаты, созданные из текста топика и его комментариев.

Этот топик пока не цитировали.