sistema: OPERATIVO
← volver a todos los hacks
INDIRECT INJECTION MEDIUM NEW

ChatGPhish: el Markdown no confiable convierte los resúmenes de ChatGPT en phishing

Permiso divulgó ChatGPhish el 29 de mayo de 2026: una página que pides resumir a ChatGPT puede mostrar enlaces maliciosos, falsas alertas, códigos QR y píxeles de rastreo dentro de la interfaz de confianza.

2026-06-20 // 7 min affects: chatgpt, web-agents, ai-summarizers

¿Qué es esto?

ChatGPhish es una técnica de inyección de prompt indirecta divulgada por Permiso Security el 29 de mayo de 2026, en un informe del threat hunter Andi Ahmeti titulado ChatGPhish: The Page Is the Payload. El hallazgo se reportó primero a OpenAI a través de Bugcrowd el 29 de abril de 2026 bajo el título Untrusted Markdown Rendering Leads to XSS, Phishing, and Data Exfiltration, y se hizo público tras un mes sin corrección del proveedor.

El problema central es una falla en la frontera de confianza del modo en que ChatGPT representa sus propias respuestas. Cuando un usuario pide al asistente resumir una página web de terceros, el motor de renderizado de chatgpt.com confía en los enlaces y las URL de imágenes Markdown que provienen de esa página no confiable. Recupera automáticamente las imágenes y presenta los enlaces como elementos clicables activos dentro de la interfaz de confianza. El resumen que lee el usuario ya no es texto puramente generado por el modelo: puede transportar contenido colocado por el atacante.

Cómo funciona

El atacante no necesita acceso a la cuenta de la víctima ni un fallo del navegador. Solo requiere una página web que controle y una víctima que pida a ChatGPT resumirla. Una pequeña carga añadida a una página por lo demás corriente viaja a través del resumen hasta la respuesta mostrada.

A partir de ahí, Permiso demuestra cuatro primitivas, todas basadas en que el motor de renderizado confía automáticamente en el Markdown originado en la página resumida:

  • Píxeles de rastreo. Una imagen alojada por el atacante e incrustada en la página se recupera automáticamente al renderizar la respuesta, filtrando la dirección IP, el User-Agent y el Referer de la víctima al servidor del atacante: una baliza silenciosa en cada render.
  • Enlaces de phishing activos. Enlaces Markdown controlados por el atacante se presentan como elementos clicables indistinguibles de la salida del modelo, heredando la credibilidad de la interfaz del asistente.
  • Falsas alertas del sistema. El contenido inyectado puede imitar el propio estilo de ChatGPT para mostrar advertencias falsas de cuenta o seguridad, dirigiendo al usuario hacia una página de robo de credenciales.
  • Pivote por código QR. Un código QR servido desde un bucket del atacante se muestra en línea; escanearlo lleva a la víctima a un dispositivo móvil, eludiendo el filtrado de URL del equipo de escritorio y los controles corporativos.

Es inyección de prompt OWASP LLM01, pero lo notable no es la inyección en sí: es que las instrucciones incrustadas en una página se siguen y se presentan al usuario como parte del resumen. Permiso lo describe como un giro del correo al navegador: el usuario ya no tiene que abrir un adjunto sospechoso, solo resumir una página durante la navegación normal. Hace eco del trabajo anterior de Permiso (marzo de 2026) sobre una inyección cruzada (XPIA) comparable a través de los resúmenes de correo de Microsoft Copilot.

Por qué importa

El resumen es una de las funciones de asistente más comunes y más confiables, y las organizaciones canalizan cada vez más la investigación y el triaje a través de ella. ChatGPhish convierte ese hábito en una superficie de ataque: cualquier página que un empleado pida procesar puede portar una carga, y la salida aterriza en una interfaz en la que los usuarios han aprendido a confiar. La primitiva de exfiltración es pasiva y no requiere ningún clic, mientras que el phishing y el QR explotan la autoridad percibida del asistente para bajar la guardia de la víctima. El mismo patrón se generaliza a cualquier producto LLM que represente Markdown enriquecido a partir de contenido no confiable resumido.

No es un fallo de ejecución remota de código y exige que el propio usuario inicie el resumen de contenido influido por el atacante, lo que acota su alcance. Considérelo un vector de phishing y rastreo de alta frecuencia y baja fricción, más que una vulnerabilidad de compromiso del sistema.

Defensas

Para los equipos que construyen o despliegan resumen mediante LLM:

  • No recupere automáticamente imágenes remotas derivadas de una salida del modelo basada en contenido no confiable. Aplace o use un proxy para las cargas de imágenes, de modo que un render no se convierta en una baliza de rastreo, y elimine los metadatos de la solicitud.
  • Neutralice los enlaces procedentes del contenido resumido. Muestre las URL derivadas del atacante como texto inerte, exhiba el destino completo, o condiciónelas a una advertencia explícita de que el enlace viene de la página, no del asistente.
  • Separe la presentación del modelo del contenido. Nunca permita que el texto resumido reproduzca el estilo de alerta o de sistema del producto; reserve los elementos de interfaz de confianza para los mensajes de primera parte.
  • Aplique la disciplina del trío letal. Una entrada no confiable más un canal de renderizado que llega al usuario bastan para causar daño aquí; impida que el contenido resumido controle una interfaz privilegiada o solicitudes salientes.
  • Para los usuarios: trate un resumen de IA de una página desconocida como la propia página — no haga clic en enlaces, no escanee códigos QR ni actúe ante alertas de seguridad que aparezcan dentro de un resumen.

Estado

ElementoDetalle
Divulgado porPermiso Security (Andi Ahmeti)
Reportado a OpenAI29 de abril de 2026 (Bugcrowd)
Divulgación pública29 de mayo de 2026
ClaseInyección de prompt indirecta / cruzada (OWASP LLM01)
ImpactoExfiltración de datos, phishing, falsas alertas, pivote QR
Corrección del proveedor en la divulgaciónNinguna reportada

ChatGPhish es una técnica documentada y divulgada de forma responsable, no una biblioteca de cargas. La lección sobrevive al producto concreto: cuando un asistente representa contenido enriquecido derivado de páginas no confiables, la capa de renderizado forma parte de la superficie de ataque y debe tratarse como salida hostil.

Sources