Description
In Django 3.2 before 3.2.22, 4.1 before 4.1.12, and 4.2 before 4.2.6, the django.utils.text.Truncator chars() and words() methods (when used with html=True) are subject to a potential DoS (denial of service) attack via certain inputs with very long, potentially malformed HTML text. The chars() and words() methods are used to implement the truncatechars_html and truncatewords_html template filters, which are thus also vulnerable. NOTE: this issue exists because of an incomplete fix for CVE-2019-14232.
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | python-django | 3:4.2.6-1 | — |
| Debian 13 | python-django | 3:4.2.6-1 | — |
| Debian 12 | python-django | 3:3.2.25-0+deb12u1 | DSA-6136-1 |
| Debian 11 | python-django | 2:2.2.28-1~deb11u7 | DLA-4210-1 |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 24.04 LTS | python-django | 3:4.2.4-1ubuntu2 | — |
| Ubuntu 22.04 LTS | python-django | 2:3.2.12-2ubuntu1.9 | USN-6414-1 |
| Ubuntu 20.04 LTS | python-django | 2:2.2.12-1ubuntu0.20 | USN-6414-1 |
Show 3 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu Pro 18.04 LTS | python-django | 1:1.11.11-1ubuntu1.21+esm2 | USN-6414-2 |
| Ubuntu Pro 16.04 LTS | python-django | No fix yet | — |
| Ubuntu Pro 14.04 LTS | python-django | No fix yet | — |
Red Hat
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Red Hat Satellite Utils 6 | foreman +1 | 3.9.1.6-1.el8sat | RHSA-2024:2010 |
| Red Hat Satellite Capsule 6 | foreman +1 | 3.9.1.6-1.el8sat | RHSA-2024:2010 |
| Red Hat Satellite Capsule 6 | puppetserver | 7.14.0-1.el8sat | RHSA-2024:2010 |
| Red Hat Satellite Capsule 6 | python-aiohttp +1 | 3.9.2-0.1.el8pc | RHSA-2024:2010, RHSA-2024:1536 |
| Red Hat Satellite Capsule 6 | python-django +1 | 3.2.22-1.el8pc | RHSA-2024:2010, RHSA-2024:1536 |
| Red Hat Satellite Capsule 6 | python-galaxy-importer +1 | 0.4.18-2.el8pc | RHSA-2024:2010, RHSA-2024:1536 |
| Red Hat Satellite Capsule 6 | python-jinja2 +1 | 3.1.3-0.1.el8pc | RHSA-2024:2010, RHSA-2024:1536 |
| Red Hat Satellite Capsule 6 | python-pycryptodomex +1 | 3.20.0-1.el8pc | RHSA-2024:2010 |
| Red Hat Satellite Capsule 6 | python-pygments +1 | 2.17.0-1.el8pc | RHSA-2024:2010 |
| Red Hat Satellite Capsule 6 | python3.11-aiohttp | 3.9.2-1.el8pc | RHSA-2024:2010 |
| Red Hat Satellite Capsule 6 | python3.11-django | 4.2.9-1.el8pc | RHSA-2024:2010 |
| Red Hat Satellite Capsule 6 | python3.11-galaxy-importer | 0.4.19-2.el8pc | RHSA-2024:2010 |
| Red Hat Satellite Capsule 6 | python3.11-jinja2 | 3.1.3-1.el8pc | RHSA-2024:2010 |
| Red Hat Satellite Capsule 6 | rubygem-activesupport | 6.1.7.6-1.el8sat | RHSA-2024:2010 |
| Red Hat Satellite 6 | foreman +14 | 3.9.1.6-1.el8sat | RHSA-2024:2010 |
| Red Hat Satellite 6 | puppetserver | 7.14.0-1.el8sat | RHSA-2024:2010 |
| Red Hat Satellite 6 | python-aiohttp +1 | 3.9.2-0.1.el8pc | RHSA-2024:2010, RHSA-2024:1536 |
| Red Hat Satellite 6 | python-django +1 | 3.2.22-1.el8pc | RHSA-2024:2010, RHSA-2024:1536 |
| Red Hat Satellite 6 | python-galaxy-importer +1 | 0.4.18-2.el8pc | RHSA-2024:2010, RHSA-2024:1536 |
| Red Hat Satellite 6 | python-jinja2 +1 | 3.1.3-0.1.el8pc | RHSA-2024:2010, RHSA-2024:1536 |
| Red Hat Satellite 6 | python-pycryptodomex +1 | 3.20.0-1.el8pc | RHSA-2024:2010 |
| Red Hat Satellite 6 | python-pygments +1 | 2.17.0-1.el8pc | RHSA-2024:2010 |
| Red Hat Satellite 6 | python3.11-aiohttp | 3.9.2-1.el8pc | RHSA-2024:2010 |
| Red Hat Satellite 6 | python3.11-django | 4.2.9-1.el8pc | RHSA-2024:2010 |
| Red Hat Satellite 6 | python3.11-galaxy-importer | 0.4.19-2.el8pc | RHSA-2024:2010 |
| Red Hat Satellite 6 | python3.11-jinja2 | 3.1.3-1.el8pc | RHSA-2024:2010 |
| Red Hat Satellite 6 | rubygem-activesupport | 6.1.7.6-1.el8sat | RHSA-2024:2010 |
| Red Hat Satellite 6 | rubygem-audited | 5.4.2-1.el8sat | RHSA-2024:2010 |
| Red Hat Satellite 6 | rubygem-puma | 6.4.2-1.el8sat | RHSA-2024:2010 |
Show 4 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Red Hat Rhui 4 | python-aiohttp +1 | 3.9.2-1.el8ui | RHSA-2024:1878 |
| Red Hat Rhui 4 | python-cryptography +1 | 41.0.6-1.el8ui | RHSA-2024:1878 |
| Red Hat Rhui 4 | python-django +1 | 4.2.11-1.el8ui | RHSA-2024:1878 |
| Red Hat Rhui 4 | python-ecdsa +1 | 0.18.0-4.el8ui | RHSA-2024:1878 |
| Red Hat Rhui 4 | python-jinja2 +1 | 3.1.3-1.el8ui | RHSA-2024:1878 |
| Red Hat Ansible Automation Platform Inside 2 | ansible-core | 2.15.5-1.el8ap | RHSA-2023:5758 |
| Red Hat Ansible Automation Platform Developer 2 | ansible-core | 2.15.5-1.el8ap | RHSA-2023:5758 |
| Red Hat Ansible Automation Platform 2 | ansible-core | 2.15.5-1.el8ap | RHSA-2023:5758 |
| Red Hat Ansible Automation Platform 2 | automation-controller-venv-tower | 4.4.6-1.el8ap | RHSA-2023:6158, RHSA-2023:5758 |
| Red Hat Ansible Automation Platform 2 | python-django +1 | 3.2.22-1.el9ap | RHSA-2023:5758 |
| Red Hat Ansible Automation Platform 2 | python-urllib3 +1 | 1.26.18-1.el9ap | RHSA-2023:6158 |
| Red Hat Ansible Automation Platform 2 | python39-django +1 | 3.2.22-1.el8ap | RHSA-2023:5758 |
| Red Hat Ansible Automation Platform 2 | python39-urllib3 +1 | 1.26.18-1.el8ap | RHSA-2023:6158 |
SUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SUSE Package Hub 15 SP5 | python-Django | 2.2.28-bp155.7.6.1 | openSUSE-SU-2023:0309-1 |
| SUSE Package Hub 15 SP5 | python-Django1 | 1.11.29-bp155.4.6.1 | openSUSE-SU-2023:0390-1 |
| SUSE Package Hub 15 SP4 | python-Django | 2.2.28-bp154.2.15.1 | openSUSE-SU-2023:0310-1 |
| SUSE Package Hub 15 SP4 | python-Django1 | 1.11.29-bp154.2.9.1 | openSUSE-SU-2023:0389-1 |
| SUSE OpenStack Cloud Crowbar 9 | python-Django1 | 1.11.29-3.53.1 | SUSE-SU-2023:4426-1 |
Show 4 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SUSE OpenStack Cloud Crowbar 8 | python-Django | 1.11.29-3.54.1 | SUSE-SU-2023:4232-1 |
| SUSE OpenStack Cloud 9 | python-Django1 | 1.11.29-3.53.1 | SUSE-SU-2023:4426-1 |
| SUSE OpenStack Cloud 8 | python-Django | 1.11.29-3.54.1 | SUSE-SU-2023:4232-1 |
| SUSE HPE Helion OpenStack 8 | python-Django | 1.11.29-3.54.1 | SUSE-SU-2023:4232-1 |
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Tumbleweed | python-Django | 4.2.6-1.1 | openSUSE-SU-2026:11248-1, openSUSE-SU-2024:13334-1 |
| openSUSE Tumbleweed | python-Django4 | 4.2.14-1.1 | openSUSE-SU-2026:11235-1, openSUSE-SU-2024:14208-1 |
| openSUSE Tumbleweed | python-Django5 | 5.2.16-1.1 | openSUSE-SU-2026:11270-1 |
| openSUSE Tumbleweed | python-Django6 | 6.0-1.1 | openSUSE-SU-2026:10005-1 |
| openSUSE Leap 15.5 | python-Django | 2.2.28-bp155.7.6.1 | openSUSE-SU-2023:0309-1 |
| openSUSE Leap 15.5 | python-Django1 | 1.11.29-bp155.4.6.1 | openSUSE-SU-2023:0390-1 |
| openSUSE Leap 15.4 | python-Django | 2.2.28-bp154.2.15.1 | openSUSE-SU-2023:0310-1 |
| openSUSE Leap 15.4 | python-Django1 | 1.11.29-bp154.2.9.1 | openSUSE-SU-2023:0389-1 |
Alpine
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Alpine v3.24 | py3-django | 4.2.6-r0 | — |
| Alpine v3.23 | py3-django | 4.2.6-r0 | — |
| Alpine v3.22 | py3-django | 4.2.6-r0 | — |
| Alpine v3.21 | py3-django | 4.2.6-r0 | — |
| Alpine v3.20 | py3-django | 4.2.6-r0 | — |
Show 2 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Alpine v3.19 | py3-django | 4.2.6-r0 | — |
| Alpine v3.18 | py3-django | 4.2.6-r0 | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| PyPI | django | >= 3.2a1, < 3.2.22 | 3.2.22 | GHSA-h8gc-pgj2-vjm3 |
| PyPI | django | >= 4.1a1, < 4.1.12 | 4.1.12 | GHSA-h8gc-pgj2-vjm3 |
| PyPI | django | >= 4.2a1, < 4.2.6 | 4.2.6 | GHSA-h8gc-pgj2-vjm3 |
| PyPI | django | >= 3.2, < 3.2.22 · >= 4.1, < 4.1.12 · >= 4.2, < 4.2.6 | 3.2.22, 4.1.12, 4.2.6 | PYSEC-2023-226 |
Advisories 23
- RHSA-2024:2010 Red Hat Security Advisory: Satellite 6.15.0 release Red Hat Security Advisories (RHSA) · Oct 13, 2026
- RHSA-2024:1878 Red Hat Security Advisory: RHUI 4.8 Release - Security Updates, Bug Fixes, and Enhancements Red Hat Security Advisories (RHSA) · Sep 9, 2026
- RHSA-2024:1536 Red Hat Security Advisory: Satellite 6.14.3 Async Security Update Red Hat Security Advisories (RHSA) · Sep 9, 2026
- RHSA-2023:6158 Red Hat Security Advisory: Red Hat Ansible Automation Platform 2.4 Product Security and Bug Fix Update Red Hat Security Advisories (RHSA) · Aug 8, 2026
- openSUSE-SU-2026:11270-1 python313-Django5-5.2.16-1.1 on GA media SUSE / openSUSE Security Updates · Jul 15, 2026
- WID-SEC-2023-2571 Django: Schwachstelle ermöglicht Denial of Service BSI CERT-Bund (WID) · Jul 13, 2026
- openSUSE-SU-2026:11248-1 python313-Django-5.2.16-1.1 on GA media SUSE / openSUSE Security Updates · Jul 11, 2026
- openSUSE-SU-2026:11235-1 python313-Django4-4.2.30-4.1 on GA media SUSE / openSUSE Security Updates · Jul 10, 2026
- RHSA-2023:5758 Red Hat Security Advisory: Red Hat Ansible Automation Platform 2.4 Product Security and Bug Fix Update Red Hat Security Advisories (RHSA) · Jun 26, 2026
- USN-6414-1 python-django vulnerability Ubuntu Security Notices (USN) · Apr 27, 2026
- USN-6414-2 python-django vulnerabilities Ubuntu Security Notices (USN) · Apr 27, 2026
- openSUSE-SU-2026:10005-1 python312-Django6-6.0-1.1 on GA media SUSE / openSUSE Security Updates · Mar 23, 2026
- DLA-4210-1 python-django - security update Debian Security (DSA / DLA) · Mar 9, 2026
- DSA-6136-1 python-django - security update Debian Security (DSA / DLA) · Feb 15, 2026
- openSUSE-SU-2024:13334-1 python310-Django-4.2.6-1.1 on GA media SUSE / openSUSE Security Updates · Feb 4, 2026
- openSUSE-SU-2023:0390-1 Security update for python-Django1 SUSE / openSUSE Security Updates · Feb 4, 2026
- openSUSE-SU-2023:0310-1 Security update for python-Django SUSE / openSUSE Security Updates · Feb 4, 2026
- SUSE-SU-2023:4232-1 Security update for python-Django SUSE / openSUSE Security Updates · Feb 4, 2026
- openSUSE-SU-2023:0309-1 Security update for python-Django SUSE / openSUSE Security Updates · Feb 4, 2026
- openSUSE-SU-2024:14208-1 python310-Django4-4.2.14-1.1 on GA media SUSE / openSUSE Security Updates · Feb 4, 2026
- WID-SEC-2024-0949 Red Hat Satellite: Mehrere Schwachstellen BSI CERT-Bund (WID) · Jan 26, 2026
- openSUSE-SU-2023:0389-1 Security update for python-Django1 SUSE / openSUSE Security Updates · May 7, 2025
- SUSE-SU-2023:4426-1 Security update for python-Django1 SUSE / openSUSE Security Updates · May 2, 2025
References
- https://groups.google.com/forum/#%21forum/django-announce
- https://docs.djangoproject.com/en/4.2/releases/security/
- https://www.djangoproject.com/weblog/2023/oct/04/security-releases/
- FEDORA-2023-a67af7d8f4 vendor-advisory
- https://security.netapp.com/advisory/ntap-20231221-0001/
- FEDORA-2024-84fbbbb914 vendor-advisory
- [oss-security] 20240304 Django: CVE-2024-27351: Potential regular expression denial-of-service in django.utils.text.Truncator.words() mailing-list