curl / Docs / curl CVEs / netrc and redirect credential leak
Awarded 540 USD

CVE-2024-11053

netrc and redirect credential leak

Project curl Security Advisory, December 11th 2024 - Permalink

VULNERABILITY

When asked to both use a .netrc file for credentials and to follow HTTP redirects, curl could leak the password used for the first host to the followed-to host under certain circumstances.

This flaw only manifests itself if the netrc file has an entry that matches the redirect target hostname but the entry either omits just the password or omits both login and password.

INFO

A curl transfer with a.tld that redirects to b.tld that uses a .netrc like below (with a match, but no password specified for the second host), would make curl pass on alicespassword as password even in the second transfer to the separate host b.tld.

machine a.tld
  login alice
  password alicespassword
default
  login bob

This bug is not considered a C mistake. It is not likely to have been avoided had we not been using C.

This flaw also affects the curl command line tool.

The Common Vulnerabilities and Exposures (CVE) project has assigned the name CVE-2024-11053 to this issue.

CWE-200: Exposure of Sensitive Information to an Unauthorized Actor

Severity: Low

AFFECTED VERSIONS

libcurl is used by many applications, but not always advertised as such!

SOLUTION

The fix also addresses a few other .netrc related issues.

RECOMMENDATIONS

We suggest you take one of the following actions immediately, in order of preference:

A - Upgrade curl and libcurl to version 8.11.1

B - Apply the patch to your version and rebuild

C - Avoid using netrc together with redirects

TIMELINE

This issue was reported to the curl project on November 8, 2024. We contacted distros@openwall on December 3, 2024.

curl 8.11.1 was released on December 11 2024 around 06:00 UTC, coordinated with the publication of this advisory.

CREDITS

Thanks a lot!