GHSA-923m-gv2p-w5qp
Django: has_vary_header may expose cached responses when Vary values contain whitespace
En bref
- Publiée
- Mise à jour
- CVE
- CVE-2026-48587
- Alias
- BIT-django-2026-48587, PYSEC-2026-198
- CVSS_V3
- CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N
- CVSS_V4
- 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
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.
Paquets affectés
| Paquet | Versions |
|---|---|
| PyPI · django | introduced 0, fixed 5.2.15 |
| PyPI · django | introduced 6.0.0, fixed 6.0.6 |
Références
- https://nvd.nist.gov/vuln/detail/CVE-2026-48587 ADVISORY
- https://github.com/django/django/commit/1721035a72624aad7b38dd19b14013efd94b24b8 WEB
- https://github.com/django/django/commit/42aa0b3364d312e7c6472258d8b0e9c0277fbf22 WEB
- https://github.com/django/django/commit/9b62b0af71a14c657d19d95371630ba839e83d9a WEB
- https://docs.djangoproject.com/en/dev/releases/security WEB
- https://github.com/django/django PACKAGE
- https://github.com/pypa/advisory-database/tree/main/vulns/django/PYSEC-2026-198.yaml WEB
- https://groups.google.com/g/django-announce WEB
- https://www.djangoproject.com/weblog/2026/jun/03/security-releases WEB
Sources
| Source | Licence |
|---|---|
| OSV.dev | CC-BY 4.0 — GitHub Advisory Database |