CVE-2026-53878: Header injection possibility since DomainNameValidator accepted newlines in input
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.
Affected Software
Remediation
Patch Available
Event History
Frequently Asked Questions
What is the severity of CVE-2026-53878?
The severity of CVE-2026-53878 is medium with a score of 6.1.
How do I fix CVE-2026-53878?
To fix CVE-2026-53878, update Django to version 6.0.7 or 5.2.16 or later.
What could be the impact of CVE-2026-53878?
The impact of CVE-2026-53878 includes the potential for header injection attacks if newlines are included in domain names.
In which versions of Django is CVE-2026-53878 present?
CVE-2026-53878 is present in Django versions 6.0 before 6.0.7 and 5.2 before 5.2.16.
Does CVE-2026-53878 affect all applications using Django?
CVE-2026-53878 primarily affects applications that utilize the DomainNameValidator without sanitizing input for newlines.