Every CVE Search/ Get API key

CVE-2019-14233

Django Denial-of-service in strip_tags()

7.5 HighFix available

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.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
None
Integrity
None
Availability
High

Exploit likelihood

3.17%Up 0.9 points since Apr 14, 2021
90%50%10%1%

What each source reports

NVD Score used 7.5

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.

Record
CVE-2019-14233
CVSS 3.0
7.5 HighCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
CVSS 2.0
5.0 MediumAV:N/AC:L/Au:N/C:N/I:N/A:P
Weakness
CWE-400
Updated
2026-11-02
CVE List No score

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.

Record
CVE-2019-14233
Updated
2026-11-02
EUVDEUVD-2019-0036 No score

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.

Record
EUVD-2019-0036
Updated
2026-11-03
GitHub AdvisoriesGHSA-h5jv-4p7w-64jg 8.7

Django Denial-of-service in strip_tags()

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.

Record
GHSA-h5jv-4p7w-64jg
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
CVSS 3.0
7.5 HighCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-400
Updated
2026-11-02
OSVALPINE-CVE-2019-14233 7.5

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.

Record
ALPINE-CVE-2019-14233
CVSS 3.0
7.5 HighCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-03
OSV 7.5

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.

Record
CVE-2019-14233
CVSS 3.0
7.5 HighCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
Show 12 moreShow less
OSVDEBIAN-CVE-2019-14233 7.5

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.

Record
DEBIAN-CVE-2019-14233
CVSS 3.0
7.5 HighCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVGHSA-h5jv-4p7w-64jg 8.7

Django Denial-of-service in strip_tags()

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.

Record
GHSA-h5jv-4p7w-64jg
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
CVSS 3.0
7.5 HighCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-400
Updated
2026-11-02
OSVRHSA-2020:1324 5.3

Red Hat Security Advisory: python-django security update

Record
RHSA-2020:1324
CVSS 3.0
5.3 MediumCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Updated
2026-11-02
OSVRHSA-2020:4390 5.3

Red Hat Security Advisory: python-django security update

Record
RHSA-2020:4390
CVSS 3.0
5.3 MediumCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Updated
2026-11-02
OSVUBUNTU-CVE-2019-14233 7.5

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.

Record
UBUNTU-CVE-2019-14233
CVSS 3.0
7.5 HighCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVopenSUSE-SU-2019:1839-1 No score

Security update for python-Django

This update for python-Django fixes the following issues:

