Botnet CARBONATO IA: secuestra servidores Docker y se paga su pasarela LLM

ThreatDown localizó el registro de contenedores abierto que expuso toda la cadena de mando. La operación, activa desde octubre de 2024, instala un agente de código abierto y le ordena priorizar las claves de OpenAI, Anthropic o Google.

El botnet CARBONATO secuestra servidores Docker expuestos y financia su pasarela de IA con las claves de API que roba en cada máquina que compromete.

La operación salió a la luz por una puerta lateral. ThreatDown encontró un registro de contenedores sin autenticación expuesto a internet y, dentro, la cadena de mando completa de los atacantes: 4,3 GB de imágenes recogidos en un solo día de lectura pasiva, 59 repositorios, 234 etiquetas y 605 blobs verificados. El historial de configuración dejó a la vista direcciones de mando y control, tokens de los bots y hasta la contraseña compartida de la pasarela de IA del propio grupo. Le adelanto que el hallazgo importante no es el malware: es el modelo de negocio.

Por qué el puerto 2375 sigue siendo la puerta abierta de miles de servidores

El vector de entrada es de una simpleza casi ofensiva. El bot rastrea direcciones en busca de demonios Docker que acepten conexiones sin autenticar en el puerto 2375, una configuración que miles de máquinas mantienen todavía accesible desde internet. Cuando encuentra una, no necesita exploit: usa la propia API de Docker para levantar un contenedor privilegiado con el sistema de archivos del anfitrión montado dentro. El demonio de la víctima hace casi todo el trabajo.

Publicidad

El contenedor arranca con un entry.sh que abre un túnel SSH inverso desde la víctima hasta un relé en Costa Rica. El puerto remoto no es aleatorio: se deriva del hash MD5 de la dirección IP de la víctima, de modo que los operadores pueden calcularlo sin almacenar nada en disco. El script instala además un servidor SSH, añade la clave del grupo y envía un informe de despliegue a Telegram con el identificador del contenedor, el nombre del host, la IP y el país. Según el informe de ThreatDown, esos mensajes están redactados en español con voseo, lo que estrecha el origen lingüístico aunque no permita ponerle frontera.

La persistencia se construye por capas: tareas de cron, temporizadores de systemd, rc.local y OpenRC, cada archivo marcado después como inmutable para que una limpieza no pueda borrarlo sin pelear. Un watchdog emparejado vigila el despliegue y vuelve a descargar el implante del registro si su contenedor desaparece. El contenedor se llama ‘systemd-resolved’, muestra un banner falso de systemd-networkd y disfraza sus argumentos de proceso como un hilo del kernel llamado [kworker/u2:0]. Una revisión rápida de procesos no ve nada raro.

Aquí nadie necesita reclutar a un topo: basta con que un servidor ajeno esté mal configurado y mantenga el puerto 2375 abierto al mundo.

Y en este caso no hay servicio secreto detrás, al menos con la evidencia pública disponible.

GH0ST y las 39 líneas que convierten un agente legítimo en operador autónomo

Docker

Lo genuinamente nuevo llega después de la persistencia. El implante instala Hermes Agent, un marco de agente de código abierto con licencia MIT desarrollado por Nous Research, sin modificar una sola línea del paquete original. Los atacantes solo tocan un archivo: el SOUL.md que define la personalidad del agente. Ese prompt de 39 líneas lo rebautiza como GH0ST y le ordena ejecutar tareas recibidas por Telegram, mantener la persistencia y recolectar credenciales. El comportamiento malicioso no está en el binario, sino en las instrucciones que el agente carga al arrancar.

Y hay una prioridad por encima de todas. El prompt enumera catorce proveedores por su nombre —OpenAI, Anthropic, Google, Gemini, OpenRouter, Together, Groq, Mistral, Cohere, LocalAI, Ollama, vLLM, LiteLLM, y One API— y sitúa sus claves por delante de las credenciales SSH, de los tokens de acceso y de las bases de datos. La razón se entiende al mirar la pasarela LLM del grupo, que seguía en línea el 3 de septiembre funcionando con una tarifa gratuita mientras anunciaba doce modelos y servía veintisiete a través de su API. Estos operadores pagan su cómputo con las claves robadas.

El implante no pide rescate. Paga facturas.

