ZombieAgent: el ataque que resucita viejas fugas de datos en ChatGPT

8 de enero de 2026
5 min de lectura
Ilustración de una interfaz de chatbot con datos escapando en forma de código

ChatGPT vuelve a estar en el punto de mira por algo que la industria ya conoce demasiado bien.

Investigadores de la firma de seguridad Radware han demostrado un nuevo ataque contra el asistente de OpenAI capaz de robar datos privados de forma sigilosa y, además, dejar su lógica escondida en la memoria a largo plazo del modelo. Han bautizado la técnica como ZombieAgent, heredera directa de una vulnerabilidad previa llamada ShadowLeak.

Como detalla Dan Goodin en Ars Technica, el caso ilustra un patrón que se repite: se descubre una técnica de ataque, el proveedor levanta una valla, y con un pequeño giro los investigadores vuelven a colarse. El problema de fondo –la inyección de prompts– sigue sin resolverse.


De ShadowLeak a ZombieAgent

Radware hizo pública la vulnerabilidad ShadowLeak en septiembre de 2025. Apuntaba a Deep Research, un agente integrado en ChatGPT.

El flujo era sencillo:

  • El atacante inserta instrucciones ocultas en un correo electrónico o documento.
  • El usuario pide al agente que resuma ese contenido.
  • El modelo interpreta esas instrucciones embebidas como si fueran un prompt legítimo.
  • La inyección ordena a Deep Research construir una URL con el nombre y la dirección del empleado como parámetros y abrirla.
  • Al abrir la URL, los datos sensibles acaban registrados en los logs del servidor del atacante.

OpenAI reaccionó restringiendo a ChatGPT: ya no podía construir nuevas URLs. Solo se le permitía abrir enlaces exactamente tal y como se le habían proporcionado, sin añadir parámetros ni concatenar datos del usuario.

Con eso, ShadowLeak quedó neutralizado.

La idea, no.


Un ajuste mínimo, un ataque nuevo

Radware aplicó entonces –según resume Ars– un “esfuerzo modesto” para buscar un bypass. El resultado es ZombieAgent.

En lugar de pedir al agente que construya una URL con datos embebidos, la nueva inyección le entrega una lista completa de URLs ya preparadas, por ejemplo:

  • https://example.com/a
  • https://example.com/b
  • … hasta z, más 0–9.

El prompt le explica al agente cómo codificar los datos:

  • usar un token especial para los espacios,
  • mapear cada carácter del dato (nombre, dirección…) a una de esas URLs.

Como OpenAI había prohibido construir URLs con parámetros, pero no había bloqueado elegir de una lista y añadir una sola letra, el agente pudo exfiltrar la información carácter a carácter, abriendo un enlace por cada símbolo.

En el servidor, el atacante solo tiene que revisar los logs de acceso y reconstruir la cadena a partir del orden de las peticiones.

Radware lo resume así: “Attackers can easily design prompts that technically comply with these rules while still achieving malicious goals.”


Sin rastro en el endpoint y con memoria persistente

ZombieAgent no se queda en el truco del goteo de datos.

Ars Technica destaca dos elementos especialmente preocupantes para entornos corporativos:

  1. El tráfico sale directamente de los servidores de ChatGPT. No hay malware en el equipo del usuario ni conexiones sospechosas desde la red interna hacia un dominio raro. Desde fuera, parece tráfico normal de un servicio en la nube.
  2. El ataque se graba en la memoria a largo plazo del asistente. La inyección ordena a ChatGPT almacenar la lógica de bypass en el espacio de memoria persistente asignado a ese usuario, lo que le da persistencia entre sesiones.

En la práctica, se combinan:

  • sigilo (sin indicadores claros en el endpoint),
  • persistencia (la lógica sigue viva en la memoria del asistente),
  • fuga de información (carácter a carácter vía URLs).

Todo disparado, potencialmente, por un correo aparentemente inocente.


El talón de Aquiles: distinguir texto de instrucciones

El problema va más allá de OpenAI. Afecta al diseño actual de la mayoría de agentes basados en LLM.

Cuando pides: “Resume este email”, el modelo:

  • lee el texto completo,
  • trata ese contenido tanto como información a procesar como posible fuente de instrucciones.

Eso implica que:

  • Las instrucciones maliciosas incrustadas en el mensaje son indistinguibles de las órdenes legítimas del usuario.
  • El modelo no tiene “entendimiento inherente de la intención” ni una frontera fiable entre reglas del sistema y contenido externo no confiable.

A esta familia de problemas se la conoce como inyección indirecta de prompts, o simplemente prompt injection.

Los proveedores pueden ir levantando vallas: “no añadas parámetros”, “no sigas enlaces desconocidos”… Pero son medidas reactivas y ad hoc. Cambias un poco la técnica, el encoding o el contexto, y el ataque renace con otro nombre.

Pascal Geenens, vicepresidente de inteligencia de amenazas en Radware, lo expresó sin rodeos: “Guardrails should not be considered fundamental solutions for the prompt injection problems. Instead, they are a quick fix to stop a specific attack.” Mientras no haya una solución de fondo, la inyección de prompts seguirá siendo una amenaza activa.

Ars traza un paralelismo con la inyección SQL y los errores de corrupción de memoria: décadas de mitigaciones han reducido el impacto, pero la clase de vulnerabilidad nunca ha desaparecido del todo.


El último parche de OpenAI

Tras el aviso de Radware, OpenAI ha implementado un nuevo cambio defensivo, según Ars Technica.

A partir de ahora, los agentes de ChatGPT:

  • no abrirán enlaces que provengan de emails, salvo que
    • el enlace figure en un índice público muy conocido, o
    • el usuario haya proporcionado explícitamente esa URL en el chat.

El objetivo es doble:

  • impedir que el agente siga automáticamente URLs base controladas por un atacante,
  • dificultar que una simple inyección en un correo dispare tráfico hacia dominios maliciosos.

Es otra valla más. Probablemente sube el listón para la explotación práctica, pero no responde a la pregunta clave: ¿cómo dejar que un LLM lea contenido arbitrario sin que obedezca las trampas escondidas dentro?


Lecciones para empresas que ya usan (o quieren usar) agentes de IA

Si estáis integrando modelos de lenguaje en flujos de trabajo –para correo, documentación interna o navegación web–, ZombieAgent es una señal clara de que hay que tomarse la superficie de ataque muy en serio.

Algunas recomendaciones prácticas:

  • Tratar la inyección de prompts como una clase de riesgo permanente. Igual que la inyección SQL: algo que se mitiga por diseño, con pruebas continuas y monitorización.
  • No delegar toda la seguridad en las “guardrails” del proveedor. Son útiles, pero por definición apuntan a técnicas concretas, no al problema estructural.
  • Restringir al máximo lo que pueden hacer los agentes. Listas blancas de dominios, sistemas y acciones permitidas, en vez de dar acceso amplio a Internet o a sistemas críticos.
  • Registrar y revisar las acciones que ejecuta la IA. Como el tráfico parece legítimo, la visibilidad es clave para detectar anomalías.

ZombieAgent recuerda que, por muy impresionantes que sean las respuestas, los asistentes actuales siguen siendo modelos estadísticos obedientes. Cualquier texto que procesan –un correo, un informe, una web– puede convertirse en un canal de ataque si no levantáis vuestras propias defensas alrededor.

Comentarios

Deja un comentario

Aún no hay comentarios. ¡Sé el primero!

Publicaciones relacionadas

Mantente informado

Recibe las últimas noticias de IA y tecnología en tu correo.