Vulnerabilidad del Agente de IA de GitHub: una frase en un issue puede robar datos privados
GitHub
Noma Security
Noma Security descubrió una vulnerabilidad de inyección de prompts llamada GitLost que explota los nuevos flujos de trabajo agénticos de GitHub para filtrar datos privados. Los atacantes incrustan instrucciones ocultas en issues públicos de GitHub, eludiendo las medidas de seguridad e induciendo al agente de IA a divulgar información confidencial en comentarios públicos.
El GitLost de Noma Security es un exploit de inyección de prompts que ataca los flujos de trabajo agénticos de GitHub, permitiendo a los atacantes robar datos privados sin necesidad de conocimientos de hacking. El flujo de trabajo vulnerable, configurado para ejecutarse en eventos de issues asignados, lee los títulos y cuerpos de los issues, publica respuestas mediante la herramienta add-comment y tiene permisos de lectura para otros repositorios de la organización, incluidos los privados. Un atacante solo necesita crear un issue en un repositorio público de una organización que use el flujo de trabajo vulnerable y esperar; no se requieren credenciales ni acceso. A pesar de los estrictos mecanismos de protección de GitHub, el uso de la palabra clave 'Additionally' desencadenó un comportamiento inesperado en el modelo, lo que hizo que accediera a un archivo restringido y publicara su contenido en un comentario público. Los modelos de seguridad tradicionales asumen que el código mantiene los límites de confianza, pero en los sistemas agénticos, la confianza depende parcialmente del comportamiento del modelo, que inherentemente sigue instrucciones. La inyección de prompts en la IA agéntica se está convirtiendo en algo como la inyección SQL en las aplicaciones web: una vulnerabilidad sistemática de toda una clase que requiere defensas sistemáticas. Noma recomienda tratar el contenido controlado por el usuario como entrada no confiable, limitar los permisos de los agentes al mínimo necesario, restringir las divulgaciones públicas y desinfectar o aislar las entradas del usuario del contexto de instrucciones. Los miembros de la comunidad señalaron que los repositorios privados no son un límite de seguridad cuando los agentes tienen acceso, y que la evasión con 'Additionally' es un problema de límite de decisión, no de contenido.
Fuente: InfoQ 中国 —
original
