Potential exposure of private data via case-sensitive Cache-Control directives in UpdateCacheMiddleware
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Passive
- Attack complexity
- Low
- Attack requirements
- Present
- Impact type
- —
- Confidentiality · integrity · availability
- Low · None · None
- Fix status
- Partial Red Hat: 4 without a fix
Attack profile from CVSS 4.0 · CNA. Fix status from CNA, GitHub and Red Hat.
Summary
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.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| djangoproject | Django | 6.0 to before 6.0.6; 5.2 to before 5.2.15 | 6.0.6, 5.2.15 | Patch available | CNA |
| — | django (PyPI) | before 5.2.15 | 5.2.15 | Patch available | GHSA-8cjm-8mp7-r2xf |
| — | django (PyPI) | 6.0.0 to before 6.0.6 | 6.0.6 | Patch available | GHSA-8cjm-8mp7-r2xf |
- Django Vendordjangoproject Affected 6.0 to before 6.0.6; 5.2 to before 5.2.15 Fixed in 6.0.6, 5.2.15 Patch available CNA
- django (PyPI) Vendor— Affected before 5.2.15 Fixed in 5.2.15 Patch available GHSA-8cjm-8mp7-r2xf
- django (PyPI) Vendor— Affected 6.0.0 to before 6.0.6 Fixed in 6.0.6 Patch available GHSA-8cjm-8mp7-r2xf
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:djangoproject:django:*:*:*:*:*:*:*:* | 5.2 to before 5.2.15; 6.0 to before 6.0.6 | Vulnerable | djangoproject |
- cpe:2.3:a:djangoproject:django:*:*:*:*:*:*:*:* Versions 5.2 to before 5.2.15; 6.0 to before 6.0.6 Vulnerable ·djangoproject
Remediation
- Fix · CNA Django (djangoproject) Fixed in 6.0.6, 5.2.15
- Fix · GHSA-8cjm-8mp7-r2xf django (PyPI) Fixed in 5.2.15 Advisory →
- Fix · GHSA-8cjm-8mp7-r2xf django (PyPI) Fixed in 6.0.6 Advisory →
Fixed in the same release
Records fixed by the same vendor advisory or release, as the CNA lists them.
- Advisory ·
djangoproject Django — Django security releases issued: 6.0.6 and 5.2.15
5 records Highest priority Priority LOW 5 LOW
Other records, highest priority first
- TI-2026-35943 Potential exposure of private data via whitespace padding in Vary headerPriority LOW 12
- TI-2026-27346 Potential exposure of private data via missing Vary: Authorization in UpdateCacheMiddlewarePriority LOW 12
- TI-2026-06029 Signed cookie salt namespace collision in django.http.HttpRequest.get_signed_cookiePriority LOW 12
Vendor assessments
Red Hat
Red Hat rating: Low. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat Ansible Automation Platform 2 | Affected | No fix yet: Fix deferred |
| Red Hat Discovery 2 | Affected | No fix yet: Fix deferred |
| Red Hat Satellite 6 | Affected | No fix yet: Fix deferred |
| Self-service automation portal 2 | Affected | — |
Timeline
- 2026-10-02 Threatist record created from CVE-2026-8404
- 2026-10-03 Alias added: GHSA-8cjm-8mp7-r2xf
References
Other 8
- Django releases announcements
- https://github.com/django/django/commit/366d9ae6e8d1469c04e9ebdc1bcd098fc14a3b1e
- https://github.com/django/django/commit/b4330259ffbe1a031ed14daab1f35697460f10f2
- https://github.com/django/django/commit/d618d7ae4fec727d5b582bd24f803c28d17bf7cd
- https://docs.djangoproject.com/en/dev/releases/security
- https://github.com/django/django
- https://github.com/pypa/advisory-database/tree/main/vulns/django/PYSEC-2026-201.yaml
- https://www.djangoproject.com/weblog/2026/jun/03/security-releases
More djangoproject Django vulnerabilities
- TI-2022-15177 An issue was discovered in Django 3.2 before 3.2.14 and 4.0 before 4.0.6. CVSS 3.1CRITICAL 9.8
- TI-2020-05994 Django 1.11 before 1.11.28, 2.2 before 2.2.10, and 3.0 before 3.0.3 allows SQL Injection… CVSS 3.1CRITICAL 9.8
- TI-2023-10198 An issue was discovered in the Multipart Request Parser in Django 3.2 before 3.2.18, 4.0… CVSS 3.1HIGH 7.5
- TI-2019-14306 Django before 1.11.27, 2.x before 2.2.9, and 3.x before 3.0.1 allows account takeover. CVSS 3.1CRITICAL 9.8
- TI-2019-10595 An issue was discovered in Django 1.11.x before 1.11.23, 2.1.x before 2.1.11, and 2.2.x… CVSS 3.0CRITICAL 9.8
- TI-2021-14006 Django 3.1.x before 3.1.13 and 3.2.x before 3.2.5 allows QuerySet.order_by SQL injection… CVSS 3.1CRITICAL 9.8
Sources
- CVE-2026-8404 · CVE Program
- CVE-2026-8404 · NVD
- FIRST EPSS
- GHSA-8cjm-8mp7-r2xf · GitHub Advisory Database · CC BY 4.0
- CVE-2026-8404 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences