The curl URL parser wrongly accepts percent-encoded URL separators like '/' when decoding the hostname part of a URL, making it a different URL using the wrong hostname when it is later retrieved.
For example, a URL like http://example.com%2F10.0.0.1/
, would be allowed by
the parser and get transposed into http://example.com/10.0.0.1/
. This flaw
can be used to circumvent filters, checks and more.