September 8

Критические уязвимости в npm: Атака на цепочку поставок — что делать?

Критические уязвимости в npm: Атака на цепочку поставок — что делать?

Вы столкнулись с серьезной атакой на цепочку поставок npm, которая произошла 8 сентября 2025 года. Согласно данным службы безопасности Aikido, в этот день были скомпрометированы 18 популярнейших npm-пакетов, включая color-convert, color-name, debug, chalk и другие базовые зависимости. Эти пакеты имеют более 2 миллиардов загрузок в неделю и являются критически важными для экосистемы JavaScript.aikido

Суть угрозы

Это НЕ обычные уязвимости

Ваш npm audit показывает 21 критическую уязвимость, но на самом деле это результат целенаправленной атаки на цепочку поставок. Злоумышленники:

  1. Скомпрометировали основные npm-пакеты через взлом аккаунтов мейнтейнеровaikido
  2. Внедрили вредоносный код, который исполняется в браузере пользователейaikido
  3. Перехватывают криптовалютные транзакции и перенаправляют средства на аккаунты злоумышленниковaikido
  4. Манипулируют взаимодействием с web3-кошельками незаметно для пользователейaikido

Затронутые пакеты

Согласно отчету Aikido Security, скомпрометированы следующие критически важные пакеты:

  • debug (357.6 млн загрузок в неделю)
  • chalk (299.99 млн загрузок в неделю)
  • color-convert (193.5 млн загрузок в неделю)
  • color-name (191.71 млн загрузок в неделю)
  • ansi-styles (371.41 млн загрузок в неделю)
  • И другие базовые зависимостиaikido

НЕМЕДЛЕННЫЕ ДЕЙСТВИЯ

1. НЕ запускайте npm audit fix --force

Это может установить еще более новые скомпрометированные версии и усугубить ситуацию.

2. Проверьте версии пакетов

Выполните команду для проверки установленных версий:

bashnpm list color-convert color-name debug chalk ansi-styles

3. Откатитесь к безопасным версиям

bash# Установите известные безопасные версии
npm install color-convert@1.9.3 color-name@1.1.4 debug@4.3.4

4. Очистите кэш npm

bashnpm cache clean --force

5. Удалите node_modules и переустановите зависимости

bashrm -rf node_modules package-lock.json
npm install

Долгосрочные меры безопасности

Заморозка версий зависимостей

В вашем package.json зафиксируйте точные версии:

json{
  "dependencies": {
    "color-convert": "1.9.3",
    "color-name": "1.1.4", 
    "debug": "4.3.4"
  }
}

Использование инструментов безопасности

  1. Snyk или npm audit для регулярного мониторинга
  2. package-lock.json для контроля точных версий зависимостей
  3. Dependabot для автоматического отслеживания уязвимостей

Мониторинг проекта

После очистки регулярно проверяйте:

bashnpm audit --audit-level critical

Контекст атаки

Эта атака является частью крупнейшей кампании против экосистемы npm в 2025 году. Аналогичные инциденты произошли с:crowdstrike+1

  • Nx ecosystem в августе 2025github+1
  • eslint-config-prettier в июле 2025crowdstrike
  • Пакетом 'is' с 2.8 млн загрузок в неделюbleepingcomputer

Злоумышленники используют фишинг-кампании против мейнтейнеров npm-пакетов, создавая поддельные домены типа npnjs.com вместо npmjs.com.checkmarx+1

Заключение

Это не время для паники, а время для быстрых и решительных действий. Ваша система подверглась атаке на цепочку поставок мирового масштаба. Следуя приведенным выше инструкциям, вы сможете защитить свой проект от дальнейшего воздействия вредоносного кода.

Помните: npm audit fix --force в данной ситуации может только ухудшить положение. Действуйте осторожно и методично, откатываясь к проверенным безопасным версиям пакетов.

