Вредоносный npm‑пакет https-proxy-utils распространял AdaptixC2: что случилось и как защититься

CyberSecureFox 🦊

Специалисты «Лаборатории Касперского» выявили в экосистеме npm вредоносный пакет https-proxy-utils, замаскированный под легитимные инструменты работы с прокси. После установки он подтягивал и запускал AdaptixC2 — открытый фреймворк для постэксплуатации, позиционируемый как альтернатива Cobalt Strike и Havoc. Пакет уже удален из репозитория, однако инцидент ярко подсветил уязвимости цепочки поставок в open-source.

Маскировка под популярные http-proxy-agent/https-proxy-agent

Название https-proxy-utils сознательно напоминало легитимные http-proxy-agent и https-proxy-agent, суммарно получающие десятки миллионов загрузок в неделю. Такой прием эксплуатирует типографический и контекстный скимминг — разработчики по привычке подтягивают знакомые пакеты и могут не заметить подмену. Внутри находился postinstall-скрипт, который автоматически загружал и исполнял AdaptixC2, обеспечивая удаленный доступ злоумышленников, управление процессами и файлами, а также закрепление в системе для дальнейших стадий атаки.

AdaptixC2: возможности и риски open‑source C2

AdaptixC2, появившийся в 2024 году, — расширяемый фреймворк для постэксплуатации: сервер на Go, клиент на C++/Qt, поддержка Linux, Windows, macOS. Как и другие C2‑платформы, он предназначен для легитимных задач пентеста и red team, но регулярно злоупотребляется угрозными актерами. По сообщениям исследователей, в марте 2025 года AdaptixC2 был замечен в реальных инцидентах.

Технические детали: как работала компрометация на трех ОС

Windows: DLL sideloading через системный процесс

На Windows вредоносный модуль загружался как DLL в директорию C:\Windows\Tasks и запускался посредством DLL sideloading — техникой подмены загружаемой библиотечки при старте легитимного исполняемого файла. Скрипт копировал msdtc.exe в ту же директорию и инициировал его запуск, что приводило к подхвату вредоносной DLL. Такой подход усложняет детектирование за счет использования доверенного бинаря.

macOS: LaunchAgents и архитектурно-специфические бинарии

На macOS полезная нагрузка сохранялась в ~/Library/LaunchAgents, куда также доставлялся plist‑файл для автозапуска. Перед загрузкой скрипт определял архитектуру (x64 либо ARM) и подтягивал соответствующий бинарь. Механизм LaunchAgents обеспечивает устойчивость исполнения при входе пользователя.

Linux: временной каталог и выдача прав на исполнение

В Linux агент помещался в /tmp/.fonts-unix с выдачей прав на запуск. Как и на macOS, выбирался бинарь под конкретную архитектуру. Временные каталоги и скрытые директории часто используются злоумышленниками для маскировки и краткоживущих стадий атаки.

Почему это важно: эскалация supply chain атак в open-source

Инцидент демонстрирует устойчивый тренд злоупотребления публичными репозиториями как вектором начального проникновения. Подобные кейсы уже происходили с популярными пакетами в npm и экосистемах JavaScript — от event-stream (2018) до UAParser.js (2021) и кампании IconBurst (2022). Схемы становятся изощреннее: применяются техники вроде DLL sideloading, которые сложнее обнаруживать без поведенческой аналитики и ИИ‑методов корреляции событий.

Как защититься: проверяемые практики для команд разработки и SecOps

Для снижения риска компрометации через npm и другие реестры рекомендуется:

— внедрить контроль зависимостей: lock‑файлы, pin‑версии, allow‑list критичных пакетов;
— использовать подпись артефактов и проверку целостности (npm integrity, Sigstore/SLSA);
— включить репутационные и поведенческие проверки CI/CD: запрет postinstall‑скриптов без явного разрешения, sandbox установки;
— отслеживать аномальные сетевые обращения сборочных агентов и разработческих машин;
— применять EDR/XDR с детекцией DLL sideloading, несанкционированных LaunchAgents и подозрительных исполняемых файлов во временных каталогах;
— регулярно проводить инвентаризацию автозапуска и аудиты прав в системных директориях;
— обучать разработчиков распознавать типографические ловушки в названиях пакетов и проверять владельцев/историю публикаций.

Случай с https-proxy-utils — показатель того, насколько легко злоумышленники капитализируют доверие к открытым экосистемам. Усиление процессов проверки зависимостей, внедрение подписей и поведенческого мониторинга, а также координация действий между Dev, Sec и IT‑операциями помогают разорвать цепочку атаки до развертывания C2‑инструментов и последующих стадий. Пересмотрите политики работы с постинсталляционными скриптами и автозапуском на рабочих станциях разработчиков — это недорогие меры, которые существенно снижают поверхность атаки.

Оставьте комментарий

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.