L'automazione del codice tramite agenti AI sta introducendo nuove e insidiose vulnerabilità nella supply chain dello sviluppo software. Ricercatori della piattaforma di sicurezza AI 0DIN, parte di Mozilla, hanno dimostrato come un agente di coding possa essere indotto a eseguire codice malevolo partendo da un repository GitHub che appare completamente benigno, bypassando scanner di sicurezza e revisioni umane.
L'inganno della "pulizia" apparente
Il cuore dell'attacco non risiede in un exploit tradizionale o in codice malevolo visibile nel repository. La tecnica sfrutta invece la capacità di auto-riparazione degli agenti AI, come Claude Code. L'attaccante pubblica un progetto con istruzioni di setup standard (ad esempio, l'installazione di dipendenze tramite pip3). Tuttavia, il pacchetto Python è progettato per fallire intenzionalmente al primo avvio, restituendo un messaggio di errore che suggerisce all'utente — o all'agente AI — di eseguire un comando specifico per l'inizializzazione, come python3 -m axiom init.
La catena di esecuzione invisibile
Quando l'agente AI, nel tentativo di risolvere l'errore e completare il setup, esegue il comando suggerito, innesca una reazione a catena invisibile:
- Il comando richiama uno script shell.
- Lo script interroga un record DNS TXT controllato dall'attaccante.
- Il valore recuperato dal DNS viene eseguito direttamente come comando sul sistema della vittima.
Un trend di attacchi agli agenti AI
Questa scoperta si inserisce in un contesto di crescente ostilità verso gli strumenti di coding assistito. Recentemente è emerso il caso del worm Miasma, che ha colpito decine di repository Microsoft sfruttando proprio l'integrazione con gli agenti AI per diffondersi e rubare credenziali cloud.
Per mitigare questi rischi, 0DIN suggerisce che gli agenti AI debbano rendere esplicita l'intera catena di esecuzione dei comandi, inclusi gli script e il codice recuperati dinamicamente durante il runtime. Senza una trasparenza totale sui processi di setup, gli agenti rimarranno vulnerabili a tattiche di ingegneria sociale applicate al codice.
