CVE-2026-53878: Django: DomainNameValidator permits newline characters that may enable HTTP header injection
(updated )
An issue was discovered in Django 6.0 before 6.0.7 and 5.2 before 5.2.16.
DomainNameValidator does not prohibit newlines in domain names (unless used via a form field, since CharField strips newlines). If an application uses values with newlines in an HTTP response, header injection can occur. Django itself is unaffected because HttpResponse prohibits newlines in HTTP headers.
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 Bence Nagy for reporting this issue.
References
- docs.djangoproject.com/en/dev/releases/security
- github.com/advisories/GHSA-8qcx-xf44-272x
- github.com/django/django/commit/3a720d0d8bf2529253b98968f10ca73daf6d693c
- github.com/django/django/commit/a5de13f1491f1dbf2bb0ad9b91570524ebbc8acd
- github.com/django/django/commit/d5d60ed0323cddaa0ce0237a26a3d49ac21ee05e
- github.com/pypa/advisory-database/tree/main/vulns/django/PYSEC-2026-2092.yaml
- groups.google.com/g/django-announce
- nvd.nist.gov/vuln/detail/CVE-2026-53878
- www.djangoproject.com/weblog/2026/jul/07/security-releases
Code Behaviors & Features
Detect and mitigate CVE-2026-53878 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →