← Todos los insights

Análisis de noticiaEnfoque: España y Latinoamérica3 min de lectura

La inyección de prompts ya es un hallazgo de código: GitHub marca rutas de agentes en los pull requests

El code scanning de GitHub para aplicaciones de IA, en preview pública, marca el código donde contenido no confiable llega a un modelo con herramientas o datos. AI Scan revisa repositorios enteros.

Escuche este artículo · 4 min

Narración completa del artículo, generada con IA.

Galerías de larvas de escarabajo bajo la corteza de un árbol, en el duotono de La Madre, junto a las palabras Inyección en el código
Foto: Rosser1954 Roger Griffith (Wikimedia Commons, Public domain)

La inyección de prompts se ha tratado casi siempre como un problema del modelo: algo que filtrar en el runtime, probar con red teaming y confiar en que el próximo modelo resista. El lanzamiento de GitHub del 28 de octubre la trata como otra cosa: un defecto con una ubicación concreta en el código.

El code scanning para aplicaciones de IA, ahora en preview pública en github.com, se ejecuta sobre los pull requests junto a CodeQL. Busca rutas de código de agentes donde contenido no confiable puede llegar a un modelo con acceso a herramientas, datos o sistemas de negocio, y las reporta en el pull request con orientación de mitigación. Las primeras clases de riesgo son la inyección de prompts indirecta, la divulgación de información sensible y la agencia excesiva.

La ruta, no el prompt

La idea útil está en qué busca el escáner. Una inyección solo importa cuando tres cosas coinciden en el mismo flujo:

Qué hace explotable una inyección01Contenido noconfiable02Llamada al modelo03Herramientas o datos04Efecto de negocio
  1. Contenido no confiable
  2. Llamada al modelo
  3. Herramientas o datos
  4. Efecto de negocio
El escáner marca el código donde existe esta ruta. Romper cualquiera de sus eslabones es una mitigación.

Cada uno de esos elementos es visible en el código. Qué entradas se obtienen, cuáles se colocan en un prompt, qué herramientas puede invocar la misma llamada y con qué credenciales. Un escáner puede encontrar esa ruta igual que encuentra una consulta SQL construida con entrada del usuario. No puede decirle si un modelo concreto obedecerá una inyección concreta, y no lo necesita: si la ruta existe, el diseño es frágil.

Eso también indica cómo corregir un hallazgo. Quite la herramienta de las llamadas que leen contenido no confiable, separe la lectura y la acción en pasos distintos con una comprobación entre ambos, o reduzca el alcance de la herramienta. Describimos el mismo principio cuando ocho fallos en los servidores MCP oficiales mostraron herramientas que excedían el acceso que se les había dado.

Repositorios completos, no solo cambios

El segundo lanzamiento extiende AI Scan, que cubrimos cuando alcanzó la disponibilidad general (GA) para pull requests, a repositorios completos en preview pública. Un escáner agéntico explora el último commit de la rama por defecto, se centra en el código con más probabilidad de ser vulnerable, cubre lenguajes y frameworks que CodeQL no cubre y omite los problemas que CodeQL ya reporta. Cada análisis tiene un presupuesto de tiempo fijo, lo que acota su coste y significa que no es exhaustivo. Los análisis posteriores reportan solo hallazgos nuevos, y las alertas no se cierran cuando se fusiona una corrección: hay que iniciar otro análisis para cerrarlas.

Esto importa para el código anterior a su revisión de IA: los servicios escritos hace tres años que un agente ahora llama. Después de que Anthropic mostrara modelos encadenando fallos individualmente menores, el código existente es la parte de la superficie de ataque que queda más expuesta sin cambiar.

Requisitos y límites

  • Escaneo de aplicaciones de IA: preview pública, solo github.com, no GitHub Enterprise Server. Requiere GitHub Advanced Security con code scanning y el nuevo escaneo habilitado por repositorio. GitHub dice que la cobertura se ampliará; la nota de lanzamiento no enumera lenguajes ni frameworks compatibles.
  • AI Scan para repositorios: preview pública. Consume créditos de Code Security AI, con presupuestos a nivel de SKU y un aviso cuando se agotan. No necesita licencia de Copilot. Los repositorios privados en organizaciones necesitan Code Security o Advanced Security; los repositorios privados propiedad de cuentas personales no son compatibles.

Un escáner que encuentra la ruta de la inyección es una herramienta de revisión de diseño, no una garantía. Se le escaparán flujos que cruzan servicios u ocurren a través de la configuración. Úselo para hacer visible la ruta en la revisión, y mantenga los controles de runtime (herramientas con privilegio mínimo, aprobación en acciones con consecuencias, logs) que sostienen cuando el escáner no ve.

¿Tiene un caso de uso de IA detenido entre el prototipo y la producción?

Cuéntenos qué quiere poner en marcha. Le respondemos con próximos pasos honestos.

Conversemos sobre un caso de uso