CVE-2026-8404: Django: UpdateCacheMiddleware may disclose cached responses due to case-sensitive Cache-Control handling
(updated )
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
- docs.djangoproject.com/en/dev/releases/security
- github.com/advisories/GHSA-8cjm-8mp7-r2xf
- github.com/django/django/commit/366d9ae6e8d1469c04e9ebdc1bcd098fc14a3b1e
- github.com/django/django/commit/b4330259ffbe1a031ed14daab1f35697460f10f2
- github.com/django/django/commit/d618d7ae4fec727d5b582bd24f803c28d17bf7cd
- github.com/pypa/advisory-database/tree/main/vulns/django/PYSEC-2026-201.yaml
- groups.google.com/g/django-announce
- nvd.nist.gov/vuln/detail/CVE-2026-8404
- www.djangoproject.com/weblog/2026/jun/03/security-releases
Code Behaviors & Features
Detect and mitigate CVE-2026-8404 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →