CVE-2009-0037: CSRF
The redirect implementation in curl and libcurl 5.11 through 7.19.3, when CURLOPTFOLLOWLOCATION is enabled, accepts arbitrary Location values, which might allow remote HTTP servers to (1) trigger arbitrary requests to intranet servers, (2) read or overwrite arbitrary files via a redirect to a file: URL, or (3) execute arbitrary commands via a redirect to an scp: URL.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Configuration
For curl and libcurl versions 5.11 through 7.19.3, disable CURLOPT_FOLLOWLOCATION (set it to false) so the library does not automatically follow Location redirects, preventing arbitrary Location values from triggering intranet requests, file: URLs, or scp: URLs.
curl/libcurl CURLOPT_FOLLOWLOCATION = false
Event History
Frequently Asked Questions
What is the severity of CVE-2009-0037?
CVE-2009-0037 is considered a moderate severity vulnerability that can lead to arbitrary requests to intranet servers.
How do I fix CVE-2009-0037?
To fix CVE-2009-0037, update curl or libcurl to versions 7.19.4 or later.
What software is affected by CVE-2009-0037?
CVE-2009-0037 affects multiple versions of curl and libcurl, specifically from versions 5.11 to 7.19.3.
What is the impact of CVE-2009-0037?
CVE-2009-0037 may allow remote HTTP servers to read or overwrite arbitrary files or initiate requests to internal systems.
Is CVE-2009-0037 a remote code execution vulnerability?
No, CVE-2009-0037 does not directly allow remote code execution, but it can facilitate unauthorized requests to internal services.