CVE-2019-14233 Django Denial-of-service in strip_tags()
Attackers can cause denial of service in Django applications by submitting inputs with nested incomplete HTML entities that trigger slow evaluation in strip_tags.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2019-14233?
CVE-2019-14233 is a high-severity denial of service vulnerability in Djangoproject Django, published on 2 Aug 2019. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
An issue was discovered in Django 1.11.x before 1.11.23, 2.1.x before 2.1.11, and 2.2.x before 2.2.4. Due to the behaviour of the underlying HTMLParser, django.utils.html.strip_tags would be extremely slow to evaluate certain inputs containing large sequences of nested incomplete HTML entities.
Weakness: CWE-400
Which versions are affected by CVE-2019-14233?
7 open source packages ship an affected version, including django and Django. It affects 2 products.
| Package | Affected | Fixed in |
|---|---|---|
django PyPI | From 1.11a1 | 1.11.23 |
django PyPI | From 2.1 | 2.1.11, 2.2.4, 1.11.23 |
django PyPI | From 2.1a1 | 2.1.11 |
django PyPI | From 2.2a1 | 2.2.4 |
Django PyPI | From 1.11a1 | 1.11.23 |
Django PyPI | From 2.1a1 | 2.1.11 |
1 more packages
Django PyPI | From 2.2a1 | 2.2.4 |
Products include Djangoproject Django, Opensuse Leap.
How do I fix CVE-2019-14233?
Upgrade django to a fixed version for your release line: 1.11.23, 2.1.11 or 2.2.4.
Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.
Is CVE-2019-14233 being exploited?
There is no known exploitation of CVE-2019-14233 in the wild and no public exploit code.
Other vulnerabilities in Djangoproject Django
- CVE-2026-4277 Privilege abuse in GenericInlineModelAdmin
- CVE-2024-53908 Django SQL injection in HasKey(lhs, rhs) on Oracle
- CVE-2024-42005 Django SQL injection vulnerability
- CVE-2023-31047 Django bypasses validation when using one form field to upload multiple files
- CVE-2022-34265 Django `Trunc()` and `Extract()` database functions vulnerable to SQL Injection
Sources
Also known as ALPINE-CVE-2019-14233, DEBIAN-CVE-2019-14233, GHSA-h5jv-4p7w-64jg, PYSEC-2019-12, UBUNTU-CVE-2019-14233.