Skip to main content

Django CVE-2026-33034

| EUVDEUVD-2026-19648 HIGH
Allocation of Resources Without Limits or Throttling (CWE-770)
2026-04-07 DSF GHSA-933h-hp56-hf7m
7.5
CVSS 3.1 · Vendor: DSF
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Send HTTP request with missing Content-Length header
  2. Exploit
    Bypass DATA_UPLOAD_MAX_MEMORY_SIZE validation
  3. Execution
    Load unbounded request body into memory
  4. Impact
    Exhaust server memory resources causing denial of service

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V2 - Validation and Business Logic Resource allocation limits
MITRE ATT&CK

1 technique across 1 tactic: Impact

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Remote unauthenticated attacker sending ASGI requests with missing or understated Content-Length header to Django 6.0 before 6.0.4, 5.2 before 5.2.13, or 4.2 before 4.2.30. No victim interaction required. Exploits DATA_UPLOAD_MAX_MEMORY_SIZE bypass.

Impact

Real-world risk is significant for internet-facing Django ASGI applications. The CVSS vector (AV:N/AC:L/PR:N/UI:N) indicates a network-accessible attack requiring no authentication, low technical complexity, and no user interaction-trivially exploitable conditions. The High availability impact (A:H) reflects the denial-of-service outcome when server memory exhausts. However, the absence of confidentiality or integrity impact (C:N/I:N) limits this to availability disruption rather than data breach. No public exploit code exists at time of analysis, and no CISA KEV listing indicates active exploitation is not confirmed in production environments. The attack is automatable-simple HTTP clients can craft malicious requests-making it viable for both targeted attacks and opportunistic scanning. SSVC technical impact assessment would classify this as partial (service degradation/DoS) rather than total system compromise. Priority depends heavily on deployment context: critical for public-facing ASGI services handling untrusted input, moderate for internal APIs with rate limiting or resource controls, lower for WSGI-only deployments. The Django Security Foundation's rapid coordinated release across three branches signals vendor assessment of meaningful production risk.

Exploit ScenarioDerived

An attacker identifies a Django ASGI application (e.g., real-time chat service using Django Channels with Daphne) and crafts HTTP POST requests with Content-Length header set to 1 byte while streaming gigabytes of payload data. The Django ASGI handler fails to enforce DATA_UPLOAD_MAX_MEMORY_SIZE during HttpRequest.body parsing, consuming server RAM without limit. By sending multiple concurrent requests from distributed sources, the attacker exhausts available memory, triggering OOM killer processes or cascading service failures. The application becomes unresponsive to legitimate users, achieving denial of service. The attack requires only basic HTTP client capabilities (curl, Python requests library) with no authentication, making it accessible to unsophisticated attackers scanning for Django fingerprints.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.0% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Apr 07, 2026

Unbounded memory consumption in Django ASGI applications allows unauthenticated remote attackers to bypass DATA_UPLOAD_MAX_MEMORY_SIZE protections via malformed Content-Length headers, leading to denial of service. Affects Django 6.0 before 6.0.4, 5.2 before 5.2.13, and 4.2 before 4.2.30. CVSS 7.5 (High) with network-accessible, low-complexity attack vector requiring no privileges. EPSS data not available; no public exploit identified at time of analysis. Vendor patches released April 2026 across all affected major branches.

RemediationAI

Upgrade immediately to patched Django releases: version 6.0.4 for the 6.0 series, version 5.2.13 for the 5.2 series, or version 4.2.30 for the 4.2 LTS series. Installation via pip with 'pip install Django==6.0.4' (or appropriate version for your branch) applies the fix. No workarounds exist that fully mitigate the issue-the vulnerability requires code-level corrections to ASGI request body parsing logic. Organizations using unsupported Django versions (5.0.x, 4.1.x, 3.2.x) should prioritize migration to a supported LTS branch (4.2.x) or current stable release. If immediate patching is impossible, consider temporary mitigations: deploy reverse proxies (nginx, HAProxy) with strict request size limits enforced at the HTTP layer, implement aggressive connection timeouts, or temporarily route traffic through WSGI rather than ASGI servers. Monitor memory utilization for abnormal spikes. Full remediation guidance and release notes at https://www.djangoproject.com/weblog/2026/apr/07/security-releases/ with security announcements via https://groups.google.com/g/django-announce.

Affected VersionsENISA

Django 4.2 <4.2.30
Django 6.0 <6.0.4
Django 5.2 <5.2.13

Affected Packages

pypi django fix: 4.2.30, 5.2.1+echo.1, 5.2.13, 6.0.4

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in pypi

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

