CVE-2011-4138
HIGH7.5EPSS 0.64%Django Might Allow CSRF Requests via URL Verification
Published: 5/14/2022Modified: 4/28/2026
Description
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.
Affected packages (3)
- Debian/python-djangofrom 0, < 1.3.1-1
- PyPI/djangofrom 0, < 1.2.7
- PyPI/djangofrom 0, < 1.2.7, >= 1.3, < 1.3.1
CVSS scores
| Source | Version | Severity | Vector |
|---|---|---|---|
| osv | CVSS 4.0 | — | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N |
| osv | CVSS 3.1 | HIGH7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N |
References (16)
- ADVISORYhttp://secunia.com/advisories/46614
- ADVISORYhttps://nvd.nist.gov/vuln/detail/CVE-2011-4138
- ADVISORYhttps://security-tracker.debian.org/tracker/CVE-2011-4138
- ADVISORYhttps://www.djangoproject.com/weblog/2011/sep/09/
- ADVISORYhttps://www.djangoproject.com/weblog/2011/sep/10/127/
- PATCHhttps://github.com/django/django
- WEBhttp://openwall.com/lists/oss-security/2011/09/11/1
- WEBhttp://openwall.com/lists/oss-security/2011/09/13/2
- WEBhttps://bugzilla.redhat.com/show_bug.cgi?id=737366
- WEBhttps://github.com/django/django/commit/1a76dbefdfc60e2d5954c0ba614c3d054ba9c3f0
- WEBhttps://github.com/django/django/commit/7268f8af86186518821d775c530d5558fd726930
- WEBhttps://github.com/pypa/advisory-database/tree/main/vulns/django/PYSEC-2011-3.yaml
- WEBhttps://hermes.opensuse.org/messages/14700881
- WEBhttps://www.djangoproject.com/weblog/2011/sep/09
- WEBhttps://www.djangoproject.com/weblog/2011/sep/10/127
- WEBhttp://www.debian.org/security/2011/dsa-2332