// TOM'S HARDWARE ITALIA — LINUX & OPEN SOURCE
Un malware AI ha preso il controllo di server Docker (ma erano aperti)
Un malware che decide da solo quali comandi lanciare, dopo essere entrato da un server Docker lasciato aperto su Internet. Si chiama Carbonato, e ThreatDown, la divisione di ricerca di Malwarebytes, lo ha trovato dentro un registro Docker non protetto da password, quasi 60 repository e 4,3 GB di immagini: prove operative che coprono un periodo tra ottobre 2024 e agosto 2026. Il malware individua host con l'API Docker esposta senza autenticazione, lancia un container con accesso privilegiato all'host e apre un tunnel SSH inverso per mantenere l'accesso.
La parte insolita è cosa succede dopo l'accesso: sull'host compromesso viene installata Hermes Agent, una struttura di agenti AI con un'istanza chiamata GH0ST che interpreta i comandi ricevuti via Telegram, scrive da sola le istruzioni terminale, legge l'output, decide il passo successivo e restituisce il report allo stesso canale usato per la messa in produzione. Il malware si propaga come un worm, scansionando ogni cinque minuti la rete raggiungibile dall'host infetto.
L'ingresso passa dalla porta 2375, quella su cui il demone Docker espone la propria API quando gira senza autenticazione: bastano una scansione di rete e una richiesta HTTP per lanciare il container privilegiato. Per restare attivo anche dopo un riavvio, Carbonato aggiunge cron job, timer systemd, hook rc.local e OpenRC in parallelo, non uno soltanto. Ogni nuova compromissione ripete lo stesso schema: scarica l'immagine dal registro, avvia il container, apre il tunnel, entra nel ciclo di scansione.
GH0ST arriva sull'host sovrascrivendo SOUL.md, il file di persona predefinito di Hermes, con istruzioni proprie, e da quel momento riceve i compiti via Telegram: raccoglie chiavi API AI, credenziali SSH e token di accesso, esegue comandi e rimanda il risultato sullo stesso canale. "Il modello interpreta il compito, scrive i comandi, legge l'output e decide cosa fare dopo", scrivono i ricercatori di ThreatDown: un ciclo di comando interattivo, con un operatore umano nel giro solo per leggere i report.
Chi ha scritto Carbonato non ha dovuto programmare ogni mossa dell'attacco in anticipo: gli è bastato dare all'agente un obiettivo e un canale Telegram su cui riferire.
Non è la prima comparsa di Hermes Agent dentro un attacco automatizzato. A luglio ha guidato le fasi successive a una violazione dei sistemi collegati al ministero delle Finanze thailandese, in modalità "YOLO", che salta le richieste di conferma prima di eseguire comandi pericolosi. Il mese scorso ha contribuito a una campagna che ha rubato oltre 600.000 carte di pagamento da più di cento siti di e-commerce, con skimmer installati sulle pagine di checkout.
Lo stesso giorno in cui ThreatDown pubblicava questa scoperta, Docker presentava i nuovi Cloud Sandboxes per isolare meglio gli agenti legittimi dei propri clienti: due notizie sullo stesso problema di configurazione, lette da due lati opposti. La superficie si allarga proprio perché un agente, una volta dentro, agisce più in fretta di quanto un umano possa accorgersene, e il tema dell'identità degli agenti resta aperto indipendentemente da chi lo sfrutta, difensore o attaccante: a RSAC 2026 le strutture per governarla mostravano ancora lacune aperte, e un caso analogo, reso pubblico nella stessa settimana, ha coinvolto un agente OpenAI su un portale del governo australiano.
Chi decide di lasciare la porta 2375 aperta senza autenticazione è chi amministra l'host, non ThreatDown: una scelta di configurazione comune, la stessa da anni, non una falla sconosciuta appena scoperta. Chi paga il conto è chi si ritrova un container privilegiato attivo sulla propria infrastruttura, con un agente che decide da solo i comandi successivi: l'attribuzione resta aperta, con la Costa Rica indicata solo come possibile sede dell'operatore, mentre il mercato della cybersecurity cresce proprio su casi come questo.
Aggiungi Tom's Hardware alle tue fonti preferite su Google
Daniele Nannicini di QNAP racconta un client