Una falla en la plataforma Workers AI de Cloudflare provocó que 155 respuestas del modelo GLM 5.3 incluyeran datos de solicitudes de otros clientes, según lo afirmó la empresa en un informe posterior al incidente publicado el lunes. Todas las respuestas afectadas correspondían a instrucciones (prompts) de más de 681.280 tokens, y se generaron entre el 27 de agosto y el 9 de septiembre de 2026.
El investigador de seguridad Gadi Evron, de Knostic, reportó el problema a Cloudflare el 8 de septiembre a través del programa de recompensas por errores de la empresa en HackerOne. Cloudflare reprodujo el problema a la mañana siguiente, declaró un incidente de seguridad y desconectó el modelo en menos de 40 minutos. La empresa restableció el modelo el 9 de septiembre, tras implementar una configuración corregida y un motor de inferencia parcheado.
¿La falla afectó a otros modelos de Workers AI?
Cloudflare afirmó que confirmó que ningún otro modelo alojado en Workers AI fue afectado. Tras excluir sus propias pruebas y las del investigador, la empresa indicó que las solicitudes revisadas coincidían en tiempo y volumen con el uso habitual de contextos largos. No encontró indicios de que alguien hubiera explotado repetidamente el error.
Dos problemas se superpusieron
¿Qué causó la exposición de datos del GLM 5.3 de Cloudflare?
Cloudflare dijo que la exposición se originó en dos problemas que, combinados, produjeron la filtración. El primero fue una mala configuración. La empresa desplegó el GLM 5.3 con una ventana de contexto de 1.048.576 tokens, pero el grupo de caché clave-valor (KV) en sus GPU de prellenado (prefill) solo podía contener 681.280 tokens. Cloudflare conocía la discrepancia antes del lanzamiento. Sin embargo, durante las pruebas, las solicitudes de contexto largo devolvieron códigos de estado HTTP exitosos y transmitieron la salida sin mensajes de error. La empresa asumió que el motor manejaría la diferencia por sí solo.
El segundo fue un error en SGLang, el motor de inferencia de código abierto que utiliza Cloudflare. Cuando una instrucción era demasiado grande para el grupo, SGLang marcaba la solicitud como rechazada y reemplazaba la instrucción por un marcador de un solo token. En la configuración desagregada que emplea Cloudflare, donde un grupo de GPU procesa la instrucción y otro genera la respuesta, esa solicitud rechazada seguía avanzando por el sistema. El nodo de decodificación reservaba memoria para la instrucción completa y luego leía páginas que solicitudes anteriores habían dejado atrás. Esas páginas contenían instrucciones y respuestas parciales de otros usuarios.
Según Cloudflare, el resultado fue que los usuarios afectados recibieron un código de éxito HTTP 200 en lugar de un error. Las respuestas eran coherentes y llegaban más rápido de lo que tomaría procesar una instrucción completa, algo que la empresa consideró una señal de que algo andaba mal. Cloudflare afirmó que todas las solicitudes por encima del umbral siguieron la misma ruta, por lo que la falla no fue un accidente de tiempos.
El error de SGLang ya había sido reportado al proyecto por otro usuario como incidencia #30233 el 6 de julio de 2026. Cloudflare dijo que notó ese reporte mientras investigaba este incidente. La empresa señaló que venía advirtiendo problemas de este tipo con SGLang desde la versión 0.5.10, y que el incidente aceleró un trabajo que ya había iniciado con los responsables de mantenimiento del proyecto.
Lo que cambió Cloudflare
¿Cómo corrigió Cloudflare la falla de Workers AI?
Cloudflare ajustó la configuración de su GLM 5.3 para igualarla a la de su configuración de GLM 5.2. Esto liberó suficiente memoria de GPU para que el grupo de prellenado pudiera contener unos 2,04 millones de tokens, aproximadamente el doble de la longitud de contexto del modelo. La empresa también parcheó su motor para que las solicitudes rechazadas devuelvan su error original antes de que se asigne memoria o se transfieran datos. La corrección se envió a la versión original del proyecto como solicitud de cambios #38704, y los responsables de mantenimiento de SGLang integraron un cambio relacionado, el #38935.
Cloudflare se reunió con los responsables de mantenimiento de SGLang en RadixArk el 10 de septiembre, un día después del incidente. La empresa dijo que el proyecto ya publicó correcciones en las versiones 0.5.20, 0.5.21 y 0.5.22 de SGLang, y pidió a todos los operadores actualizar a la 0.5.22 o posterior. Entre el 11 y el 19 de septiembre, Cloudflare también añadió salvaguardas adicionales a sus implementaciones de SGLang en producción. Estas incluyen una suma de verificación por transferencia que permite a los nodos de decodificación verificar los datos que reciben, y cambios en la forma en que su balanceador de carga gestiona las desconexiones de clientes durante las transferencias.
Cloudflare afirmó que también desarrolló un prototipo que etiqueta cada página de memoria y verifica esas etiquetas antes de que el paso de decodificación lea la caché. La empresa indicó que el prototipo añadió menos de 1 por ciento al rendimiento y a la latencia de cola en sus pruebas. Se desactivó a mediados de agosto por problemas de confiabilidad, y Cloudflare afirma que ahora trabaja con el equipo de SGLang en una versión para producción.
La empresa agradeció a Evron por proporcionar un script claro y reproducible, y por dar tiempo para corregir el problema antes de publicarlo. El informe se difundió como parte de una divulgación coordinada con el investigador y con RadixArk, responsable del mantenimiento de SGLang.
Este artículo fue escrito con la asistencia de IA.
News Factory APP - noticias agénticas para impulsar tu SEO y AEO.