Description
In Django 2.2 before 2.2.22, 3.1 before 3.1.10, and 3.2 before 3.2.2 (with Python 3.9.5+), URLValidator does not prohibit newlines and tabs (unless the URLField form field is used). 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.
Remediation
References
Related Vulnerabilities
MySQL CVE-2016-3521 Vulnerability (CVE-2016-3521)
Moodle Use of a Key Past its Expiration Date Vulnerability (CVE-2024-38277)
Oracle Database Server CVE-2012-1751 Vulnerability (CVE-2012-1751)
WordPress Plugin WooCommerce-GloBee Payment Gateway Security Bypass (1.1.1)
WordPress Plugin Fixedly Media Gallery Cross-Site Scripting (1.3.1)