Фахівці «Лабораторії Касперського» виявили у реєстрі npm шкідливий пакет https-proxy-utils, замаскований під інструменти для роботи з проксі. Під час інсталяції пакет завантажував і запускав AdaptixC2 — open‑source фреймворк постексплуатації, який позиціонують як альтернативу Cobalt Strike та Havoc. Пакет уже видалено з репозиторію, однак інцидент демонструє вразливість ланцюга постачання у відкритих екосистемах.
Підміна залежностей у npm: typosquatting і контекстні пастки
Назва https-proxy-utils свідомо перегукувалася з легітимними http-proxy-agent та https-proxy-agent, які сумарно отримують десятки мільйонів завантажень щотижня. Цей прийом відомий як typosquatting і контекстне маскування: розробники інерційно додають «знайомі» пакети та можуть не помітити підміну. Усередині було сховано postinstall‑скрипт, що автоматично тягнув і виконував компонент AdaptixC2, відкриваючи зловмисникам віддалений доступ, керування процесами/файлами та механізми закріплення у системі.
AdaptixC2 як C2‑платформа: можливості та ризики зловживання
AdaptixC2, представлений у 2024 році, — розширюваний фреймворк із сервером на Go та клієнтом на C++/Qt з підтримкою Windows, Linux і macOS. Як і інші C2‑рішення, він створений для легітимних задач пентестингу й red team, проте регулярні зловживання з боку загрозливих акторів уже фіксувалися; за повідомленнями дослідників, у березні 2025 року AdaptixC2 помічали в реальних інцидентах.
Технічний розбір: ланцюг компрометації на трьох ОС
Windows: DLL sideloading через довірений бінар
У середовищі Windows шкідливий модуль зберігався як DLL у каталозі C:\Windows\Tasks. Далі скрипт копіював туди msdtc.exe і запускав його, ініціюючи DLL sideloading — підміну бібліотеки, що підвантажується легітимним процесом. Використання довіреного системного бінаря ускладнює виявлення на основі сигнатур.
macOS: LaunchAgents і вибір бінарів під архітектуру
На macOS корисне навантаження потрапляло до ~/Library/LaunchAgents, куди також додавали plist‑файл для автозапуску. Перед завантаженням визначалась архітектура (x64 чи ARM), після чого підтягували відповідний бінар. Механізм LaunchAgents забезпечував стійкість до перезавантажень та повторних входів користувача.
Linux: тимчасові каталоги і приховування у файловій системі
У Linux агент розміщувався в /tmp/.fonts-unix із наданням прав на виконання. Як і на macOS, обирався бінар під конкретну архітектуру. Тимчасові й приховані директорії традиційно використовують для маскування короткоживучих стадій атаки.
Чому це важливо: еволюція атак на ланцюг постачання open‑source
Публічні репозиторії дедалі частіше стають каналом початкового проникнення. Інциденти на кшталт event-stream (2018), UAParser.js (2021) та кампанії IconBurst (2022) демонструють сталість тренду. Техніки ускладнюються: з’являються прийоми рівня DLL sideloading та прихованого автозапуску, які складно виявляти без поведінкової аналітики та кореляції подій у EDR/XDR.