Con gli sciami di agenti nessuno è troppo noioso da attaccare
Nel febbraio 2024 CISA, NSA e FBI hanno diffuso un avviso congiunto: un gruppo sostenuto dallo stato cinese si era installato dentro le infrastrutture critiche americane. Comunicazioni, energia, trasporti, acqua. In alcune reti era lì da più di cinque anni, senza che nessuno se ne accorgesse.
Non aveva portato via dati né chiesto riscatti. Era entrato, aveva studiato com'era fatto l'edificio e si era messo ad aspettare. Cinque anni di accesso non li bruci per un colpo mordi e fuggi, se l'obiettivo è poter spegnere una città il giorno in cui qualcuno deciderà che è arrivato il momento.
Adesso immagina la stessa campagna condotta da uno sciame di agenti, invece che da una stanza piena di costosi operatori in carne e ossa.
Questo bug l'ho rilasciato più di una volta
Anche i tuoi agenti sono una nuova superficie d'attacco, e lo so per esperienza diretta. PandasAI, la libreria che ho avviato nel 2023, fa quello che fa la maggior parte degli agenti: legge un testo scritto da altri, chiede a un modello di trasformarlo in Python ed esegue quel codice sulla tua macchina.
Nel luglio 2023, pochi mesi dopo il lancio, qualcuno ha aperto una issue con un prompt che ordinava al modello di ignorare le istruzioni e restituire codice capace di scrivere un file su disco. Funzionava, perché open era tra le funzioni che il codice generato aveva il permesso di chiamare. In quel thread un contributor ha proposto di lasciar perdere le allowlist ed eseguire tutto in una sandbox. Io ho messo sul tavolo tre opzioni: Docker come runtime facoltativo, un filtro per il codice malevolo e un controllo di similarità per intercettare i prompt che tentano di scavalcare le istruzioni. In pratica ci siamo tenuti i filtri. Ad agosto le CVE erano già due, una sulla 0.8.0 e l'altra proprio sul controllo anti-jailbreak che avrebbe dovuto impedirlo, ancora vulnerabile nella 0.8.1.
Nel gennaio 2024 la segnalazione successiva non toccava nemmeno il prompt. Metteva le istruzioni nel nome di una colonna di un dataframe, e la nostra funzione per generare dati sintetici passava quel nome al modello ed eseguiva qualsiasi cosa tornasse indietro. Chiunque possa scrivere in una cella di un foglio di calcolo che analizzi può dare ordini al tuo agente. Nella 2.0 abbiamo eliminato la funzione.
Nel febbraio 2025 il CERT/CC ha pubblicato VU#148244, relativa alle versioni fino alla 2.4.3. I ricercatori avevano superato i blocchi sugli import, il controllo anti-jailbreak e le allowlist, infilando codice nel prompt in vari modi. Stavolta abbiamo fatto quello che quel contributor aveva suggerito già nel 2023: un'impostazione di sicurezza con livelli più restrittivi e una sandbox che esegue il codice generato in un container Docker isolato dalla rete e con risorse limitate.
Ogni filtro tappava il trucco descritto nella segnalazione che avevamo davanti, e la segnalazione dopo ne usava un altro. Un modello può sempre esprimere la stessa intenzione in un altro modo, quindi filtrarne l'output è una battaglia persa in partenza, esattamente come lo sono le firme contro un attaccante capace di ragionare. A reggere è stato l'isolamento. Se dovessi ricominciare, metterei la sandbox già nella prima release.
La prompt injection è social engineering ai danni di un collega che non dorme mai, non chiede mai il parere di un responsabile e ha in tasca una API key. Parti dal presupposto che quello che scrive sia ostile, eseguilo dove non possa raggiungere niente che ti dispiacerebbe perdere e piazza delle canary anche lì.
Cosa non sapeva fare uno sciame fino a poco tempo fa
Gli sciami d'attacco automatizzati esistono dal 1988. Il worm Morris mise fuori uso circa il dieci per cento di internet senza che una sola persona ci mettesse mano. Nel 2016 Mirai radunò uno sciame di telecamere e router compromessi abbastanza grande da tagliare fuori dal DNS un pezzo della costa orientale degli Stati Uniti, e per entrare gli bastava provare una sessantina di password di default. L'avevano scritto degli studenti universitari in guerra tra loro per il racket della protezione dei server di Minecraft.
Erano tutti sistemi multi-agente distribuiti con un obiettivo. Nessuno li chiamava agenti, perché la parola non andava ancora di moda e perché erano stupidi. Erano script. Ripetevano la stessa mossa sulla prima macchina e sulla quattromilionesima. Non distinguevano un honeypot da un domain controller, non cambiavano tattica quando trovavano una porta chiusa, non erano in grado di guardare quello che avevano trovato e capire se valesse qualcosa.
E così la difesa è stata costruita intorno a quella stupidità. Le firme, perché il payload si ripete. I rate limit e le baseline, perché uno script tiene un ritmo costante e un essere umano no. I punti di strozzatura, perché uno script con un unico controllo cablato nel codice lo puoi fermare proprio lì.
Uno sciame di agenti le manda in crisi tutte e tre. Ogni unità ragiona, e insieme si spartiscono il lavoro: si specializzano, si coordinano, cambiano idea.
Il conto finora, pagato in ore di lavoro umano
Stuxnet nel 2010, la rete elettrica ucraina nel 2015, gli 81 milioni di dollari sottratti alla Bangladesh Bank nel 2016: l'AI non c'entrava niente, e ogni volta sono servite squadre di professionisti esperti al lavoro per mesi. Due casi bastano a far capire quanto fossero risicati i margini.
NotPetya, giugno 2017. Un'operazione dell'intelligence militare russa contro l'Ucraina, veicolata da un aggiornamento compromesso del software di contabilità che tutte le aziende ucraine usavano per le tasse. Poi è sfuggita di mano, come fanno i worm. Maersk, che movimenta qualcosa come un quinto dei container del pianeta, ci ha rimesso circa 300 milioni di dollari e in dieci giorni ha ricostruito all'incirca quattromila server e quarantacinquemila PC. Ce l'ha fatta solo perché un domain controller in Ghana, per un blackout locale, era spento al momento dell'attacco e custodiva ancora una copia pulita della directory aziendale. Il danno complessivo viene di solito stimato intorno ai dieci miliardi di dollari, e l'arma era puntata contro un altro paese.
Colonial Pipeline, maggio 2021. Il carburante di buona parte della costa orientale degli Stati Uniti, bloccato da una banda criminale entrata grazie a un'unica password VPN finita in rete, su un account senza autenticazione a più fattori. La gente faceva la coda ai distributori e riempiva di benzina i sacchetti di plastica.
Tutti questi attacchi hanno richiesto operatori pazienti, esperti e costosi, che sapevano esattamente cosa stavano facendo e avevano mesi a disposizione. Di persone così ce n'erano poche, e questa scarsità proteggeva chiunque non rientrasse nella loro agenda.
Il giudizio esperto ormai costa poco
Nel settembre 2025 Anthropic ha sventato quella che ha definito la prima campagna di spionaggio su larga scala orchestrata dall'AI mai documentata: un gruppo legato a uno stato aveva scatenato uno sciame di strumenti basati su agenti contro una trentina di organizzazioni, e tra l'ottanta e il novanta per cento del lavoro operativo si svolgeva senza alcun intervento umano. Ricognizione, ricerca delle vulnerabilità, test delle credenziali, movimento laterale, esfiltrazione: tutto ripartito tra subagenti. Il contributo principale degli esseri umani è stato convincere il modello che lavorava per un'azienda di sicurezza incaricata di test autorizzati.
Nel giugno 2025 XBOW, un sistema di pentesting autonomo, è salito al primo posto della classifica statunitense dei bug bounty di HackerOne, davanti a tutti i concorrenti umani.
Nell'agosto 2025 si è chiusa al DEF CON l'AI Cyber Challenge della DARPA. I sistemi in gara hanno scovato l'86% delle vulnerabilità sintetiche disseminate in 63 progetti e ne hanno corretto il 68% senza nessuno ai comandi, e già che c'erano hanno trovato 18 bug reali e mai visti prima in software open source in produzione.
Tutti gli attacchi della sezione precedente si reggevano su mesi di giudizio esperto. Un tempo uno sciame era manovalanza a buon mercato collegata a un solo cervello umano, e quel cervello non poteva stare in più di una stanza alla volta. Oggi il giudizio si replica con la stessa facilità della manovalanza.
Ho già scritto che l'AI ha reso lo sviluppo quasi gratuito, e che il regalo è meno generoso di quanto sembri, perché tutti ricevono lo stesso vantaggio nella stessa settimana. Per le startup è una questione di concorrenza. Nella sicurezza diventa una vulnerabilità per l'intero paese, perché una capacità che prima era razionata dal talento ora è razionata dal budget.
Gli sciami hanno ucciso il triage, ed era il triage a proteggerti
Finché le ore degli operatori d'élite erano poche, chi attaccava doveva scegliere. Un'agenzia statale con, mettiamo, duecento persone capaci poteva portare avanti solo una manciata di campagne approfondite alla volta, e i numeri la costringevano a concentrarsi sui bersagli più preziosi e a lasciar perdere il resto. Se eri l'undicesima utility più interessante d'Europa, a proteggerti era la fila.
Gli sciami eliminano la fila. Uno sciame porta avanti in parallelo la paziente occupazione quinquennale e la scansione opportunistica di massa, su centinaia di bersagli, con subagenti specializzati per ogni fase, che non si stancano mai e non hanno bisogno di stabilire priorità. La profondità un tempo riservata a pochi bersagli scelti adesso tocca a tutti.
Una banca, un porto, un gestore regionale della rete elettrica o un'assicurazione farebbero bene a considerarsi nel mirino di un avversario del genere, a prescindere dalla posizione che occupano in qualunque lista.
Uno sciame, due padroni molto diversi
Oggi le aziende strategiche hanno di fronte due avversari che, visti dalla rete, sono indistinguibili.
Il criminale vuole soldi e sceglie la strada più breve, che nel 2026 vuol dire cifrare ciò senza cui non puoi andare avanti e fissare il riscatto appena sotto quanto ti costa restare fermo. Con gli sciami i suoi conti diventano osceni: l'agente di un attaccante può sbagliare nove volte su dieci e vincere comunque, perché i nove tentativi falliti costano pochi dollari di inferenza e il decimo è il colpo grosso.
Lo stato vuole tenersi aperta un'opzione. La guerra ibrida è la dottrina del fare di tutto tranne sparare: pressione esercitata attraverso energia, finanza, logistica e informazione, con un margine di negabilità sufficiente perché nessuno sia costretto a invocare un trattato. La tua azienda è il terreno di scontro. Lo scopo è essere in grado di colpire il tuo paese in un giorno scelto da altri, senza che tu ti accorga mai della sua presenza.
Al momento dell'intrusione non hai modo di capire con chi hai a che fare. Entrambi noleggiano gli stessi strumenti pronti all'uso, entrambi sfruttano credenziali trapelate e tecniche living-off-the-land che non lasciano quasi traccia di malware. L'attribuzione richiede mesi, arriva dalle agenzie di intelligence e giunge molto dopo il momento in cui hai dovuto decidere cosa fare.
La botola delle assicurazioni
Le assicurazioni fanno parte delle aziende strategiche, e sono anche quelle che decidono chi paga quando il resto della lista crolla.
Quando NotPetya ha colpito Merck, l'azienda ha chiesto un indennizzo di circa 1,4 miliardi di dollari. Gli assicuratori si sono rifiutati di pagare, appellandosi all'esclusione per atti ostili o bellici: operazione militare russa, quindi atto di guerra, quindi nessuna copertura. Merck ha fatto causa. La corte d'appello ha stabilito che per applicare l'esclusione serviva un'azione militare vera e propria, e che non bastava un governo animato da cattive intenzioni. Le parti hanno trovato un accordo nel gennaio 2024, pochi giorni prima dell'udienza davanti alla corte suprema dello stato, e così non è rimasto alcun precedente vincolante.
Poi il mercato ha chiuso la falla. Oggi Lloyd's impone alle polizze cyber stand-alone di escludere gli attacchi sostenuti da stati, con la motivazione che perdite del genere potrebbero superare ciò che l'intero mercato assicurativo è in grado di assorbire.
Se quindi uno stato ostile ti mette in ginocchio nel corso di una campagna ibrida, c'è una possibilità concreta che la perdita, per contratto, resti tutta a tuo carico: l'intera cifra, a bilancio, senza nessuna controparte. A quel punto in consiglio di amministrazione si parla di solvibilità, e il budget per la sicurezza è solo una voce di quella discussione.
In Europa i regolatori si sono già mossi. Con NIS2 e DORA tutto questo è diventato un obbligo, con responsabilità esplicite in capo ai consigli di amministrazione, e i termini sono scaduti.
Il tuo sciame contro il loro
Agganciare un modello linguistico alla pipeline di alert che hai già è un modo costoso per rendere il tuo backlog più eloquente. Un agente difensivo che sbaglia una volta su dieci genera una valanga di falsi positivi e sommerge proprio l'analista che avrebbe dovuto aiutare: lo stesso guaio che i SOC hanno già oggi, senza un briciolo di AI in casa.
Contro uno sciame reggono tre cose.
L'inganno come segnale principale. Quasi tutte le tecniche di rilevamento perdono efficacia man mano che gli attaccanti migliorano, perché si basano sul distinguere il comportamento malevolo da quello normale, e più un attaccante è bravo, più sembra normale. Le esche funzionano al contrario. Un host finto, un bucket finto, una credenziale canary lasciata in bella vista in un repository, un record seminato apposta che non corrisponde a nessun cliente reale: niente di tutto ciò ha uno scopo legittimo, quindi nessun processo legittimo ci mette mai mano. Ogni contatto è una prova per definizione, senza nessuna baseline che possa spostarsi nel tempo. L'enumerazione esaustiva è proprio ciò in cui gli sciami eccellono, quindi più setacciano a fondo, più esche fanno scattare. È anche l'unica di queste tecniche capace di stanare un intruso che è rimasto dentro cinque anni senza lasciare malware, perché guarda a ciò che l'intruso ha toccato, non a ciò che si è portato dietro.
Sciami che verificano. Se l'attaccante può parallelizzare, devi farlo anche tu, ma sull'altra metà del problema. Il compito giusto per gli agenti difensivi è prendere un singolo segnale ad alta affidabilità e confermarlo o smontarlo in modo indipendente, prove alla mano, alla velocità di una macchina. L'ora che costa davvero è quella umana spesa a indagare, e in questi settori gli analisti che servirebbero non ci sono in numero sufficiente.
Autonomia, ma con il limitatore. Autonomia piena in lettura, via libera umano obbligatorio per qualsiasi cosa scriva, cancelli o riavvii. Nelle infrastrutture critiche una risposta automatica con un perimetro mal definito può provocare proprio il disservizio che volevi evitare. Il primo worm di internet morì nel 1988 per un'autoreplicazione senza freni, e nessuno sente il bisogno di ritrovarsi quel bug con un budget più grosso.
Esche, costi e ufficio acquisti
Il modello di minaccia è documentato negli avvisi dei governi e negli atti giudiziari. La difesa invece è la parte che vorrei veder messa in discussione, e tre obiezioni precise basterebbero ad affondarla. La prima: oltre qualche centinaio di esche l'inganno smette di ripagare, perché la manutenzione si mangia il segnale. La seconda: la verifica affidata a uno sciame costa più dell'ora di analista che sostituisce, una volta messo in conto il prezzo vero dell'inferenza e non quello sperato. La terza: in una utility l'ufficio acquisti risponde a qualunque controllo nuovo con un progetto pilota di dodici mesi, e questo rende l'intero approccio un esercizio accademico, per quanto funzioni bene.
Negli ultimi anni ho costruito strumenti AI per i dati, e li ho rattoppati, ma non ho mai difeso una sottostazione alle tre di notte, quindi queste obiezioni preferisco sentirle da chi l'ha fatto.
Se ti occupi di sicurezza in una banca, una utility, un aeroporto, un gruppo ospedaliero, un'assicurazione o in qualsiasi altra realtà di cui il tuo paese noterebbe il blackout, scrivimi quale delle tre hai già vissuto sulla tua pelle.