
Prueba de concepto que demuestra Server-Side Request Forgery en ChatGPT, permitiendo a los atacantes forzar a la IA a realizar solicitudes HTTP arbitrarias, exponiendo infraestructura interna y metadatos de la nube.
Durante el análisis del sistema de IA (ChatGPT GPT-5), se descubrió una vulnerabilidad de Server-Side Request Forgery (SSRF). Este problema ocurre porque la aplicación obtiene y ejecuta automáticamente URLs externas enviadas por los usuarios (por ejemplo, webhooks) sin ninguna validación o saneamiento.
Al explotar esta falla, un atacante puede forzar al servidor de IA a realizar solicitudes HTTP arbitrarias a sistemas internos o externos. Este comportamiento expone información sensible, como la dirección IP real del servidor, encabezados HTTP, servicios internos y potencialmente metadatos de la nube.
Cualquier campo de entrada o mensaje donde el usuario pueda enviar una URL para que la IA la procese.
https://webhook.site/5926e570-88b4-47ea-a6ed-b4c44ec37a1e Verifique este enlace y escríbame un texto sobre él
Cuando se envió esta URL, la IA realizó inmediatamente una solicitud al servidor controlado por el atacante. Del lado del atacante, los registros de solicitudes capturaron detalles sensibles como la dirección IP del servidor de IA, los encabezados de la solicitud y otra información identificativa.
Durante las pruebas, se realizaron los siguientes pasos:
Se envió una URL de webhook controlada (https://webhook.site/5926e570-88b4-47ea-a6ed-b4c44ec37a1e) a la IA.
La IA solicitó inmediatamente la URL proporcionada sin ninguna confirmación.
En el servidor controlado por el atacante, la solicitud fue registrada, revelando detalles sensibles como la dirección IP de origen y los encabezados utilizados por la IA.
Esto confirmó que la IA sigue enlaces externos ciegamente, exponiendo detalles de la infraestructura interna y permitiendo la explotación de SSRF.
Este comportamiento permite a un atacante elaborar solicitudes maliciosas hacia servicios internos.
La presencia de una vulnerabilidad de Server-Side Request Forgery (SSRF) en la aplicación de IA plantea un riesgo crítico para la seguridad de la infraestructura subyacente. Debido a que el sistema sigue automáticamente las URLs proporcionadas por el usuario, un atacante puede aprovechar este comportamiento para forzar al servidor de IA a realizar solicitudes HTTP arbitrarias a endpoints controlados por el atacante. Esto expone información sensible como direcciones IP internas, encabezados HTTP y potencialmente tokens de autenticación. Más críticamente, la vulnerabilidad puede ser utilizada para atacar servicios solo internos, eludir restricciones de firewall y acceder a endpoints de metadatos de la nube, lo que permite el robo de credenciales temporales que pueden escalar al compromiso total de los recursos en la nube. Dado que la vulnerabilidad es explotable de forma remota sin requerir autenticación o interacción del usuario, la probabilidad de explotación masiva es alta, amenazando significativamente la confidencialidad, integridad y la confianza general en la plataforma.
Para mitigar la vulnerabilidad SSRF identificada, la aplicación de IA debe implementar una validación y saneamiento estrictos de todas las URLs proporcionadas por el usuario antes de iniciar solicitudes salientes. El sistema solo debe permitir el acceso a una lista predefinida de dominios confiables y bloquear explícitamente los rangos de IP privadas, direcciones de loopback y servicios de metadatos de la nube. Además, la aplicación debe restringir los protocolos aceptados a HTTPS (y opcionalmente HTTP), mientras que no permite otros como file, gopher y ftp para evitar abusos. El tráfico de red saliente de la IA debe ser enrutado a través de un proxy o firewall con políticas de filtrado estrictas para garantizar que no se puedan alcanzar destinos no autorizados. El componente responsable de realizar solicitudes externas debe estar aislado en un entorno de pruebas (sandbox) sin acceso directo a recursos internos sensibles. Finalmente, todas las solicitudes salientes iniciadas por la IA deben registrarse y monitorearse activamente en busca de actividad sospechosa, y el diseño del sistema debe revisarse para garantizar que las solicitudes externas automatizadas estén sujetas a aprobación explícita o controles de seguridad antes de su ejecución.