This vulnerability exploits Django's ASGI (Asynchronous Server Gateway Interface) request handling mechanism, specifically the HttpRequest.body attribute parser. Django implements DATA_UPLOAD_MAX_MEMORY_SIZE as a protection against excessive memory consumption from large POST requests. The flaw (CWE-770: Allocation of Resources Without Limits or Throttling) occurs when ASGI processes requests with missing or understated Content-Length headers-the framework fails to enforce memory limits during body parsing, allowing attackers to stream arbitrary amounts of data into server memory. This bypasses the intended quota enforcement that normally caps request body size. The vulnerability affects the Python-based Django web framework across three actively maintained release series (4.2.x LTS, 5.2.x, 6.0.x), with unsupported series like 5.0.x, 4.1.x, and 3.2.x potentially vulnerable but not officially evaluated. ASGI deployment contexts (using Daphne, Uvicorn, Hypercorn, or similar servers) are specifically at risk, while traditional WSGI deployments may not be affected.

Know when Django gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (DSF) PRIMARY 7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
SUSE HIGH
Red Hat 5.3 MEDIUM

Primary rating from Vendor (DSF).

CVSS VectorVendor: DSF

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

Lifecycle Timeline

2
Patch released
Apr 07, 2026 - 21:31 nvd
Patch available
CVE Published
Apr 07, 2026 - 14:22 nvd
HIGH 7.5

DescriptionCVE.org

An issue was discovered in 6.0 before 6.0.4, 5.2 before 5.2.13, and 4.2 before 4.2.30. ASGI requests with a missing or understated Content-Length header could bypass the DATA_UPLOAD_MAX_MEMORY_SIZE limit when reading HttpRequest.body, allowing remote attackers to load an unbounded request body into memory. 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 Superior for reporting this issue.

Blast Radius

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

Ecosystem-wide dependent count for version 6.0.

Executive ViewAI

Why It Matters

Django ASGI applications in versions 6.0 before 6.0.4, 5.2 before 5.2.13, and 4.2 before 4.2.30 are vulnerable to denial of service attacks through malformed HTTP headers that bypass memory protections, allowing unauthenticated attackers to crash application services. Organizations running Django-based web applications face immediate availability risk with no workaround available until patching.

Business Impact: High
Compensating Controls

Apply vendor patch. Interim mitigation: configure reverse proxy or WAF rules to reject requests with invalid or oversized Content-Length headers; implement request rate limiting and connection timeouts to reduce DoS window; enable application monitoring to detect memory exhaustion patterns.

Threat Intelligence Overview

EPSS Score
0.0%
Top 93% exploitable
Threat Intel
1
1 source
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA Vendor VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.0%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact
High
Technical Impact
Partial

Priority Score

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

More in Django

View all
CVE-2021-23336 MEDIUM POC
5.9 Feb 15

The package python/cpython from 0 and before 3.6.13, from 3.7.0 and before 3.7.10, from 3.8.0 and before 3.8.8, from 3.9

CVE-2017-12794 MEDIUM POC
6.1 Sep 07

In Django 1.10.x before 1.10.8 and 1.11.x before 1.11.5, HTML autoescaping was disabled in a portion of the template for

CVE-2022-34265 CRITICAL POC
9.8 Jul 04

An issue was discovered in Django 3.2 before 3.2.14 and 4.0 before 4.0.6. Rated critical severity (CVSS 9.8), this vulne

CVE-2021-35042 CRITICAL POC
9.8 Jul 02

Django 3.1.x before 3.1.13 and 3.2.x before 3.2.5 allows QuerySet.order_by SQL injection if order_by is untrusted input

CVE-2019-19844 CRITICAL POC
9.8 Dec 18

Django before 1.11.27, 2.x before 2.2.9, and 3.x before 3.0.1 allows account takeover. Rated critical severity (CVSS 9.8

CVE-2026-61594 CRITICAL POC
9.1 Sep 16

An authentication/authorization bypass in the djust Python live-view framework (versions prior to 1.0.7) lets unauthenti

CVE-2026-61599 HIGH POC
8.8 Sep 16

Unauthenticated arbitrary Python module import in djust before 1.0.7 lets any client that can reach the WebSocket or SSE

CVE-2020-9402 HIGH POC
8.8 Mar 05

Django 1.11 before 1.11.29, 2.2 before 2.2.11, and 3.0 before 3.0.4 allows SQL Injection if untrusted data is used as a

CVE-2016-6186 MEDIUM POC
6.1 Aug 05

Cross-site scripting (XSS) vulnerability in the dismissChangeRelatedObjectPopup function in contrib/admin/static/admin/j

CVE-2026-93456 HIGH POC
8.4 Sep 18

Forged content modification in django-page-cms through 2.0.13 lets unauthenticated remote attackers exploit five CSRF-ex

CVE-2026-61593 HIGH POC
8.1 Sep 16

Cross-site request forgery in djust's Server-Sent-Events transport affects all versions prior to 1.0.7 and allows a cros

CVE-2026-61590 HIGH POC
7.4 Sep 16

Unauthenticated remote attackers can read live Django view and session state and invoke server-side handlers through dju

Vendor StatusVendor

SUSE

Severity: High
Product Status
openSUSE Tumbleweed Fixed
SUSE Linux Enterprise Module for Package Hub 15 SP7 Fixed
openSUSE Leap 15.6 Fixed
SUSE Linux Enterprise Module for Package Hub 15 SP6 Fixed

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