Нарушение цепочки поставок Nx (S1ngularity): вредоносные пакеты Nx опубликованы в npm с помощью украденного токена публикации
Основное обновление
26 августа 2025 года злоумышленники опубликовали вредоносные версии нескольких пакетов Nx в npm на протяжении примерно четырех часов, воспользовавшись инъекцией рабочего процесса GitHub Actions для кражи токена публикации NPM. Вредоносные пакеты содержали код постинсталляции, который сканировал локальные машины на наличие секретов и использовал локальные AI CLI (сообщенные примеры: Claude, Gemini) для помощи в идентификации файлов для эксфиляции, затем загружал результаты в публичные репозитории GitHub. Nx удалил зараженные пакеты, отозвал токены, опубликовал подробный отчет о происшествии и рекомендации, а также перевел публикацию в npm Trusted Publishers / OIDC с ручными одобрениями.
Почему это важно
Это серьезное нарушение цепочки поставок с прямыми последствиями для разработчиков: Nx широко используется в JavaScript/TypeScript монорепозиториях и CI-пайплайнах, поэтому короткий период наличия зараженных пакетов увеличил риск на многих машинах разработчиков и CI-системах. Инцидент демонстрирует три связанных режима отказа, которые необходимо рассматривать как практические угрозы: небезопасные шаблоны GitHub Actions (pull_request_target плюс несанитизированный ввод и чрезмерно широкие разрешения рабочего процесса), долгоживущие/чрезмерно привилегированные учетные данные для публикации и вредоносное ПО, использующее локальные инструменты AI для разработчиков в качестве части своего инструментария для разведки/эксфиляции.
Для практиков немедленные операционные действия просты и срочны: подтвердите, установили ли вы какие-либо из затронутых версий пакетов Nx, и рассматривайте любую систему с этими версиями как потенциально скомпрометированную; измените и отозовите любые открытые токены и учетные данные (GitHub и npm), проверьте журналы аудита/безопасности GitHub на наличие неожиданных репозиториев или активности CLI, очистите кэши пакетов и NPX, и обновитесь до исправленных релизов Nx. С точки зрения CI/DevOps устраните шаблоны, которые позволяют этому вектору: избегайте pull_request_target для ненадежных вводов, минимизируйте разрешения рабочего процесса (по умолчанию используйте токены только для чтения), удалите workflow_dispatch из публикационных пайплайнов, которые принимают ненадежные триггеры, предпочитайте OIDC и краткосрочные учетные данные для публикации в реестре, требуйте явных ручных одобрений для релизов, происходящих из форков или от внешних участников, и добавьте проверки происхождения для опубликованных артефактов. Наконец, рассматривайте локальные среды разработчиков как потенциальные цели эксфиляции: ограничьте открытые секреты на машинах разработчиков, используйте менеджеры учетных данных и следите за необычной исходящей активностью или недавно созданными публичными репозиториями, которые могут содержать утечку данных.
Этот инцидент напоминает о том, что гигиена цепочки поставок требует как безопасных CI-шаблонов, так и быстрых планов действий при инцидентах; просто обновление инструментов недостаточно, если потоки публикации и разрешения рабочего процесса не заблокированы, а сроки действия токенов не ограничены.
Источник
Читать дальше
Node.js v25 запланирован на 2025‑10‑15 — ожидается семантический мажорный релиз
30 сентября 2025 г.Node.js v25 запланирован на 15 октября 2025 года (крайний срок коммитов 2025‑09‑15). Команды должны запускать CI против нового мажора, проверять нативные модули и готовить канареечные деплои.
Azure Functions Proxies: поддержка сообщества заканчивается 2025‑09‑30 — мигрируйте с Proxies сейчас
29 сентября 2025 г.Microsoft объявила, что Azure Functions Proxies не будет поддерживаться после 2025‑09‑30; команды, все еще использующие Proxies, должны немедленно провести инвентаризацию и мигрировать на поддерживаемую API-платформу (APIM, Front Door или легкий обратный прокси).
NodeShield: принудительное соблюдение SBOM в реальном времени (CBOM) для Node.js ограничивает атаки на цепочку поставок с незначительными накладными расходами
28 сентября 2025 г.Новая статья представляет NodeShield, систему принудительного соблюдения в реальном времени, которая использует SBOM, дополненные возможностями по зависимостям (CBOM), чтобы предотвратить злоупотребления в цепочке поставок в Node.js с эффективностью ~98% и накладными расходами <1 мс.