CVE-2011-4138: Django Might Allow CSRF Requests via URL Verification
(updated )
The verify_exists
functionality in the URLField implementation in Django before 1.2.7 and 1.3.x before 1.3.1 originally tests a URL’s validity through a HEAD request, but then uses a GET request for the new target URL in the case of a redirect, which might allow remote attackers to trigger arbitrary GET requests with an unintended source IP address via a crafted Location header.
References
- bugzilla.redhat.com/show_bug.cgi?id=737366
- github.com/advisories/GHSA-wxg3-mfph-qg9w
- github.com/django/django
- github.com/django/django/commit/1a76dbefdfc60e2d5954c0ba614c3d054ba9c3f0
- github.com/django/django/commit/7268f8af86186518821d775c530d5558fd726930
- github.com/pypa/advisory-database/tree/main/vulns/django/PYSEC-2011-3.yaml
- hermes.opensuse.org/messages/14700881
- nvd.nist.gov/vuln/detail/CVE-2011-4138
- www.djangoproject.com/weblog/2011/sep/09
- www.djangoproject.com/weblog/2011/sep/10/127
Detect and mitigate CVE-2011-4138 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 →