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.
{
"github_reviewed": true,
"cwe_ids": [
"CWE-20"
],
"github_reviewed_at": "2024-01-16T22:48:09Z",
"nvd_published_at": "2011-10-19T10:55:00Z",
"severity": "HIGH"
}