Publicidad

El flujo de trabajo es un bucle. Un operador envía una tarea por Telegram; Hermes Agent la reenvía junto al SOUL.md a la pasarela; el modelo escribe comandos de terminal y decide el siguiente paso, y responde en el mismo chat que recibe los avisos de despliegue. Es una interfaz de mando interactiva que se adapta a lo que revela el anfitrión, sin que nadie tenga que programar una herramienta nueva para cada situación.

La propagación, en cambio, no usa IA. Cada cinco minutos, un script revisa las redes conectadas al host comprometido y a sus puentes de Docker, escanea las redes /24 del entorno buscando más demonios en el 2375 y, si encuentra uno limpio, despliega el implante. El nuevo infectado entra en el mismo proceso de rastreo.

Y así, sin instrucciones, la red crece sola.

Las pistas apuntan a Costa Rica: catorce de las 162 configuraciones de imagen usan marcas horarias UTC-06:00 compatibles con la zona America/Costa_Rica, el identificador de Telegram es ‘Carbo506’ y +506 es el prefijo del país, y los túneles SSH inversos terminan en AS262145, una red costarricense. ThreatDown admite que ninguna de las tres señales bastaría por separado y que la infraestructura puede ser usada por alguien que opere desde otro sitio. La atribución en cibercrimen se sostiene con el conjunto, nunca con una pieza suelta.

Dossier Moncloa: Ojos en la Sombra

El vector es un ciberataque de monetización con autonomía añadida: no hay sabotaje ni espionaje de Estado, sino ocupación económica de infraestructura ajena mediante un botnet administrado por un agente de IA. Quien ataca es un grupo de cibercrimen con señales de operar desde Costa Rica y sin atribución pública a ningún servicio de inteligencia.

Quien defiende es, en primera línea, ThreatDown y los equipos de seguridad de los afectados; en segunda, los CERT nacionales, y aquí entra el CCN-CERT, que lleva años advirtiendo de la exposición de APIs sin autenticación en el tejido empresarial español. Quienes miran son los proveedores de IA cuyas claves se roban y cuyo cómputo se regala. Sobre el nivel de clasificación, no hay material clasificado en juego: lo expuesto es una cadena de mando criminal a la vista de cualquiera —direcciones, tokens, contraseñas—, un ‘sin clasificar pero sensible’ permanente para quien tenga el 2375 publicado.

El precedente que me interesa no es estatal. Mirai convirtió en 2016 miles de cámaras y routers mal configurados en un ejército capaz de tumbar media internet en la costa este de Estados Unidos sin un solo exploit nuevo. CARBONATO aplica la misma lógica con una diferencia sustancial: el operador ya no tiene que estar delante. Y quien piense que esto es un problema de terceros, que recuerde lo que sostengo desde hace tiempo: en España hay 8.000 infraestructuras críticas y atacables a través de internet.

Lo veo como el primer aviso serio de una categoría que va a crecer: botnets cuya economía no depende de rescates ni de datos vendidos, sino de consumo de IA pagado con credenciales robadas. El punto débil del análisis es la geografía: el voseo y el prefijo +506 son indicios, no pruebas, y cualquiera puede alquilar un relé en Centroamérica para ensuciar el rastro. En la jerga del oficio se llama bandera falsa barata, y funciona.

La recomendación técnica sigue sin aplicarse: no expongas la API del demonio Docker sin autenticación y cierra cada registro con credenciales, porque un registro abierto es a la vez la filtración y el mecanismo de entrega del implante. Puede consultar la guía oficial de Docker para proteger el acceso al demonio y las notas de amenaza de el CCN-CERT. Para detección, no bloqueen hermes-agent a ciegas: es un paquete legítimo con usuarios reales. Busquen la firma del abuso —un /root/.hermes/SOUL.md con ‘GH0ST’, un archivo .env con CARBONATO_API_KEY, tráfico de Telegram inexplicable— y traten las claves de IA como lo que son: dinero.

El próximo hito no es un comunicado, es un catálogo. La firma GH0ST debería aterrizar en los sistemas de los CERT nacionales antes de que termine el año, y con ella la pregunta incómoda para media Europa: cuántos de nuestros contenedores siguen hablando con el mundo por el 2375.