GitHub Advisoryadvisory · PyPI

GHSA-923m-gv2p-w5qp Django: has_vary_header may expose cached responses when Vary values contain whitespace

LOW Published 2026-06-03 Modified 2026-08-07 Official page ↗
Aliases
CVE-2026-48587
Ecosystem
PyPI
Packages
django
Severity
Low
CVSS vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N
Weaknesses
CWE-1023
Reviewed
2026-08-07

Affected packages

• PyPI django: < 5.2.15 → fixed in 5.2.15 • PyPI django: >= 6.0.0, < 6.0.6 → fixed in 6.0.6

Description

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.

Related

Alias · CVE (1)

  • CVE-2026-48587 An issue was discovered in Django 5.2 before 5.2.15 and 6.0 before 6.0.6. vulnerability

Weakness · CWE (1)

  • CWE-1023 Incomplete Comparison with Missing Factors weakness

References