Пользователь biz44 загрузил девять вредоносных пакетов в npm
В сентябре 2026 года через npm распространили девять вредоносных пакетов, опубликованных пользователем biz44. Они запускали вредоносный код при импорте и собирали данные о компьютерах жертв, а команды сервера управления позволяли отслеживать содержимое буфера обмена и регистрировать нажатия клавиш.
Пакеты и цепочка выполнения
Семь пакетов группы A с именами idXX-client опубликовали 12 сентября, ещё два пакета группы B под именем runtime-utils появились 14 сентября. Пакеты выдавали за легитимные утилиты. Их код выполнялся при оценке модуля, поэтому для запуска заражения было достаточно импортировать пакет, без дополнительного вызова функции или запуска исполняемого файла.
Пакеты использовали трёхэтапную цепочку. Файл init.js запускал loader.js как отдельный дочерний процесс Node.js с параметрами windowsHide: true и child.unref(). Благодаря этому дочерний процесс мог продолжать работу после завершения родительского.
Затем loader.js перехватывал Module.prototype.require и менял использование модуля child_process. Команды execSync преобразовывались в cmd.exe /c и выполнялись в скрытом окне. Встроенный загрузчик не содержал полного вредоносного кода: он извлекал его с npoint.io. Это позволяло злоумышленнику менять полезную нагрузку без повторной публикации пакетов в npm.
Сбор данных и инфраструктура управления
Для группы B применялась многоэтапная конфигурация: фактический адрес сервера управления (C2) получался с отдельного конечного узла npoint.io. После выполнения полезная нагрузка собирала имя компьютера и пользователя, сведения об операционной системе и процессоре, объём оперативной памяти, данные о сетевых интерфейсах, публичный IP-адрес и местоположение.
Вредоносный код искал каталоги пользовательских данных Chrome и извлекал из них Local Extension Settings. Это могло привести к раскрытию данных, связанных с криптокошельками или менеджерами паролей. Команды C2 обеспечивали мониторинг буфера обмена: передавалось только изменённое содержимое. Для регистрации нажатий клавиш на системах Windows применялся глобальный хук SetWindowsHookEx, реализованный с помощью PowerShell и встроенной компиляции C#.
Инфраструктура C2 использовала Express.js. Она включала панель управления Chrome Monitor — Live Dashboard и записи о системах жертв. Расследователи также обнаружили свидетельства использования злоумышленником ИИ-ассистента при написании и отладке кода C2, в том числе для скрытия окон команд при запуске Chrome. Аналогичные техники spawn() и windowsHide: true использовались в вредоносном ПО npm.
Отчет получен из сервиса CTT Report Hub. Права на отчет принадлежат его владельцу.
Ознакомиться подробнее с отчетом можно по ссылке.



