Vulnerability 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.
CVSS Score
LOW
Affected Products
| Vendor | Product | Versions |
|---|---|---|
| Djangoproject | Django | >= 5.2, < 5.2.15 |
Related Weaknesses (CWE)
References
- https://docs.djangoproject.com/en/dev/releases/security/PatchVendor Advisory
- https://groups.google.com/g/django-announceRelease Notes
- https://www.djangoproject.com/weblog/2026/jun/03/security-releases/PatchVendor Advisory
FAQ
What is CVE-2026-48587?
CVE-2026-48587 is a vulnerability with a CVSS score of 3.1 (LOW). 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 val...
How severe is CVE-2026-48587?
CVE-2026-48587 has been rated LOW with a CVSS base score of 3.1/10. Review the CVSS metrics above for detailed severity breakdown.
Is there a patch for CVE-2026-48587?
Check the references section above for vendor advisories and patch information. Affected products include: Djangoproject Django.