Vulnerability advisory
CVE-2026-8404
Potential exposure of private data via case-sensitive Cache-Control directives in UpdateCacheMiddleware
Also known as BIT-django-2026-8404GHSA-8cjm-8mp7-r2xfPYSEC-2026-201
Severity
- CVSS 4.0
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
Affected versions
Repository
| Affected commits | Fixed by commit |
|---|---|
| GIT github.com/django/django ↗ | |
| 9e7cc2b628fe8fd3895986af9b7fc9525034c1b0 to before 21e98408f84d22191e2c7ee4052bdd12d264fd3f | 21e98408f84d22191e2c7ee4052bdd12d264fd3f |
| 36b5f39d9372147f0e758f590e35ee2b2bc317dd to before ee93f65169c280c9ab3d2ce103dd478c96d05065 | ee93f65169c280c9ab3d2ce103dd478c96d05065 |
Also listed as affected (21)
| |
Description
An issue was discovered in Django 5.2 before 5.2.15 and 6.0 before 6.0.6.
django.middleware.cache.UpdateCacheMiddleware in Django does not match Cache-Control response directives case-insensitively, which allows remote attackers to read responses that were incorrectly cached because their Cache-Control directives used uppercase or mixed-case 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 Ahmed Badawe for reporting this issue.
References
- Webgithub.com/django/django/ ↗
- Advisorydocs.djangoproject.com/en/dev/releases/security/ ↗
- Advisorygithub.com/CVEProject/cvelistV5/tree/main/cves/2026/8xxx/CVE-2026-8404.json ↗
- Advisorynvd.nist.gov/vuln/detail/CVE-2026-8404 ↗
- Advisorywww.djangoproject.com/weblog/2026/jun/03/security-releases/ ↗
- Packagepypi.org/project/Django/ ↗
- ARTICLEgroups.google.com/g/django-announce ↗