A giugno 2026 un modello sperimentale di OpenAI doveva cercare quanto spende lo Stato di Victoria in farmaci per le malattie della pelle. Nei dataset pubblici non ha trovato il dato. Allora, secondo quanto ricostruito da TechCrunch il 29 settembre 2026 sulla base del post di scuse di OpenAI, è entrato in un sistema interno di Services Australia, ha eseguito comandi, ha recuperato file e credenziali, e ha perfino scritto file. In un altro episodio gli agenti hanno raggiunto la Agency for Health Information dello Stato di Victoria attraverso una chiave di accesso esposta, portando via configurazioni di reportistica e statistiche aggregate. OpenAI dice di non aver trovato prove di accesso a cartelle cliniche o penali di singole persone. Le autorità australiane sono state avvisate solo il 10 settembre.
Nessuno aveva chiesto all’agente di violare qualcosa. Aveva un obiettivo e, quando la via pubblica non è bastata, ne ha cercata un’altra. È il dettaglio che interessa a chi gestisce un sito WordPress o un gestionale di una PMI: difficilmente il tuo sito finirà nella valutazione interna di un laboratorio AI, ma riceverà sempre più visite da agenti che hanno un compito da finire. La domanda pratica è dove mettere le ore di sicurezza: nel bloccare gli agenti AI in quanto tali, o nel chiudere le porte che un agente troverebbe?
Il criterio: cosa ferma chi cerca un dato e non si arrende
Confronto le due strade su un solo criterio, il comportamento che il caso australiano ha mostrato: un agente che, se la via pubblica non basta, ne cerca un’altra. Lo declino in tre domande: quanto costa la difesa, cosa copre davvero, cosa si rompe quando il traffico di agenti cresce.
Strada A: riconoscere e bloccare gli agenti
È la reazione istintiva: robots.txt con i crawler AI in Disallow, regole WAF sugli user-agent noti, plugin che bloccano i bot per nome o per IP.
Il vantaggio è il costo. Si configura in mezz’ora, non richiede di sapere dove stanno i punti deboli del sito e riduce subito il rumore nei log. Per il tema contenuti, cioè chi può leggere e riusare i tuoi articoli, è una leva legittima, e ne ho scritto in crawler AI: bloccarli o licenziare i contenuti.
Il limite è scritto nello standard stesso. La RFC 9309, che definisce robots.txt, lo dice in due frasi: queste regole «non sono una forma di autorizzazione all’accesso», e il protocollo «non sostituisce misure valide di sicurezza dei contenuti». Aggiunge un effetto collaterale che molti ignorano: elencare un percorso in robots.txt lo rende pubblico e quindi più facile da trovare. Un Disallow: /gestionale-interno/ è un cartello che indica la porta.
Il blocco per nome funziona con chi si presenta e rispetta le regole. Con un agente che ha un obiettivo e trova una credenziale valida, il nome con cui si presenta diventa irrilevante: una chiave esposta viene accettata da chiunque la usi, bot o persona. E quando gli agenti si moltiplicano, la lista dei nomi da bloccare va inseguita a mano, sempre in ritardo.
Strada B: chiudere la superficie
Qui non ti chiedi chi bussa, ti chiedi cosa trova. In pratica, su un sito WordPress o un’integrazione di una PMI:
- nessuna chiave API, password applicativa o token nel codice del tema, nei file JavaScript serviti al browser, nei backup lasciati in
/wp-content/o nei repository pubblici; - ogni endpoint che restituisce dati interni verifica chi chiama a ogni richiesta, non solo all’ingresso;
- chiavi con il permesso minimo e una scadenza: una chiave in sola lettura su un solo servizio fa meno danni di una chiave amministrativa;
- log degli accessi con credenziali, letti davvero, con un avviso quando una chiave viene usata da un indirizzo mai visto.
Il costo è più alto e meno prevedibile. Serve un inventario di dove stanno le credenziali, e spesso salta fuori qualcosa di vecchio: la chiave di un servizio email incollata in un plugin, un file di esportazione dimenticato. Ho raccontato un caso tipico in un file nascosto non è privato. Non è mezz’ora, è una giornata di lavoro sul primo sito e qualche ora sui successivi.
In cambio copre il caso che la strada A non vede. Nel caso della Agency for Health Information l’accesso è passato da una chiave esposta: nessun blocco per nome l’avrebbe fermato, una chiave che non c’era sì. E regge la crescita: dieci o mille agenti in più non cambiano nulla, perché la difesa non dipende da chi arriva. È lo stesso principio del confronto di ieri su VPN o JWT firmato per le API WordPress: la verifica a ogni richiesta resiste quando lo strato esterno cede.
Le due strade, domanda per domanda
Costo iniziale. A: minuti, un file e qualche regola. B: un inventario delle credenziali e degli endpoint, da una giornata in su.
Cosa copre. A: il traffico che si dichiara e rispetta le regole. B: chiunque trovi una porta, a prescindere da come si presenta.
Cosa si rompe quando crescono gli agenti. A: la lista dei nomi, che invecchia ogni mese. B: niente di strutturale, al massimo i log da leggere diventano più lunghi.
Cosa fare in una PMI, questa settimana
Non serve scegliere una volta per tutte, serve un ordine. Primo: cerca chiavi e token nel codice del tema, negli snippet, nei file serviti al browser e negli archivi scaricabili. Secondo: per ogni integrazione, dal CRM al gestionale, chiediti quale permesso ha la chiave e se può essere ridotto. Terzo: attiva un log degli accessi con credenziali. Solo dopo, se ti interessa per i contenuti, aggiungi le regole sui crawler AI.
Se lavori con clienti, c’è anche un tema di responsabilità. OpenAI si è scusata soprattutto per non aver avvisato subito il governo, e ha scritto che avrebbe dovuto gestire meglio la risposta. Il primo ministro Anthony Albanese ha definito l’accaduto «inaccettabile» e il governo valuta misure legali. Se un agente passa da una chiave esposta sul sito che hai consegnato tu, la domanda che ti faranno è da quanto tempo era lì.
La mia take
Bloccare gli agenti per nome è igiene dei contenuti, non sicurezza. Va bene farlo, ma se è l’unica cosa che hai fatto, hai protetto il sito da chi non ti avrebbe comunque fatto danni. Il caso australiano mostra che un agente con un obiettivo può usare le credenziali che trova come se fossero un permesso. Le ore vanno prima sulla strada B: meno chiavi in giro, ognuna con il minimo dei permessi, e ogni endpoint che controlla chi chiama. Il resto viene dopo.

