Skip to main content

Django EUVDEUVD-2026-27347

| CVE-2026-35192 LOW
Use of Persistent Cookies Containing Sensitive Information (CWE-539)
2026-05-05 DSF
2.3
CVSS 4.0 · NVD

Severity by source

NVD PRIMARY
2.3 LOW
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

Primary rating from NVD · only source for this CVE.

CVSS VectorNVD

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
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
P
Scope
X

Lifecycle Timeline

2
Analysis Generated
May 05, 2026 - 16:32 vuln.today
CVSS changed
May 05, 2026 - 16:22 NVD
2.3 (LOW)

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 12 pypi packages depend on django (12 direct, 0 indirect)

Ecosystem-wide dependent count for version 5.2.

DescriptionCVE.org

An issue was discovered in 6.0 before 6.0.5 and 5.2 before 5.2.14. Response headers do not vary on cookies if a session is not modified, but SESSION_SAVE_EVERY_REQUEST is True. A remote attacker can steal a user's session after that user visits a cached public page. 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 Cantina for reporting this issue.

AnalysisAI

Django 6.0 before 6.0.5 and 5.2 before 5.2.14 fail to vary response headers on session cookies when SESSION_SAVE_EVERY_REQUEST is enabled but the session is unmodified, allowing remote attackers with user interaction to steal session tokens from cached public pages. The vulnerability affects server configurations that cache responses aggressively while maintaining per-request session handling, exposing authenticated users to session hijacking after visiting pages served from cache.

Technical ContextAI

Django's session middleware is responsible for managing user authentication state via HTTP cookies and server-side session storage. When SESSION_SAVE_EVERY_REQUEST is set to True, Django updates the session record on every request even if the session data has not changed. However, the vulnerability stems from improper cache control headers - specifically the Vary header - which informs HTTP caches whether response variations depend on request headers (including cookies). When SESSION_SAVE_EVERY_REQUEST is True but the session is unmodified, Django fails to include the session cookie in the Vary header, causing HTTP caches (proxies, CDNs, browsers) to cache and serve the same response to multiple users regardless of their session cookie. This violates the caching contract and allows subsequent users accessing the cached public page to inherit the previous user's session cookie if the cache is poisoned or misconfigured. The root cause is classified under CWE-539 (Information Exposure Through Persistent Cookies), a cookie handling vulnerability.

RemediationAI

Upgrade to Django 6.0.5 or later for the 6.0 series, or Django 5.2.14 or later for the 5.2 series. Users on unsupported versions (5.0.x, 4.1.x, 3.2.x) should upgrade to a supported version. As a temporary workaround on unpatched systems, disable SESSION_SAVE_EVERY_REQUEST by setting it to False in Django settings (the default), which forces Django to emit proper Vary headers on session cookies and prevents cache poisoning. Alternatively, configure HTTP cache layers (reverse proxies, CDNs) to exclude pages with session cookies from caching, or use cache control directives (Cache-Control: no-cache) on authenticated responses. Organizations should verify that their caching layer respects Vary headers; misconfigured reverse proxies or CDNs that ignore Vary directives remain vulnerable even with the patch. See Django's official security advisory at https://www.djangoproject.com/weblog/2026/may/05/security-releases/ and https://docs.djangoproject.com/en/dev/releases/security/ for details.

More in Python

View all
CVE-2025-24016 CRITICAL POC
9.9 Feb 10

Wazuh SIEM platform versions 4.4.0 through 4.9.0 contain an unsafe deserialization vulnerability in the DistributedAPI t

CVE-2025-27520 CRITICAL POC
9.8 Apr 04

BentoML version 1.4.2 and earlier contains an unauthenticated remote code execution vulnerability through insecure deser

CVE-2025-2945 CRITICAL POC
9.9 Apr 03

pgAdmin 4 contains critical remote code execution vulnerabilities in the Query Tool download and Cloud Deployment endpoi

CVE-2013-5093 MEDIUM POC
6.8 Sep 27

The renderLocalView function in render/views.py in graphite-web in Graphite 0.9.5 through 0.9.10 uses the pickle Python

CVE-2025-32375 CRITICAL POC
9.8 Apr 09

BentoML is a Python library for building online serving systems optimized for AI apps and model inference. Rated critica

CVE-2014-0224 HIGH POC
7.4 Jun 05

OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph

CVE-2024-21644 HIGH POC
7.5 Jan 08

pyLoad download manager version prior to 0.5.0b3.dev77 exposes the Flask SECRET_KEY through an unauthenticated endpoint.

CVE-2017-9462 HIGH POC
8.8 Jun 06

In Mercurial before 4.1.3, "hg serve --stdio" allows remote authenticated users to launch the Python debugger, and conse

CVE-2026-39987 CRITICAL POC
9.3 Apr 08

Unauthenticated remote code execution in Marimo ≤0.20.4 allows attackers to execute arbitrary system commands via the `/

CVE-2024-21645 MEDIUM POC
5.3 Jan 08

pyLoad is the free and open-source Download Manager written in pure Python. Rated medium severity (CVSS 5.3), this vulne

CVE-2026-33017 CRITICAL POC
9.3 Mar 17

Langflow (a visual LLM pipeline builder) contains a critical unauthenticated code execution vulnerability (CVE-2026-3301

CVE-2026-55255 HIGH POC
8.4 Jun 19

Cross-user flow execution in Langflow (< 1.9.1) lets any authenticated API-key holder run another user's flow by passing

Share

EUVD-2026-27347 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy