CVE-2021-32052
Summary
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.
Impact & exploitability
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Recommendation
Apply the vendor fix in your normal patch cycle. Open any affected product above for its exact safe version.
Official patch: http://www.openwall.com/lists/oss-security/2021/05/06/1 ↗
Additional information
- NVD record
- http://www.openwall.com/lists/oss-security/2021/05/06/1Patch
- https://docs.djangoproject.com/en/3.2/releases/security/Patch
- https://www.djangoproject.com/weblog/2021/may/06/security-releases/Patch
- https://groups.google.com/forum/#%21forum/django-announce
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/ZVKYPHR3TKR2ESWXBPOJEKRO2OSJRZUE/
- https://security.netapp.com/advisory/ntap-20210611-0002/Advisory