Дослідники Darktrace повідомили про ShadowV2 — нову хвилю DDoS-активності, що цілить у неправильно сконфігуровані Docker-середовища і продає доступ до потужностей за моделлю DDoS-as-a-Service. На відміну від класичних ботнетів із єдиним центром управління, оператори ShadowV2 спираються на сучасні DevOps-інструменти та прагнуть поведінкової невидимості, мінімізуючи сигнатурний слід.
ShadowV2 та DevOps: керування через GitHub Codespaces і маскування за Cloudflare
Аналітики виявили керуючий сервер на Python, імовірно розгорнутий у GitHub Codespaces та захищений периметром Cloudflare. Через помилки конфігурації вдалося отримати API-документацію і перелік ендпоінтів. Підтримка багаторівневої автентифікації, розмежування ролей і обмеження типів атак свідчать про комерціалізацію сервісу: клієнти орендують доступ і самостійно запускають DDoS-кампанії.
Як працює ланцюг компрометації Docker-оточень
Інфекція стартує з Python-скрипта, розміщеного в Codespaces, який автоматизує роботу з Docker API і полює на відкриті з інтернету демони Docker, включно з вузлами на AWS. Замість завантаження публічних образів застосовується прийом “setup”-контейнера: зловмисники встановлюють утиліти, збирають кастомний образ і розгортають робочий контейнер. Така збірка на місці ускладнює виявлення за статичними індикаторами.
DDoS-інструментарій: Go, FastHTTP і обхід Cloudflare UAM
Усередині контейнера працює Go-бінарник — рушій HTTP-flood. Він створює кілька потоків із клієнтами на базі високопродуктивної бібліотеки FastHTTP (Valyala). Фіксуються техніки обходу захистів, зокрема HTTP/2 Rapid Reset (CVE-2023-44487), підміна forwarding-заголовків випадковими IP і прийоми для обходу Cloudflare Under Attack Mode (UAM). Дві версії бінарника з’явилися на VirusTotal 25 червня та 30 липня; на старті вони не детектувалися більшістю рушіїв.
DDoS-as-a-Service без «класичного» ботнета
Ключова інновація ShadowV2 — користувацький API, через який замовники передають список уже скомпрометованих вузлів для участі в атаці. Це ламає традиційну модель, де оператор централізовано керує всіма «зомбі». Фактично, клієнтам дають інтерфейс для складання гнучких ударних мереж під конкретні кампанії. Аналогічні зловживання DevOps-хмарою траплялися й раніше (наприклад, у серіях Kinsing та TeamTNT), проте настільки завершена платформа зустрічається нечасто.
Виявлення: поведінкові індикатори в хмарі та CI/CD
Через низьку цінність статичних IoC фокус варто змістити на аномалії поведінки: незвичні виклики Docker API, автоматизовані операції зі збіркою/запуском контейнерів, систематичні вихідні з’єднання до епімерних вузлів, різкі стрибки egress-трафіку, поява всередині контейнерів високопродуктивних HTTP-клієнтів. Історично масові інциденти часто стартували з відкритих Docker-сокетів; за даними відкритих інтернет-сканерів, у мережі стабільно знаходять тисячі експонованих ендпоінтів.
Зниження ризику: контроль Docker, мережеві політики та моніторинг
Обмежте доступ до Docker API: вимкніть відкритий TCP-сокет, використовуйте UNIX-сокет, увімкніть TLS і примусову автентифікацію, накладіть обмеження через Security Groups і VPC ACL в AWS.
Мінімізуйте привілеї: політики least privilege, іммутабельні образи, контроль цілісності та підпису образів.
Спостереження за подіями build/run: алерти на створення “setup”-контейнерів, нетипові команди збірки, доступ до Docker/Containerd поза CI/CD-вікнами.
Egress-контроль: обмеження вихідного трафіку на рівні VPC/підмереж, проксі з автентифікацією, детекція високочастотного HTTP/2 і спроб Rapid Reset.
Периметровий захист: rate limiting, L7-захист від HTTP-flood, перевірка та нормалізація заголовків (включно з X-Forwarded-For), примусове підтвердження клієнта.
Огляд зовнішньої поверхні: регулярні скани на експозицію Docker, Kubelet, Prometheus, Redis та інших сервісів, які часто зловживаються.
ShadowV2 ілюструє перехід атакувальників до платформного підходу у DDoS: використання DevOps-інфраструктури, динамічна збірка контейнерів і націлення на поведінкову непомітність. Щоб випередити подальшу еволюцію подібних ботнетів, організаціям варто провести аудит експонованих сервісів, закрити відкритий Docker API, увімкнути поведінкову аналітику у хмарі та посилити egress-контроль. Запустіть безперервний моніторинг Docker API і оновіть політики L7-захисту — це мінімізує ризики залучення ваших ресурсів до наступної DDoS-кампанії.