Добавить в последующие

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

  1. https://www.aikido.dev/blog/npm-debug-and-chalk-packages-compromised
  2. https://www.crowdstrike.com/en-us/blog/crowdstrike-falcon-prevents-npm-package-supply-chain-attacks/
  3. https://www.stepsecurity.io/blog/another-npm-supply-chain-attack-the-is-package-compromise
  4. https://github.com/nrwl/nx/security/advisories/GHSA-cxm3-wv7p-598c
  5. https://www.stepsecurity.io/blog/supply-chain-security-alert-popular-nx-build-system-package-compromised-with-data-stealing-malware
  6. https://www.bleepingcomputer.com/news/security/npm-package-is-with-28m-weekly-downloads-infected-devs-with-malware/
  7. https://checkmarx.com/zero-post/supply-chain-phishing-campaign-drops-more-malware-into-npm-got-fetch-5-1/
  8. https://www.mend.io/blog/deceptive-vibranced-npm-package-discovered-masquerading-as-popular-colors-package/
  9. https://www.darktrace.com/blog/auto-color-backdoor-how-darktrace-thwarted-a-stealthy-linux-intrusion
  10. https://www.miggo.io/vulnerability-database/cve/GHSA-49c6-3wr4-8jr4
  11. https://www.sonatype.com/blog/remember-npm-library-colors-theres-no-such-thing-as-colors-2.0
  12. https://unit42.paloaltonetworks.com/new-linux-backdoor-auto-color/?pdf=print&lg=en&_wpnonce=fec49d5e44
  13. https://securityboulevard.com/2025/03/malware-found-on-npm-infecting-local-package-with-reverse-shell/
  14. https://snyk.io/blog/open-source-npm-packages-colors-faker/
  15. https://www.miggo.io/vulnerability-database/cve/GHSA-36jr-mh4h-2g58
  16. https://www.fortinet.com/blog/threat-research/malicious-packages-hiddin-in-npm
  17. https://secure.software/npm/packages/color/4.1.0
  18. https://www.wiz.io/vulnerability-database/cve/ghsa-36jr-mh4h-2g58
  19. https://www.veracode.com/blog/targeted-npm-malware-attempts-to-steal-developers-source-code-and-secrets/
  20. https://secure.software/npm/packages/color-convert/1.9.1
  21. https://www.wiz.io/vulnerability-database/cve/ghsa-94v7-wxj6-r2q5
  22. https://secure.software/npm/directory?label=malware
  23. https://www.veracode.com/blog/sophisticated-highly-targeted-attacks-continue-to-plague-npm/
  24. https://www.wiz.io/vulnerability-database/cve/ghsa-pg98-6v7f-2xfv
  25. https://www.veracode.com/blog/recent-npm-malware/
  26. https://secure.software/npm/packages/@types/color-convert
  27. https://www.wiz.io/vulnerability-database/cve/ghsa-8fx8-3rg2-79xw
  28. https://research.swtch.com/npm-colors
  29. https://dev.to/chaudharidevam/fixing-high-and-critical-vulnerabilities-in-npm-using-npm-audit-n6p
  30. https://www.niraj.life/blog/understanding-npm-audit-fixing-vulnerabilities-nodejs/
  31. https://thehackernews.com/2025/08/malicious-pypi-and-npm-packages.html
  32. https://www.npmjs.com/package/color-convert
  33. https://www.voitanos.io/blog/don-t-be-alarmed-by-vulnerabilities-after-running-npm-install/
  34. https://www.syncfusion.com/blogs/post/how-to-treat-npm-audit-results
  35. https://www.wiz.io/blog/s1ngularitys-aftermath
  36. https://arxiv.org/html/2403.12196v1
  37. https://www.jit.io/resources/appsec-tools/npm-audit-fix-taking-nodejs-security-to-the-next-level
  38. https://thehackernews.com/2025/09/malicious-npm-packages-impersonate.html
  39. https://www.npmjs.com/package/color
  40. https://stackoverflow.com/questions/67030285/what-did-a-npm-audit-fix-force-change-and-how-do-you-fix-it
  41. https://www.scworld.com/brief/massive-toll-of-nx-npm-supply-chain-attack-examined
  42. https://www.npmjs.com/package/colortranslator
  43. https://docs.github.com/rest/security-advisories/global-advisories
  44. https://gbhackers.com/new-supply-chain-attack-compromises-popular-npm-package/
  45. https://docs.github.com/code-security/security-advisories/working-with-global-security-advisories-from-the-github-advisory-database/about-the-github-advisory-database
  46. https://thehackernews.com/2025/08/ai-generated-malicious-npm-package.html
  47. https://github.com/advisories
  48. https://www.youtube.com/watch?v=f17bKk5Y1L0
  49. https://github.com/github/advisory-database
  50. https://apiiro.com/blog/nx-supply-chain-breach-shows-why-malicious-package-detection-matters/
  51. https://thehackernews.com/2025/08/malicious-go-npm-packages-deliver-cross.html
  52. https://docs.github.com/code-security/security-advisories/global-security-advisories/browsing-security-advisories-in-the-github-advisory-database
  53. https://thehackernews.com/2025/08/malicious-nx-packages-in-s1ngularity.html
  54. https://firsthackersnews.com
  55. https://github.com/advisories/GHSA-xv2f-5jw4-v95m