CVE-2026-113593 json
Potential exposure of private data via empty and missing Vary headers
published 2026-11-03 5 d ago modified 2026-11-03 5 d ago also EUVD-2026-116021
- cvss
- 3.1
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.5%
- EPSS 0.5% chance of exploitation in 30 days, percentile 40%
- public exploits
- 0
- none known
Summary
An issue was discovered in Django 6.1 before 6.1.3, 6.0 before 6.0.10, and 5.2 before 5.2.19. The `django.middleware.cache.UpdateCacheMiddleware` and the `django.views.decorators.cache.cache_page()` decorator generate identical cache keys for requests that omit a header listed in the response’s `Vary` header and requests that include that header with an empty value, potentially allowing remote attackers to access private data cached for another request. Earlier, unsupported Django series (such as 5.1.x, 5.0.x, and 4.2.x) were not evaluated and may also be affected. Django would like to thank Andrew Gonzalez for reporting this issue.
Patch / fix
- djangoproject Django 5.2.19, 6.0.10, 6.1.3
- py3-django Alpine 3.24 5.2.19-r0
alpine advisories ALPINE-CVE-2026-113593
Alpine secdb © Alpine Linux, from https://secdb.alpinelinux.org via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- 5 d ago
Exploit prediction
0.46% chance of exploitation in the next 30 days, higher than 40% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 3.1 | CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N |
| CNA | 4.0 | 2.3 | 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 |
| CNA | 4.0 | 2.3 | 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/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
Affected products
- djangoproject Django
Classification
- Weakness
-
- CWE-524 Use of Cache Containing Sensitive Information
- Technology feeds
References
-
github.com
/django/django/commit/c0b7e5e4e4546e8ddc58262f1945938bb9d9ac2d
patch
-
github.com
/django/django/commit/55e2e009b4f3996e5c55af7b22a8c41eb826e892
patch
-
github.com
/django/django/commit/2006a2b068766bf332f1afcc32b7614d8e5759a2
patch
-
github.com
/django/django/commit/9007fecd3633cfd90b093ebe106af564347c8aee
patch
-
docs.djangoproject.com
/en/dev/releases/security/
vendor-advisory
-
djangoproject.com
/weblog/2026/nov/03/security-releases/
vendor-advisory
-
groups.google.com
/g/django-announce
mailing-list
Sources
- CVE List CVE-2026-113593
- NVD CVE-2026-113593
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.