Компрометация node-ipc: кража ключей и данных через DNS

Компрометация node-ipc: в npm-пакет внедрили 80-килобайтный payload для кражи SSH-keys и cloud credentials

В экосистеме npm выявлен очередной инцидент, связанный с компрометацией популярного пакета node-ipc. По данным отчета, под удар попали версии 9.1.6, 9.2.3 и 12.0.1: в них был внедрен 80-kilobyte encrypted payload, загруженный через учетную запись скомпрометированного developer-а atiertant.

Вредоносный code был ориентирован на широкомасштабную кражу sensitive information — от SSH keys и credentials облачных провайдеров до конфигураций, связанных с AI code editors, и других данных. В общей сложности атака охватывала более 100 file paths на системах Linux и macOS.

Как работала атака

Особенность инцидента заключалась в способе доставки и скрытной exfiltration. Атакующий применил DNS exfiltration: похищенные данные упаковывались в gzipped tar archives и отправлялись через DNS TXT requests. Такой подход усложняет detection, поскольку DNS traffic обычно проверяется менее тщательно, чем другие каналы связи.

Сам пакет node-ipc широко используется для inter-process communication в Node.js. По сведениям из отчета, три скомпрометированные версии были опубликованы вскоре после предыдущего инцидента с protestware, связанного с оригинальным maintainer-ом. Это усилило обеспокоенность вокруг безопасности цепочки поставок в open source.

Изменения в пакете и запуск payload

Атака использовала изменения в структуре пакета: вредоносный payload подменил legitimate code в файле node-ipc.cjs. В результате code исполнялся немедленно при обращении к библиотеке — без каких-либо installation hooks.

Для усложнения анализа payload был замаскирован с применением стандартных obfuscation techniques. Без deobfuscation tools такие изменения заметить значительно труднее.

Техники сокрытия и эксфильтрации

Отчет выделяет несколько признаков malicious activity, направленных на сокрытие операций и indicators of compromise (IoC):

  • эксфильтрация данных с HMAC signature;
  • использование base64 encoding;
  • разбиение данных на фрагменты перед отправкой;
  • сокрытие конфиденциальных строк, включая configuration parameters, с помощью пользовательской схемы base-16 encoding.

По оценке авторов отчета, комбинация этих механизмов была рассчитана на то, чтобы замаскировать как саму передачу данных, так и технические следы компрометации.

Persistence и C2-инфраструктура

Отдельное внимание в отчете уделяется механизму persistence. Вредоносное ПО использовало переменную окружения __ntw, чтобы продолжать работу даже после завершения родительского Node.js-приложения. Это давало атакующему дополнительное время для сбора и отправки данных.

Командный домен C2, применявшийся для передачи информации, был стилизован под инфраструктуру Azure Static Web Apps. Такая маскировка позволяет трафику сливаться с legitimate cloud services и снижает вероятность быстрого обнаружения.

Что это значит для разработчиков

Инцидент вновь демонстрирует, насколько уязвимыми могут быть package management systems в open source ecosystem. Даже широко используемые библиотеки могут стать каналом для масштабной compromise, если злоумышленник получает доступ к maintainer account или цепочке публикации.

Авторы отчета рекомендуют разработчикам и компаниям:

  • провести credential rotation, если были установлены скомпрометированные версии;
  • использовать только known safe versions;
  • внедрять тщательный dependency audit;
  • усилить контроль за account security и процессами сопровождения пакетов.

Как отмечается в отчете, этот инцидент подчеркивает не только риск компрометации одной популярной библиотеки, но и более широкую проблему контроля над open source dependencies. Для разработчиков это сигнал к тому, что управление пакетами требует не меньшего внимания, чем защита production-инфраструктуры.

Отчет получен из сервиса CTT Report Hub. Права на отчет принадлежат его владельцу.

Ознакомиться подробнее с отчетом можно по ссылке.

Технологии киберугроз
Автор: Технологии киберугроз
Технологии киберугроз – технологическая компания, специализирующаяся на решениях по анализу угроз для предприятий любого размера. Мы собираем, нормализуем, обогащаем информацию о киберугрозах со всего мира. Нашими источниками являют более 260 открытых фидов, более 100 открытых поставщиков Threat Intelligence-отчетов, открытые online sandbox, социальные сети и репозитории GitHub. Мы также предоставляем ряд сервисов по: семантическом анализу Threat Intelligence-отчетов и приведения их в машиночитаемый формат STIX 2.1, проверки IoC на потенциальные ложноположительные сработки, а также получению WHOIS-записей для доменных имен.
Комментарии: