GITHUB_TOKEN (un secreto con ámbito de repositorio), y en una segunda vía lograr la ejecución remota de código en el propio runner de GitHub Actions . Esto podría permitir a un atacante modificar comentarios de pull requests, aprobar cambios maliciosos o manipular el pipeline de CI del repositorio .El repositorio adk-python ejecutaba dos niveles de agentes de IA en su pipeline de CI/CD :
| Nivel | Agente | Privilegio | Activado por |
|---|---|---|---|
| Bajo | Agente de triaje (público) | Solo lectura; solo puede comentar en issues/PRs | Cualquier issue o pull request público de GitHub |
| Alto | Agente de corrección de código (solo mantenedores) | Acceso de escritura al repositorio; puede modificar código, aprobar PRs, acceder a secretos | Comando /adk-issue-fix publicado por un miembro 'Collaborator' del repositorio |
Cadena de ataque paso a paso :
/adk-issue-fix")./adk-issue-fix en el hilo del issue.GITHUB_TOKEN) y puede modificar código o aprobar pull requests .El fallo arquitectónico central fue la ausencia de una barrera de privilegios entre agentes: el agente de mayor nivel confió en el comando porque provenía de una cuenta 'Collaborator', sin verificar nunca si la instrucción se originaba de un humano de confianza o de un agente de bajo privilegio comprometido .
adk-python que estaban involucrados en la cadena entre agentes: issue-analyze.yml, issue-fix.yml y pr-analyze.yml .Investigadores y analistas de toda la industria han extraído varias conclusiones importantes de esta divulgación:
La confianza entre agentes es una nueva superficie de ataque. El modelo de seguridad tradicional asume límites de confianza entre humanos y software; este caso demuestra que los agentes de IA pueden usarse para atacar a otros agentes de IA, cruzando límites de privilegios de forma invisible . La Cloud Security Alliance (CSA) señala que esto es un "fallo de transferencia de confianza": los agentes confían implícitamente en las entradas de otros agentes sin verificar el origen real de esas instrucciones .
La inyección de prompts es la nueva clase de inyección. Así como la inyección SQL y la inyección de comandos definieron los años 2000 y 2010, la inyección de prompts entre agentes —donde la salida de un agente se convierte en la entrada de confianza de otro— es ahora un vector de ataque probado y viable en producción que las arquitecturas de seguridad deben considerar .
La identidad y autorización de los agentes son problemas no resueltos. Actualmente no existe una forma estandarizada para que un agente de IA verifique la identidad real o el nivel de privilegio de otro agente antes de actuar según sus instrucciones. El ataque tuvo éxito porque el sistema confió en la identidad de la cuenta ('Collaborator') en lugar del origen de la instrucción (atacante público) . Los investigadores de la CSA piden "marcos de autorización entre agentes" como un elemento fundamental de seguridad .
Los pipelines de CI/CD que utilizan agentes de IA requieren separación de privilegios. Los arquitectos de seguridad ahora piden: (a) agentes de solo lectura que no puedan emitir comandos operativos, (b) verificación criptográfica de las solicitudes entre agentes, (c) controles de supervisión humana para cualquier comando que escale privilegios, y (d) restringir las salidas de los agentes para evitar que emitan comandos desencadenantes que los sistemas posteriores ejecuten ciegamente .
Esto es un canario para el ecosistema de agentes más amplio. The Register, CSO, CSA y múltiples analistas enmarcan esto como un ataque "sin precedentes" que casi con toda seguridad se replicará en otros marcos multi-agente (por ejemplo, LangChain, AutoGen, CrewAI, Microsoft Copilot Studio) a menos que la industria construya seguridad desde la arquitectura .