Security issues fixed:

  • CVE-2019-11358: Fixed prototype pollution.
  • CVE-2019-12308: Fixed XSS in AdminURLFieldWidget (bsc#1136468)
  • CVE-2019-12781: Fixed incorrect HTTP detection with reverse-proxy connecting via HTTPS (bsc#1139945).
  • CVE-2019-14232: Fixed denial-of-service possibility in django.utils.text.Truncator (bsc#1142880).
  • CVE-2019-14233: Fixed denial-of-service possibility in strip_tags() (bsc#1142882).
  • CVE-2019-14234: Fixed SQL injection possibility in key and index lookups for JSONField/HStoreField (bsc#1142883).
  • CVE-2019-14235: Fixed potential memory exhaustion in django.utils.encoding.uri_to_iri() (bsc#1142885).

Non-security issues fixed:

  • Fixed a migration crash on PostgreSQL when adding a check constraint with a contains lookup on DateRangeField or DateTimeRangeField, if the right hand side of an expression is the same type.
Record
openSUSE-SU-2019:1839-1
Updated
2026-11-02
OSVopenSUSE-SU-2019:1872-1 No score

Security update for python-Django

This update for python-Django fixes the following issues:

Security issues fixed:

  • CVE-2019-11358: Fixed prototype pollution.
  • CVE-2019-12308: Fixed XSS in AdminURLFieldWidget (bsc#1136468)
  • CVE-2019-12781: Fixed incorrect HTTP detection with reverse-proxy connecting via HTTPS (bsc#1139945).
  • CVE-2019-14232: Fixed denial-of-service possibility in django.utils.text.Truncator (bsc#1142880).
  • CVE-2019-14233: Fixed denial-of-service possibility in strip_tags() (bsc#1142882).
  • CVE-2019-14234: Fixed SQL injection possibility in key and index lookups for JSONField/HStoreField (bsc#1142883).
  • CVE-2019-14235: Fixed potential memory exhaustion in django.utils.encoding.uri_to_iri() (bsc#1142885).

Non-security issues fixed:

  • Fixed a migration crash on PostgreSQL when adding a check constraint with a contains lookup on DateRangeField or DateTimeRangeField, if the right hand side of an expression is the same type.

This update was imported from the openSUSE:Leap:15.1:Update update project.

Record
openSUSE-SU-2019:1872-1
Updated
2026-11-02
OSVPYSEC-2019-12 No score

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.

Record
PYSEC-2019-12
Updated
2026-11-02
OSVSUSE-SU-2019:2180-1 No score

Security update for python-Django

This update for python-Django fixes the following issues:

  • CVE-2019-14232: Fixed a denial of service in 'django.utils.text.Truncator' (bsc#1142880).
  • CVE-2019-14233: Fixed a denial of service in strip_tags() (bsc#1142882).
  • CVE-2019-14234: Fixed an SQL injection in key and index lookups for 'JSONField'/'HStoreField' (bsc#1142883).
  • CVE-2019-14235: Fixed a potential memory exhaustion in 'django.utils.encoding.uri_to_iri()' (bsc#1142885).
Record
SUSE-SU-2019:2180-1
Updated
2026-11-02
OSVSUSE-SU-2019:2257-1 No score

Security update for python-Django

This update for python-Django to version 1.11.23 fixes the following issues:

  • CVE-2019-14232: Fixed a denial of service in 'django.utils.text.Truncator' (bsc#1142880).
  • CVE-2019-14233: Fixed a denial of service in strip_tags() (bsc#1142882).
  • CVE-2019-14234: Fixed an SQL injection in key and index lookups for 'JSONField'/'HStoreField' (bsc#1142883).
  • CVE-2019-14235: Fixed a potential memory exhaustion in 'django.utils.encoding.uri_to_iri()' (bsc#1142885).
  • CVE-2019-12781: Fixed incorrect HTTP detection with reverse-proxy connecting via HTTPS (bsc#1139945).
  • CVE-2019-12308: Fixed a cross site scripting vulnerability in the AdminURLFieldWidget (bsc#1136468).
Record
SUSE-SU-2019:2257-1
Updated
2026-11-02
OSVSUSE-SU-2019:2335-1 No score

Security update for python-Django1

This update for python-Django1 to version 1.11.23 fixes the following issues:

  • CVE-2019-14232: Fixed a denial of service in 'django.utils.text.Truncator' (bsc#1142880).
  • CVE-2019-14233: Fixed a denial of service in strip_tags() (bsc#1142882).
  • CVE-2019-14234: Fixed an SQL injection in key and index lookups for 'JSONField'/'HStoreField' (bsc#1142883).
  • CVE-2019-14235: Fixed a potential memory exhaustion in 'django.utils.encoding.uri_to_iri()' (bsc#1142885).
  • CVE-2019-12781: Fixed incorrect HTTP detection with reverse-proxy connecting via HTTPS (bsc#1139945).
  • CVE-2019-12308: Fixed a cross site scripting vulnerability in the AdminURLFieldWidget (bsc#1136468).
Record
SUSE-SU-2019:2335-1
Updated
2026-11-02
OSVUSN-4084-1 No score

python-django vulnerabilities

It was discovered that Django incorrectly handled the Truncator function. A remote attacker could possibly use this issue to cause Django to consume resources, leading to a denial of service. (CVE-2019-14232)

It was discovered that Django incorrectly handled the strip_tags function. A remote attacker could possibly use this issue to cause Django to consume resources, leading to a denial of service. (CVE-2019-14233)

It was discovered that Django incorrectly handled certain lookups in the PostgreSQL support. A remote attacker could possibly use this issue to perform SQL injection attacks. (CVE-2019-14234)

It was discovered that Django incorrectly handled certain invalid UTF-8 octet sequences. A remote attacker could possibly use this issue to cause Django to consume resources, leading to a denial of service. (CVE-2019-14235)

Record
USN-4084-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
django
PyPI
1.11a1 up to 1.11.23
1.11.23
django
PyPI
2.1a1 up to 2.1.11
2.1.11
django
PyPI
2.2a1 up to 2.2.4
2.2.4
py-django
Alpine:v3.10
before 1.11.23-r0
1.11.23-r0
py-django
Alpine:v3.7
before 1.11.23-r0
1.11.23-r0
py-django
Alpine:v3.8
before 1.11.23-r0
1.11.23-r0
py-django
Alpine:v3.9
before 1.11.23-r0
1.11.23-r0
py3-django
Alpine:v3.11
before 1.11.23-r0
1.11.23-r0
py3-django
Alpine:v3.12
before 1.11.23-r0
1.11.23-r0
py3-django
Alpine:v3.13
before 1.11.23-r0
1.11.23-r0
Show 41 moreShow less
Affected packages
PackageAffectedFixed
py3-django
Alpine:v3.14
before 1.11.23-r0
1.11.23-r0
py3-django
Alpine:v3.15
before 1.11.23-r0
1.11.23-r0
py3-django
Alpine:v3.16
before 1.11.23-r0
1.11.23-r0
py3-django
Alpine:v3.17
before 1.11.23-r0
1.11.23-r0
py3-django
Alpine:v3.18
before 1.11.23-r0
1.11.23-r0
py3-django
Alpine:v3.19
before 1.11.23-r0
1.11.23-r0
py3-django
Alpine:v3.20
before 1.11.23-r0
1.11.23-r0
py3-django
Alpine:v3.21
before 1.11.23-r0
1.11.23-r0
py3-django
Alpine:v3.22
before 1.11.23-r0
1.11.23-r0
py3-django
Alpine:v3.23
before 1.11.23-r0
1.11.23-r0
py3-django
Alpine:v3.24
before 1.11.23-r0
1.11.23-r0
python-django
Debian:12
before 2:2.2.4-1
2:2.2.4-1
python-django
Debian:13
before 2:2.2.4-1
2:2.2.4-1
python-django
Debian:14
before 2:2.2.4-1
2:2.2.4-1
python-django
Debian:8
From an advisory covering 2 CVEs
before 1.7.11-1+deb8u7, plus listed versions
1.7.10-11.7.11-11.7.11-1+deb8u11.7.11-1+deb8u21.7.11-1+deb8u3
Show 10 moreShow less
1.7.11-1+deb8u41.7.11-1+deb8u51.7.11-1+deb8u61.7.7-11.7.7-1+deb8u11.7.7-1+deb8u21.7.7-1+deb8u31.7.7-1+deb8u41.7.7-1+deb8u51.7.9-1
1.7.11-1+deb8u7
python-django
Debian:9
From an advisory covering 4 CVEs
before 1:1.10.7-2+deb9u6, plus listed versions
1:1.10.7-21:1.10.7-2+deb9u11:1.10.7-2+deb9u21:1.10.7-2+deb9u31:1.10.7-2+deb9u41:1.10.7-2+deb9u5
1:1.10.7-2+deb9u6
python-django
Debian:10
From an advisory covering 4 CVEs
before 1:1.11.23-1~deb10u1, plus listed versions
1:1.11.21-11:1.11.22-11:1.11.22-1~deb10u1
1:1.11.23-1~deb10u1
django
PyPI
1.11a1 up to 1.11.23, plus listed versions
1.111.11.11.11.101.11.111.11.12
Show 19 moreShow less
1.11.131.11.141.11.151.11.161.11.171.11.181.11.21.11.201.11.211.11.221.11.31.11.41.11.51.11.61.11.71.11.81.11.91.11b11.11rc1
1.11.23
django
PyPI
2.1a1 up to 2.1.11, plus listed versions
2.12.1.12.1.102.1.22.1.3
Show 7 moreShow less
2.1.42.1.52.1.72.1.82.1.92.1b12.1rc1
2.1.11
django
PyPI
2.2a1 up to 2.2.4, plus listed versions
2.22.2.12.2.22.2.32.2b12.2rc1
2.2.4
django
PyPI
2.1 up to 2.1.11, 2.2 up to 2.2.4, 1.11 up to 1.11.23, plus listed versions
1.11.11.11.21.11.31.11.41.11.5
Show 28 moreShow less
1.11.61.11.71.11.81.11.91.11.101.11.111.11.121.11.131.11.141.11.151.11.161.11.171.11.181.11.201.11.211.11.222.1.12.1.22.1.32.1.42.1.52.1.72.1.82.1.92.1.102.2.12.2.22.2.3
2.1.112.2.41.11.23
python-django
Red Hat:openstack:15::el8
From an advisory covering 5 CVEs
before 0:2.1.11-1.el8ost
0:2.1.11-1.el8ost
python-django-bash-completion
Red Hat:openstack:15::el8
From an advisory covering 5 CVEs
before 0:2.1.11-1.el8ost
0:2.1.11-1.el8ost
python3-django
Red Hat:openstack:15::el8
From an advisory covering 5 CVEs
before 0:2.1.11-1.el8ost
0:2.1.11-1.el8ost
python-django
Red Hat:openstack:13::el7
From an advisory covering 5 CVEs
before 0:1.11.27-1.el7ost
0:1.11.27-1.el7ost
python-django-bash-completion
Red Hat:openstack:13::el7
From an advisory covering 5 CVEs
before 0:1.11.27-1.el7ost
0:1.11.27-1.el7ost
python2-django
Red Hat:openstack:13::el7
From an advisory covering 5 CVEs
before 0:1.11.27-1.el7ost
0:1.11.27-1.el7ost
python-Django
SUSE:OpenStack Cloud 7
From an advisory covering 4 CVEs
before 1.8.19-3.15.1
1.8.19-3.15.1
python-Django
SUSE:HPE Helion OpenStack 8
From an advisory covering 6 CVEs
before 1.11.23-3.12.1
1.11.23-3.12.1
python-Django
SUSE:OpenStack Cloud 8
From an advisory covering 6 CVEs
before 1.11.23-3.12.1
1.11.23-3.12.1
python-Django
SUSE:OpenStack Cloud Crowbar 8
From an advisory covering 6 CVEs
before 1.11.23-3.12.1
1.11.23-3.12.1
python-Django1
SUSE:OpenStack Cloud 9
From an advisory covering 6 CVEs
before 1.11.23-3.9.1
1.11.23-3.9.1
python-Django1
SUSE:OpenStack Cloud Crowbar 9
From an advisory covering 6 CVEs
before 1.11.23-3.9.1
1.11.23-3.9.1
python-django
Ubuntu:Pro:14.04:LTS
All versions, plus listed versions
1.5.4-1ubuntu11.6-11.6.1-11.6.1-21.6.1-2ubuntu0.1
Show 30 moreShow less
1.6.1-2ubuntu0.21.6.1-2ubuntu0.31.6.1-2ubuntu0.41.6.1-2ubuntu0.51.6.1-2ubuntu0.61.6.1-2ubuntu0.81.6.1-2ubuntu0.91.6.1-2ubuntu0.101.6.1-2ubuntu0.111.6.1-2ubuntu0.121.6.1-2ubuntu0.131.6.1-2ubuntu0.141.6.1-2ubuntu0.151.6.1-2ubuntu0.161.6.11-0ubuntu11.6.11-0ubuntu1.11.6.11-0ubuntu1.21.6.11-0ubuntu1.31.6.11-0ubuntu1.3+esm11.6.11-0ubuntu1.3+esm21.6.11-0ubuntu1.3+esm31.6.11-0ubuntu1.3+esm41.6.11-0ubuntu1.3+esm51.6.11-0ubuntu1.3+esm61.6.11-0ubuntu1.3+esm71.6.11-0ubuntu1.3+esm81.6.11-0ubuntu1.3+esm91.6.11-0ubuntu1.3+esm101.6.11-0ubuntu1.3+esm111.6.11-0ubuntu1.3+esm12
None known
python-django
Ubuntu:16.04:LTS
before 1.8.7-1ubuntu5.10, plus listed versions
1.7.9-1ubuntu51.8.5-2ubuntu11.8.7-1ubuntu11.8.7-1ubuntu21.8.7-1ubuntu3
Show 10 moreShow less
1.8.7-1ubuntu41.8.7-1ubuntu51.8.7-1ubuntu5.11.8.7-1ubuntu5.21.8.7-1ubuntu5.41.8.7-1ubuntu5.51.8.7-1ubuntu5.61.8.7-1ubuntu5.71.8.7-1ubuntu5.81.8.7-1ubuntu5.9
1.8.7-1ubuntu5.10
python-django
Ubuntu:18.04:LTS
before 1:1.11.11-1ubuntu1.5, plus listed versions
1:1.11.4-1ubuntu11:1.11.6-1ubuntu11:1.11.9-1ubuntu11:1.11.11-1ubuntu11:1.11.11-1ubuntu1.11:1.11.11-1ubuntu1.21:1.11.11-1ubuntu1.31:1.11.11-1ubuntu1.4
1:1.11.11-1ubuntu1.5
python-django
Ubuntu:20.04:LTS
before 1:1.11.22-1ubuntu1
1:1.11.22-1ubuntu1
python-django
Ubuntu:16.04:LTS
From an advisory covering 4 CVEs
before 1.8.7-1ubuntu5.10, plus listed versions
1.7.9-1ubuntu51.8.5-2ubuntu11.8.7-1ubuntu11.8.7-1ubuntu21.8.7-1ubuntu3
Show 10 moreShow less
1.8.7-1ubuntu41.8.7-1ubuntu51.8.7-1ubuntu5.11.8.7-1ubuntu5.21.8.7-1ubuntu5.41.8.7-1ubuntu5.51.8.7-1ubuntu5.61.8.7-1ubuntu5.71.8.7-1ubuntu5.81.8.7-1ubuntu5.9
1.8.7-1ubuntu5.10
python-django
Ubuntu:18.04:LTS
From an advisory covering 4 CVEs
before 1:1.11.11-1ubuntu1.5, plus listed versions
1:1.11.4-1ubuntu11:1.11.6-1ubuntu11:1.11.9-1ubuntu11:1.11.11-1ubuntu11:1.11.11-1ubuntu1.11:1.11.11-1ubuntu1.21:1.11.11-1ubuntu1.31:1.11.11-1ubuntu1.4
1:1.11.11-1ubuntu1.5
python-Django
openSUSE:Leap 15.1
From an advisory covering 7 CVEs
before 2.2.4-lp151.2.3.1
2.2.4-lp151.2.3.1
python-Django
SUSE:Package Hub 15 SP1
From an advisory covering 7 CVEs
before 2.2.4-bp151.3.3.1
2.2.4-bp151.3.3.1

History

History
RecordedChangedSources
affected, facts
affectedOSV
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2019-14233 is a high vulnerability (CVSS 7.5) in Djangoproject Django, published August 1, 2019. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 3.17%, the 88th percentile. Fixed in django 1.11.23.

References

Show 59 moreShow less
MoveEnter Open