Description
An issue was discovered in 6.0 before 6.0.4, 5.2 before 5.2.13, and 4.2 before 4.2.30. `ASGIRequest` allows a remote attacker to spoof headers by exploiting an ambiguous mapping of two header variants (with hyphens or with underscores) to a single version with underscores. 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 Tarek Nakkouch for reporting this issue.
Problem types
CWE-290: Authentication Bypass by Spoofing
Product status
6.0 (semver) before 6.0.4
6.0.4 (semver)
5.2 (semver) before 5.2.13
5.2.13 (semver)
4.2 (semver) before 4.2.30
4.2.30 (semver)
Timeline
| 2025-12-23: | Initial report received. |
| 2026-03-10: | Vulnerability confirmed. |
| 2026-04-07: | Security release issued. |
Credits
Tarek Nakkouch
Jacob Walls
Jacob Walls
References
docs.djangoproject.com/en/dev/releases/security/ (Django security archive)
groups.google.com/g/django-announce (Django releases announcements)
www.djangoproject.com/weblog/2026/apr/07/security-releases/ (Django security releases issued: 6.0.4, 5.2.13, and 4.2.30)