Популярният Node.js пакет node-ipc е бил компрометиран при нова supply chain атака срещу npm екосистемата, след като атакуващи са внедрили malware за кражба на credentials в няколко новопубликувани версии на библиотеката.
Пакетът node-ipc се използва за inter-process communication (IPC) и позволява комуникация между процеси чрез Unix sockets, Windows sockets, UDP, TLS и TCP. Въпреки предишни противоречия около проекта, той продължава да се използва масово и има над 690 000 седмични изтегляния.
Засегнатите версии
Според анализи на компаниите Socket, OX Security и Upwind, следните версии съдържат злонамерен код:
node-ipc@9.1.6node-ipc@9.2.3node-ipc@12.0.1
Малуерът е внедрен в CommonJS entrypoint файла node-ipc.cjs и се изпълнява автоматично при зареждане на приложението.
Какво прави malware-ът
Изследователите описват кода като силно обфускиран infostealer, предназначен за бързо събиране и ексфилтрация на чувствителна информация от компрометирани среди.
Сред таргетираните данни са:
- cloud credentials за AWS, Azure, GCP, OCI и DigitalOcean
- SSH ключове и SSH конфигурации
- Kubernetes, Docker, Helm и Terraform credentials
- npm, GitHub, GitLab и Git CLI токени
.envфайлове и database credentials- shell history и CI/CD secrets
- macOS Keychain и Linux keyrings
- Firefox profile данни и key database файлове
- локални данни от Microsoft Teams
Малуерът избягва файлове над 4 MiB и пропуска .git и node_modules директории, за да намали шума и да работи по-ефективно.
DNS TXT заявки вместо традиционен C2 трафик
Една от най-интересните характеристики на атаката е използването на DNS TXT заявки за ексфилтрация на данни вместо стандартен HTTP command-and-control канал.
Според изследователите атакуващите използват фалшив Azure-подобен домейн:
sh[.]azurestaticprovider[.]net
Данните се изпращат към:
bt[.]node[.]js
Използват се query prefixes като:
xhxdxf
Този подход позволява злонамереният трафик да се слива с нормалната DNS активност и значително усложнява засичането от защитни системи.
Според Socket ексфилтрацията на архив от около 500 KB може да генерира приблизително 29 400 DNS TXT заявки.
Данните се архивират и изтриват автоматично
Преди ексфилтрацията malware-ът компресира събраната информация във временни tar.gz архиви, които след това се изтриват автоматично с цел минимизиране на forensic следите.
Изследователите подчертават, че кодът не създава persistence механизми и не изтегля вторични payload-и, което подсказва, че операцията е насочена основно към бърза кражба на credentials.
Компрометиран акаунт на maintainer
Според първоначалния анализ атаката вероятно е извършена чрез компрометиране на акаунта на неактивен maintainer с псевдоним atiertant.
Това е пореден пример за growing риска от supply chain атаки в open source екосистемата, при които нападателите компрометират доверени пакети с огромен брой downstream зависимости.
Историята на node-ipc вече е била противоречива
Пакетът node-ipc вече беше в центъра на сериозен скандал през 2022 г., когато неговият maintainer публикува weaponized версии, които изтриваха файлове на системи в Русия и Беларус като политически протест срещу руската инвазия в Украйна.
Настоящият инцидент обаче изглежда е дело на външен атакуващ, а не на оригиналния разработчик.
Какво трябва да направят разработчиците
Потенциално засегнатите организации и разработчици трябва незабавно:
- да премахнат засегнатите версии
- да обновят lockfiles
- да проверят npm cache
- да ротират всички credentials и secrets
- да инспектират CI/CD среди
- да анализират DNS трафика за необичайни TXT заявки
Особено внимание трябва да се обърне на cloud credentials и automation tokens, тъй като те могат да позволят lateral movement и компрометиране на production среди.
Supply chain атаките продължават да ескалират
Инцидентът с node-ipc е поредното доказателство, че npm екосистемата остава основна цел за supply chain атаки.
През последните години атакуващите все по-често използват:
- typosquatting пакети
- компрометирани maintainer акаунти
- dependency confusion атаки
- злонамерени ъпдейти в популярни библиотеки
Тъй като open source пакетите често се използват автоматично в CI/CD процеси, дори краткотрайно компрометиране може да доведе до масови последствия в enterprise среди.









