CARBONATO е ботнет, който превръща Docker сървърите в плацдарм за атакуващите. Той поставя AI агент вътре в компрометираните системи, позволявайки на операторите да изпращат задачи през Telegram и да получават резултати.

Кампанията започва с Docker услуги, невнимателно изложени към интернет без автентификация. Веднъж влязъл, CARBONATO стартира привилегирован контейнер, получава достъп до хоста, осигурява персистентност при рестартиране и търси близки мрежи за уязвими сървъри.

Изследователи от ThreatDown идентифицираха операцията, след като откриха неавтентифициран Docker регистър, изложен от май 2026 г.

За един ден те възстановиха 59 хранилища, 234 тага на изображения, 605 потвърдени blob-а и 4,3 GB данни от октомври 2024 г. до август 2026 г.

От ThreatDown заявиха в доклад, споделен с Cyber Security News (CSN), че констатацията показва как една проста грешка в конфигурацията може да се превърне в проблем за цялата мрежа.

CARBONATO се разпространява без нови инструкции, докато неговият агент, контролиран от оператор, може да събира чувствителни идентификационни данни и да извършва последващи действия върху вече компрометирани системи.

Изследователи откриха ботнет, който използва AI агент

CARBONATO инсталира рамката с отворен код Hermes Agent, без да променя нейния софтуер. Вместо това атакуващите заменят нейния файл с персона (persona file) с 39 реда инструкции, които я карат да поддържа достъп, да събира тайни данни и да изпълнява команди, пристигащи през Telegram.

Задачата на оператора пътува с тези инструкции до портала за езикови модели на групата. Моделът interpret-ва заявката, пише терминални команди, проверява техния изход и решава какво да опита след това. Агентът изпълнява тези команди на засегнатия сървър и се отчита обратно през Telegram.

entry.sh v5.3, tier 1 (Източник – Threatdown)
entry.sh v5.3, tier 1 (Източник – Threatdown)

Чувствителните API ключове за AI системи са на първо място в списъка с цели на агента, изпреварвайки SSH идентификационните данни, токените за достъп и базите данни. Фокусът съответства на скорошната активност на AI криптовируси, при която автоматизирани инструменти използваха изложени услуги и налични пароли, за да се придвижват бързо от първоначалния достъп до нанасянето на щети.

Самата рамка остава непроменена; зловредното поведение идва от инструкциите, наложени при стартиране. Тази разлика е важна, тъй като блокирането на всяка инсталация на легитимен агент би попречило и на обикновените потребители.

Изследователите също така установиха, че шлюзът рекламира 12 модела, но обслужва 27 през своя интерфейс. По този начин инфектираните хостове могат да се превърнат в източници на AI идентификационни данни, както и на по-конвенционални тайни, което е опасение, наблюдавано и при зловреден код, насочен към идентификационни данни на разработчици в среди за разработка.

Как се разпространява ботнетът

Ботнетът търси Docker демони, приемащи неавтентифицирани мрежови връзки. Той използва изложената услуга, за да стартира привилегирован контейнер с достъп до файловата система, процесите и мрежата на жертвата, след което изпълнява команди на основния сървър.

Стартиращ скрипт отваря обратен SSH тунел към реле в Коста Рика, инсталира SSH сървър и ключ на атакуващия и изпраща подробности за внедряването в Telegram. Имплантът също така маскира своя инфектиран контейнер и процеси като стандартна Linux активност, за да направи бързата проверка по-малко разкриваща.

CARBONATO създава персистентност чрез cron задачи, systemd таймери, скриптове за стартиране и OpenRC, след което прави свързаните файлове трудни за промяна.

Защитни процеси (watchdogs) могат отново да изтеглят импланта от същия регистър, ако той изчезне, подсилвайки риска, наблюдаван при по-ранни атаки срещу изложени Docker среди, които осигуряваха на нападателите дълготраен достъп до хоста.

LLM порталът на операцията (Източник – Threatdown)
LLM порталът на операцията (Източник – Threatdown)

На всеки пет минути скриптове проверяват мрежите, свързани към хоста и Docker мостовете, след което сканират всеки /24 диапазон за изложени Docker услуги.

Когато открият друг изложен демон, те повтарят внедряването. AI агентът не управлява това разпространение; обикновени скриптове извършват сканирането и инсталирането.

Регистърът съдържаше и троянизирани приложения за криптовалутни портфейли заедно с компоненти на ботнета. Изложените слоеве на изображения и конфигурации дадоха на изследователите подробен преглед на операцията, подчертавайки по-широките рискове за сигурността от излагането на частни контейнерни изображения, когато в регистрите липсва подходящ контрол на достъпа.

Защитниците трябва да държат API на Docker демоните извън публични мрежи, да изискват автентификация за регистрите и да проверяват за неочаквани привилегировани контейнери и Telegram трафик от сървърите.

Те трябва да проверяват необичайни настройки за персистентност, да инвентаризират и подменят AI API ключове и да разследват конкретните индикатори за компрометиране, изброени по-долу.

От ThreatDown посочват език, времеви клейма на билдовете, Telegram псевдоним и обратни тунели като улики, сочещи към Коста Рика. Тези сигнали подкрепят оценка, а не потвърдена самоличност.

Непосредствената оперативна грижа за администраторите е спирането на достъпа през изложени Docker услуги, преди ботнетът да достигне до други хостове.

Индикатори за компрометиране (IoCs):-

ТипИндикаторОписание
Network45[.]79[.]183[.]61C2 hub (Linode)
Network91[.]99[.]195[.]164fsociety-era C2 (Hetzner)
Network213[.]136[.]79[.]115Beacon / reverse shell (Contabo, :8080 and :4444)
Network213[.]136[.]83[.]197LLM gateway (Contabo), live
Network190[.]211[.]124[.]187Reverse-tunnel sink (AS262145, Costa Rica)
Networkcarbonato-proxy-{drab,zeta,zeta-2}[.]vercel[.]appLLM proxies, suspended
NetworkRegistry fleet on AS40065Seven endpoints, six live, withheld while live
Containergh0st/, fsociety/, netd-svc, system/resolved, scrub-emptyRepository names, 59 total
ContainerGH0ST_C2, FSOCIETY_DISABLE_TUNNEL, GATEWAY_ALLOW_ALL_USERSImage environment variables
Container/opt/gh0st/entry.sh, auto-persist-host.sh, SOUL.mdImplant kit files
Host/usr/local/bin/.docker-network-monitorWatchdog binary
Host/usr/sbin/systemd-logindMiner disguised as a system service
Host[kworker/u2:0]Disguised process arguments
Secretcarbonato125Shared password across the archive
SecretCARBONATO_API_KEY.env variable on infected hosts
TelegramChat 750752697Deployment reports and C2 chat

Забележка: IP адресите и домейните са нарочно дезактивирани (напр. [.]), за да се предотврати случайно разрешаване на имена или създаване на хипервръзки. Възстановете ги само в рамките на контролирани платформи за разузнаване на заплахи като MISP, VirusTotal или вашата SIEM система.