GitHub Copilot CLI y la inyección de contexto criptográfico: cómo un texto cifrado en una web filtra tus secretos (y por qué GitHub dice que no es vulnerabilidad)

By Carlos Montiel | Especialista en IA Empresarial
Read in English →
Publicado: 2026-10-08 | Por: Carlos Montiel | Lectura: ~5 minutos

Adversa AI divulgó el 6 de octubre de 2026 que GitHub Copilot CLI puede ser inducido, con instrucciones cifradas escondidas en una página web, a leer archivos locales como .env.prod y enviarlos a un servidor del atacante; GitHub validó el comportamiento pero lo clasificó como "no es una vulnerabilidad del producto".

La técnica: Cryptographic Context Injection (CCI)

CCI oculta instrucciones maliciosas dentro de un bloque cifrado (AES-256-GCM) incrustado en una página web normal. Los clasificadores de contenido que revisan texto plano no ven nada sospechoso. El agente, en cambio, descifra el bloque dentro de su propio entorno de ejecución y trata el resultado como salida confiable, no como contenido externo no confiable. Adversa ya había demostrado la misma idea contra Grok; esta vez la aplicó a un agente de código en terminal.

La cadena de ataque, paso a paso

1. El desarrollador pide a Copilot CLI abrir una página del atacante 2. La página trae texto cifrado y dos "claves" de descifrado 3. Una clave es legítima; la otra está plantillada para pedir datos locales 4. El agente lee los archivos objetivo y los inserta en una cadena 5. El descifrado falla a propósito → el agente prueba la clave genuina 6. El texto descifrado ordena abrir otra URL 7. Esa URL lleva los secretos como parámetros → exfiltración

En la demostración reportada por CyberPress, el CLI transmitió el contenido de un .env.prod a un endpoint del atacante en 28 segundos, y también pudo alcanzar archivos fuera del directorio de trabajo.

La "lotería" del modelo y el modo autopilot

El ataque requiere que el CLI corra en modo autopilot (aprobaciones automáticas) y que lea una página comprometida. Según The Register, el éxito depende del modelo que procese la petición: el modelo mai-code-1.1-flash de Microsoft ejecutó la cadena completa en el 50% de los intentos, mientras que los modelos GPT-5.6 de OpenAI rechazaron el payload. Con selección "Auto" de modelo, el usuario no sabe cuál atiende su sesión, así que su exposición es impredecible.

La respuesta de GitHub y el debate

Adversa reportó el caso al programa de recompensas de GitHub el 17 de septiembre. GitHub validó el comportamiento pero respondió que "requiere que un usuario dirija intencionalmente a Copilot CLI a obtener contenido no confiable o controlado por un atacante y confirme que quiere activar la acción, y por lo tanto no es una vulnerabilidad del producto". No se asignó CVE y, según CyberPress, la cadena seguía reproduciéndose el 1 de octubre. Adversa discrepa.

Dos lecturas válidas: para GitHub, el usuario concedió permisos autónomos y pidió leer esa web; para Adversa, el agente convierte contenido no confiable en instrucciones confiables al descifrarlo. Para tu empresa, la discusión de quién es "culpable" importa menos que el hecho: sin parche ni CVE, la mitigación es tuya.

Mitigaciones que sí dependen de ti

Para empresas que adoptan agentes de código: el riesgo no está en el modelo sino en la combinación de tres cosas: contenido no confiable, acceso a archivos sensibles y capacidad de salir a la red. Quita una de las tres y la cadena se rompe. Define esa política antes de habilitar autonomía, no después de un incidente.
Carlos Montiel
Arquitecto de Soluciones IA Empresarial
Especialista en LLMs, Agentes y Orquestación
guatemalia.com/#contacto · info@guatemalia.com

¿Necesitas implementar IA en tu empresa?

Carlos Montiel es arquitecto de soluciones IA empresarial. Implementa LLMs, Agentes, RAG y orquestadores en empresas de Guatemala y Latinoamérica. Contáctalo para una consultoría.

Contactar a Carlos Montiel

info@guatemalia.com