ChatGPT dice que grandes interrupciones en su interfaz web y API parecen ser el resultado de un ataque malicioso, en medio de un resurgimiento de incidentes de DDoS.
Los ataques DDoS de ChatGPT, que afectaron al servicio tanto de clientes gratuitos como de pago, comenzaron el 7 de noviembre, cuando OpenAI presentó una serie de nuevas ofertas. Luego escaló de manera más grave el 8 de noviembre.
Inicialmente, OpenAI dijo el 8 de noviembre que había "identificado un problema que resultaba en altas tasas de errores en la API y ChatGPT, y estamos trabajando en su solución" y sugirió que estos problemas habían sido resueltos.
(Los ingenieros de la compañía habían dicho anteriormente que en el lanzamiento de ChatGPT fue tan exitoso que pensaron que el tráfico legítimo era un ataque DDoS, y el CEO Sam Altman sugirió esta semana que las interrupciones fueron el resultado de un interés en sus nuevos servicios "más allá de nuestras expectativas").
Pero en su última actualización de estado, la compañía ahora dice que "estamos lidiando con interrupciones periódicas debido a un patrón de tráfico anormal que refleja un ataque DDoS. Seguimos trabajando en mitigar esto..."
Los ataques han sido atribuidos al grupo de amenazas ruso "Anonymous Sudan", que afirmó en su canal de Telegram que los ataques se debían al apoyo de OpenAI a Israel.
El incidente ocurre menos de un mes después de que AWS, Cloudflare y Google fueran víctimas de ataques DDoS históricos que explotan una vulnerabilidad (asignada a CVE-2023-44487) en el protocolo HTTP/2 utilizado por todos los servidores web modernos, con el tipo de DDoS llamado "Rapid Reset".
Ver también: La mayoría de Internet expuesta a vulnerabilidad zero day en HTTP/2, mientras los servicios de escala hiperreportan ataques DDoS históricos
En aquel momento, Cloudflare señaló que los ataques DDoS históricos, que alcanzaron los 398 millones de solicitudes por segundo, se generaron con una botnet de solo 20,000 máquinas, lo que resulta preocupante, según agregó, dado que hoy existen botnets compuestas por cientos de miles o millones de máquinas.
"Teniendo en cuenta que la web completa suele recibir entre 1-3 mil millones de solicitudes por segundo, no es inconcebible que este método pueda dirigir un volumen de solicitudes equivalente a toda la web hacia un número reducido de objetivos".
También ocurre un día después de que CISA confirmara que otra vulnerabilidad estaba siendo utilizada para generar ataques DDoS, haciendo referencia a CVE-2023-29552, un error en el Protocolo de Ubicación de Servicios (SLP, RFC 2608) que permite a un atacante remoto y no autenticado registrar servicios arbitrarios, lo que permite a los atacantes utilizar tráfico UDP falsificado para llevar a cabo ataques DDoS "con un factor de amplificación significativo".
Las interrupciones volverán a enfatizar las preocupaciones de los clientes empresariales que dependen de la API para impulsar sus propias ofertas impulsadas por LLM para los clientes finales, lo que sugiere que OpenAI necesita trabajar en su resiliencia. Dado que OpenAI se ejecuta en la infraestructura de Microsoft, que ha sido resistente a / protegido contra ataques DD0S a gran escala, esto sugiere que han sido particularmente graves o han adoptado un enfoque único para inundar la infraestructura de OpenAI, tal vez con solicitudes automatizadas que obstruyen la capacidad de las GPU y la RAM de la GPU.
El incidente también señala una vez más el resurgimiento generalizado de los ataques DDoS, que durante algunos años habían comenzado a parecer una molestia manejable de script kiddies, pero como indican los ejemplos anteriores, representan una amenaza renovada en los últimos meses.
Ataques DDoS en ChatGPT:
Alejándose del incidente aparente de DDoS de ChatGPT a corto plazo, la rápida expansión de la empresa de inteligencia artificial ha ejercido una presión sin precedentes sobre la infraestructura de OpenAI, incluso con el respaldo de Microsoft, que cuenta con recursos financieros abundantes.Como dijo recientemente un ingeniero de OpenAI a los desarrolladores en una conferencia: "Hemos descubierto que los cuellos de botella pueden surgir en todas partes: ancho de banda de memoria, ancho de banda de red entre GPU, entre nodos y otras áreas. Además, la ubicación de esos cuellos de botella cambiará drásticamente según el tamaño del modelo, la arquitectura y los patrones de uso".

En particular, el almacenamiento en caché (caché KV) de la "matemática" que realiza ChatGPT - convertir la solicitud de los usuarios en tokens, luego en un vector de números, multiplicar eso a través de "cientos de miles de millones de pesos del modelo" y luego generar "su discurso de conferencia" - exige grandes demandas de memoria en sus centros de datos.
Evan Morikowa de OpenAI dijo anteriormente: "Tienes que almacenar esta caché en la memoria HBM3 de la GPU; porque enviar datos a través de un bus PCIe en realidad es dos órdenes de magnitud más lento que los 3TB por segundo que obtengo de esta memoria... es [HBM3] tan rápido porque está físicamente unido a las GPU y apilado en capas con miles de pines para un rendimiento de datos masivamente paralelo..." (Se utiliza para almacenar los pesos del modelo).
"Así como cualquier caché, caducamos una vez que esto se llena, primero los más antiguos. Si tenemos una falta de caché, debemos volver a calcular toda la conversación de Chat GPT. Dado que compartimos la RAM de la GPU entre todos los usuarios, es posible que tu conversación sea expulsada si está inactiva durante demasiado tiempo. Esto tiene un par de implicaciones. Una es que la RAM de la GPU es en realidad uno de nuestros activos más valiosos. Frecuentemente es el cuello de botella, no necesariamente el cálculo. Y dos, las faltas de caché tienen este efecto masivo no lineal en la cantidad de trabajo que están haciendo las GPU porque de repente tenemos que comenzar a volver a calcular todo esto. Esto significa que al escalar Chat GPT, no había una métrica simple de utilización de la CPU para analizar. Tuvimos que analizar la utilización de la caché KV y maximizar toda la RAM de la GPU que teníamos".
Tanto OpenAI como otras compañías de modelos de lenguaje grandes están "descubriendo lo fácilmente que podemos estar limitados por la memoria", agregó, señalando que esto limita el valor de las nuevas GPU: "Nvidia no tenía forma de saber esto ellos mismos, ya que los diseños H100 quedaron bloqueados hace años y ha sido muy difícil para nosotros y para nadie predecir las futuras arquitecturas y tamaños de ML".
Al resolver todos estos desafíos de la GPU, hemos aprendido varias lecciones clave, incluyendo la importancia de abordar esto como un desafío de ingeniería de sistemas.
Se actualizará con más detalles a medida que los tengamos.