What’s Vulnerable › Vulnerabilities
CVE-2026-25673: Potential denial-of-service vulnerability in URLField via Unicode normalization on Windows
- Severity: high (CVSS 7.5 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.8% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-03-03 · updated 2026-07-15
- Weakness: CWE-400
Description
An issue was discovered in 6.0 before 6.0.3, 5.2 before 5.2.12, and 4.2 before 4.2.29. `URLField.to_python()` in Django calls `urllib.parse.urlsplit()`, which performs NFKC normalization on Windows that is disproportionately slow for certain Unicode characters, allowing a remote attacker to cause denial of service via large URL inputs containing these characters. 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 Seokchan Yoon for reporting this issue.
Affected products
- Django: from 4.2.0 before 4.2.29; from 5.2 before 5.2.12; from 6.0 before 6.0.3 — fixed in 4.2.29, 5.2.12, 6.0.3
How to fix
Upgrade to a fixed version: Django 4.2.29, 5.2.12, 6.0.3. Check the vendor advisory for mitigations.
References
- https://docs.djangoproject.com/en/dev/releases/security/
- https://groups.google.com/g/django-announce
- https://www.djangoproject.com/weblog/2026/mar/03/security-releases/
- https://access.redhat.com/security/cve/CVE-2026-25673
- https://bugzilla.redhat.com/show_bug.cgi?id=2444115
- https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-25673.json
Get alerted when CVE-2026-25673 or the next vulnerability affects your stack