← volver
CVE-2026-48587

Potential exposure of private data via whitespace padding in Vary header

CVSS 2.3 LOWEPSS 0.4%CWE-1023
En resumen

Django no elimina espacios en blanco de los encabezados HTTP al comparar respuestas en caché, lo que permite a los atacantes eludir la validación del caché y acceder a respuestas que deberían ser privadas. Esto ocurre porque el sistema trata 'Content-Type' y ' Content-Type ' como valores diferentes.

Detalle técnico

CVE-2026-48587 afecta a Django versiones 5.2 anteriores a 5.2.15 y 6.0 anteriores a 6.0.6 en la función `has_vary_header()`, que no normaliza espacios en blanco en los valores del encabezado Vary antes de la comparación. Un atacante puede crear solicitudes con valores de encabezado rellenados con espacios para eludir la validación del caché y recuperar respuestas en caché destinadas a audiencias diferentes, lo que resulta en divulgación de información. La vulnerabilidad requiere que la aplicación almacene en caché respuestas basadas en encabezados Vary sin normalización adecuada.

Resumen generado y traducido por IA a partir de la descripción oficial.
An issue was discovered in Django 5.2 before 5.2.15 and 6.0 before 6.0.6. `django.utils.cache.has_vary_header()` in Django does not strip leading or trailing whitespace from `Vary` response header values before comparison, which allows remote attackers to read cached responses via requests to URLs whose responses contain whitespace-padded Vary header values. Earlier, unsupported Django series (such as 5.0.x, 4.1.x, and 3.2.x) were not evaluated and may also be affected. Django would like to thank Navid Rezazadeh for reporting this issue.
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
Productos afectados
djangoproject · Django

¿Quieres saber si tu infraestructura está expuesta a esto?

Hablar con TrueHacking →