curl / Docs / curl CVEs / netrc and default credential leak
Awarded 505 USD

CVE-2025-0167

netrc and default credential leak

Project curl Security Advisory, February 5th 2025 - Permalink

VULNERABILITY

When asked to 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 a default entry that omits both login and password. A rare circumstance.

INFO

A curl transfer with nn.tld that redirects to zz.tld, using a .netrc file with an empty default entry like below, would make curl pass on maryspassword as password even in the transfer to the second and separate host zz.tld.

machine nn.tld
  login mary
  password maryspassword
default

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.

This flaw is similar, but not identical, to CVE-2024-11053.

The Common Vulnerabilities and Exposures (CVE) project has assigned the name CVE-2025-0167 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

RECOMMENDATIONS

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

A - Upgrade curl and libcurl to version 8.12.0

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 December 30, 2024. We contacted distros@openwall on January 28, 2025.

curl 8.12.0 was released on February 5 2025 around 08:00 UTC, coordinated with the publication of this advisory.

CREDITS

Thanks a lot!