Цепочка поставки · 26 августа 2025

Атака s1ngularity на Nx: вредоносный пакет использовал AI-утилиты разработчика

Злоумышленники через уязвимость в GitHub Actions украли npm-токен проекта Nx и опубликовали заражённые версии пакетов. Вредоносный скрипт впервые использовал установленные у разработчиков AI-утилиты командной строки (Claude, Gemini, Q) для поиска секретов. Утекли тысячи учётных данных, включая ключи к облакам и AI-сервисам.

Иллюстрация к инциденту «Атака s1ngularity на Nx: вредоносный пакет использовал AI-утилиты разработчика»
ЗатронутоПользователи сборочной системы Nx в npm (около 6 млн установок в неделю), разработчики с установленными AI-утилитами командной строки
КритичностьКритический
Дата26 августа 2025

Что произошло

26 августа 2025 года в npm были опубликованы вредоносные версии nx и связанных пакетов, которые оставались доступными около четырёх часов. Скрипт, запускавшийся при установке, искал на машинах Linux и macOS токены GitHub и npm, SSH-ключи, ключи API и криптокошельки. При наличии локальных AI-утилит командной строки скрипт пытался задействовать их для поиска чувствительных файлов. Найденное выгружалось в публичные репозитории GitHub, созданные от имени жертвы. По данным GitGuardian, приведённым The Hacker News, утекло 2349 уникальных секретов, примерно у трети заражённых систем был установлен хотя бы один AI-клиент. Во второй волне с помощью украденных токенов были раскрыты более 3000 репозиториев более чем 190 пользователей и организаций.

Где нарушилась защита

Первая граница доверия нарушилась в CI/CD: рабочий процесс GitHub Actions обрабатывал непроверенные данные из pull request и имел права на запись, что позволило извлечь токен публикации. Вторая — на рабочих станциях: AI-утилиты разработчика с правами на чтение файлов и выполнение команд были запущены вредоносным кодом в режиме, где они не спрашивали подтверждения. Агент, созданный помогать разработчику, превратился в инструмент разведки для атакующего.

Последствия

  • Утечка 2349 уникальных секретов: токенов GitHub, ключей Google AI, OpenAI, AWS, Anthropic и других сервисов
  • Публикация приватных данных и репозиториев жертв в открытый доступ на GitHub
  • Вторая волна с использованием украденных токенов затронула более 3000 репозиториев

Реакция

npm отозвал токены и удалил пакеты, GitHub удалил репозитории с утёкшими данными. Nx перешёл на доверенную публикацию через OIDC, ввёл обязательное подтверждение релизов вторым фактором и ограничил запуск конвейеров для внешних участников.

Уроки для бизнеса

  1. AI-агенты на рабочих станциях разработчиков расширяют возможности не только сотрудника, но и вредоносного кода на той же машине
  2. Режимы работы AI-утилит без подтверждения действий опасны в средах с доступом к секретам
  3. Ошибки конфигурации GitHub Actions остаются одним из главных путей компрометации пакетов
  4. Секреты на машинах разработчиков нужно считать скомпрометированными при любом подозрении на заражённую зависимость

Меры, которые предотвратили бы инцидент

  • Запрет или контроль автоматического выполнения скриптов установки пакетов в корпоративной среде
  • Политика использования AI-утилит командной строки: запрет режимов без подтверждения, изоляция в контейнере
  • Хранение секретов в менеджере секретов вместо файлов и переменных окружения на рабочих станциях
  • Аудит рабочих процессов CI/CD на небезопасную обработку данных из pull request и избыточные права
  • Мониторинг создания новых публичных репозиториев от имени сотрудников
Проверка фактов

Первоисточники

Nx · 2025-08S1ngularity - What Happened, How We Responded, What We LearnedThe Hacker News · 2025-08-28Malicious Nx Packages in s1ngularity Attack Leaked 2,349 GitHub, Cloud, and AI Credentials