CVE-2024-11053 (CVSS 9.1):Curl 漏洞在重定向中暴露用户凭证

CVE-2024-11053 (CVSS 9.1):Curl 漏洞在重定向中暴露用户凭证

独眼情报 2024-12-15 02:41

流行的 curl 命令行工具和库中最近发现了一个漏洞,编号为 CVE-2024-11053,CVSS 评分为 9.1,可能导致用户凭据意外泄露。该漏洞源于使用.netrc文件存储凭据与 curl 对 HTTP 重定向的处理之间的交互。

在特定情况下,当 curl 配置为使用.netrc文件并遵循重定向时,它可能会无意中将初始主机的密码泄露给重定向的主机。如果.netrc文件包含重定向目标主机名的条目但省略了密码或登录名和密码,就会发生这种情况。

例子:

考虑这样一种情况,即 curl 传输到a.tld重定向到b.tld。该.netrc文件有一个带密码的 条目a.tld和一个不带密码的 条目。在这种情况下,curl 会在后续传输到 时b.tld错误地使用 的密码,从而可能将其暴露给重定向的主机。a.tldb.tld

受影响的版本:

该漏洞影响 curl 6.5 至 8.11.0 版本。6.5 和 8.11.1 之前的版本及更高版本不受影响。

解决方案:

该问题已在 curl 版本8.11.1中得到解决。强烈建议用户升级到此版本或应用提供的补丁并重建 curl。解决方法是避免将.netrc文件与重定向一起使用。

影响:

由于 curl 和 libcurl 被许多应用程序广泛使用,且通常没有明确提及,因此此漏洞构成重大风险。凭据的潜在暴露可能导致未经授权的访问和敏感信息的泄露。

建议:

立即将 curl 和 libcurl 升级到 8.11.1 版本。
如果无法升级,请应用补丁并重建 curl。
.netrc作为临时缓解措施,禁止将文件与重定向结合使用。

新版本和补丁

https://curl.se/docs/vuln-8.11.1.html

https://github.com/curl/curl/commit/e9b9bbac22c26cf6731