ArchLinux: 201501-9: curl: url request injection
Summary
When libcurl sends a request to a server via a HTTP proxy, it copies the
entire URL into the request and sends if off.
If the given URL contains line feeds and carriage returns those will be
sent along to the proxy too, which allows the program to for example
send a separate HTTP request injected embedded in the URL.
Many programs allow some kind of external sources to set the URL or
provide partial pieces for the URL to ask for, and if the URL as
received from the user is not stripped good enough this flaw allows
malicious users to do additional requests in a way that was not
intended, or just to insert request headers into the request that the
program didn't intend.
Resolution
Upgrade to 7.40.0-1.
# pacman -Syu "curl>=7.40.0-1"
The problem has been fixed upstream in version 7.40.0.
References
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-8150 https://curl.se/docs/CVE-2014-8150.html https://bugs.archlinux.org/task/43379
Workaround
Only use URLs that are carefully stripped from line feeds and carriage returns.