Google ADK per Python, una catena di falle permette attacchi tra agenti AI
Scoperta una catena di falle nel Google ADK per Python che permette attacchi tra agenti AI tramite GitHub. Rischi per CI/CD e misure di protezione.
Immagine illustrativa generata con AI
Prompt injection da GitHub contro agenti con privilegi diversi
Pillar Security ha individuato una catena di vulnerabilità nell’Agent Development Kit (ADK) for Python di Google, distribuito nel repository adk-python.
L’attacco parte da una pull request o da una issue GitHub contenente istruzioni manipolate. Un agente pubblico, con privilegi limitati, può così influenzare un agente interno incaricato della manutenzione.
Il secondo agente, dotato di autorizzazioni più ampie, può essere indotto a compiere operazioni non previste. Il problema nasce quindi dalla delega automatica tra agenti con livelli di fiducia differenti, non soltanto dal contenuto della singola prompt injection.
Il rischio per Gemini, GitHub e le pipeline CI/CD
La vulnerabilità interessa scenari che utilizzano l’ADK insieme a Gemini, Gemini CLI, workflow GitHub e automazioni CI/CD. Il pacchetto ha superato i 90 milioni di download.
In un ambiente configurato in modo esposto, la catena può facilitare:
- escalation indiretta dei privilegi tra agenti;
- approvazione o pubblicazione di modifiche non autorizzate;
- esecuzione di codice malevolo nelle pipeline;
- compromissione della supply chain software.
Un agente pubblico non deve necessariamente ottenere direttamente i privilegi amministrativi: può sfruttare l’agente interno come intermediario operativo.
Pillar Security ha segnalato le falle a Google all’inizio di giugno. La ricerca è stata resa pubblica il 4 agosto. La fonte non indica né un punteggio CVSS né identificativi CVE.
Correzioni e misure per gli ambienti ADK
Google ha corretto le vulnerabilità il 9 luglio e il 21 luglio. Chi utilizza l’ADK dovrebbe aggiornare il pacchetto alle versioni corrette e controllare anche le dipendenze presenti nei progetti.
Le principali contromisure sono:
- separare rigidamente gli agenti pubblici da quelli privilegiati;
- impedire agli input non attendibili di generare comandi operativi;
- richiedere approvazioni manuali prima di attivare workflow sensibili;
- monitorare e validare gli eventi GitHub;
- applicare il principio del privilegio minimo alle pipeline CI/CD.
La separazione dei ruoli deve essere accompagnata da controlli sulle azioni delegate: un agente privilegiato non dovrebbe trattare automaticamente come attendibili istruzioni provenienti da contenuti pubblici.
Fonti
Questo articolo è una rielaborazione originale basata sulle fonti seguenti.




