CVE-2024-7592 en Python: cómo el análisis de cookies puede consumir CPU

Publicado el 2026-10-27 por frfrand

Un DoS en http.cookies de Python: qué es complejidad cuadrática, cómo se detectó, dónde afecta y qué actualizar.

CVE-2024-7592 en Python: cómo el análisis de cookies puede consumir CPU

¿Puede una cookie volver lenta una API?

Sí. Normalmente las cookies son datos pequeños que acompañan solicitudes HTTP. Pero cuando su formato se procesa con un algoritmo ineficiente, una entrada especialmente construida puede exigir demasiado trabajo al servidor. CVE-2024-7592 describe ese problema en el módulo estándar http.cookies de CPython.

¿Qué fallaba?

Al analizar valores de cookie con determinados caracteres de escape, el analizador podía realizar trabajo de complejidad cuadrática: si una entrada crecía, el tiempo necesario para procesarla aumentaba desproporcionadamente. Esto se conoce como abuso algorítmico o denegación de servicio por consumo de CPU. No es un problema de autenticación ni una ejecución remota de código.

¿Quién lo descubrió y cómo se corrigió?

La incidencia se registró en el proyecto CPython en el issue #123067 en agosto de 2024, con pruebas de comportamiento del método http.cookies._unquote(). La comunidad preparó un cambio para evitar la complejidad problemática. El aviso de seguridad de Python, distribuido por Seth Larson, clasificó el problema en su comunicación como de gravedad baja. Algunas bases de datos pueden mostrar otra etiqueta por criterios distintos; al priorizar, conviene mirar el alcance real.

¿Cómo podría explotarlo alguien?

Un atacante capaz de enviar encabezados HTTP o entradas procesadas por la función afectada podría provocar que el servidor dedicara más CPU de la esperada a analizar un valor. Si la aplicación acepta suficientes solicitudes y los límites lo permiten, el servicio puede volverse lento o dejar de responder. La ejecución depende de que los datos pasen por la función vulnerable; no todos los programas escritos en Python la utilizan.

¿Afecta a Django, Flask o FastAPI?

El informe técnico examinó también escenarios donde un framework utiliza el analizador de cookies de Python. Eso no significa que todas las apps en cada framework fueran explotables. Hay que estudiar el parser elegido, los límites del servidor HTTP y los componentes intermedios. Una API que no usa esa ruta puede no estar expuesta.

¿Dónde se publicó la solución?

Python incorporó correcciones en sus actualizaciones de seguridad de septiembre de 2024, incluidas releases 3.12.6, 3.11.10, 3.10.15, 3.9.20 y 3.8.20. Esas versiones documentan la primera corrección en ramas históricas, no qué instalar en 2026. Preferí una línea vigente y los parches que mantiene tu distribución.

¿Cómo revisar un sistema?

Comprobá la versión de Python en cada entorno (producción, contenedores, tareas), el código que utiliza cookies y las reglas de tamaño de encabezados aplicadas por proxy y servidor. Mirá si los picos de CPU coinciden con requests anómalos. Hacé pruebas de rendimiento solo en un entorno controlado y con entradas de tamaño razonable, sin enviar cargas agresivas a servicios públicos.

¿Cómo se mitiga?

Actualizá el intérprete y reconstruí imágenes o entornos virtuales para que realmente usen una versión corregida. Configurá límites de cabeceras, timeouts y capacidad del servicio según tus necesidades; añadí métricas y alertas. Un proxy puede ayudar, pero no reemplaza la corrección del parser.

Preguntas frecuentes

¿CVE-2024-7592 permite robar sesiones? El fallo documentado es de consumo de CPU, no de filtración de cookies.

¿Tengo que cambiar Django? Depende de la ruta y de cómo llega a la biblioteca estándar; la actualización de Python es central.

¿Por qué una vulnerabilidad de baja gravedad importa? Porque una pequeña ineficiencia puede afectar disponibilidad si el servicio está expuesto o es muy sensible a latencia.

Fuentes: Anuncio oficial de seguridad Python · Issue CPython #123067 · Releases de septiembre de 2024.

¿Dónde se actualiza la información y cómo pedir orientación?

En ArduMaker — CVE y soporte mantenemos información para revisar incidencias y canalizar consultas, especialmente en WordPress y las tecnologías que lo ejecutan. Para evaluar un caso concreto aportá tecnología, versión, sistema operativo, modo de despliegue y mensajes de error relevantes sin publicar credenciales. Un CVE anunciado no significa que todos los sistemas estén comprometidos.

Revisión editorial: 27 de octubre de 2026. Las recomendaciones pueden cambiar con nuevas publicaciones del fabricante.

Ejemplo práctico: una cookie inocua y un parser vulnerable

Situación: una aplicación Python transforma la cabecera Cookie en datos de sesión. Aunque la mayoría de valores son pequeños, CVE-2024-7592 mostró que ciertas entradas pueden hacer que el parser invierta demasiada CPU.

Para entender el componente sin simular un ataque:

from http.cookies import SimpleCookie

cookies = SimpleCookie()
cookies.load("idioma=es; tema=oscuro")
print({nombre: item.value for nombre, item in cookies.items()})

Antes: runtime antiguo y ausencia de límites y observabilidad. Después: Python corregido en el entorno ejecutado, límites de tamaño de cabeceras en el servidor frontal y métricas de CPU y latencia.

Ejemplo de investigación: si ves picos de CPU relacionados con requests HTTP, cruzá registros del proxy con tiempos de procesamiento de la aplicación. No atribuyas todo pico a este CVE: buscá la versión afectada y el uso real de http.cookies.

Para no confundir: esta vulnerabilidad se refiere a disponibilidad, no a robar contraseñas de las cookies.

CVE-2024-7592 en Python: cómo el análisis de cookies puede consumir CPU
  • Python
  • CVE-2024-7592
  • Cookies
  • DoS
  • Seguridad backend

Seguir leyendo

Todos los artículos · Planes de VPS