0x00 漏洞概述
CVE ID | CVE-2020-5260 | 时 间 | 2020-04-17 |
类 型 | IVE | 等 级 | 严重 |
远程利用 | 是 | 影响范围 | Git 2.17.x <= 2.17.3 Git 2.18.x <= 2.18.2 Git 2.19.x <= 2.19.3 Git 2.20.x <= 2.20.2 Git 2.21.x <= 2.21.1 Git 2.22.x <= 2.22.2 Git 2.23.x <= 2.23.1 Git 2.24.x <= 2.24.1 Git 2.25.x <= 2.25.2 Git 2.26.x <= 2.26.0 |
0x01 漏洞详情
Git是一套免费、开源的分布式版本控制系统,旨在快速高效地处理从小型到大型项目的所有内容。
4月14日,Git公布了一个输入验证错误漏洞(CVE-2020-5260),该漏洞会导致Git用户凭证泄露。
Git使用凭证助手(credentialhelper)来帮助用户存储和检索凭证。当URL中包含经过编码的换行符(%0a)时,可能将非预期的值注入到credential helper的协议流中。导致凭证助手检索一个服务器的密码,向另一个服务器发出HTTP请求,使前者的凭据发送到后者,而且两者之间的关系没有任何限制。这意味着攻击者可以制作一个URL,该URL将向其选择的主机提供任何主机的存储凭据。受影响版本Git对恶意URL执行 gitclone命令时会触发此漏洞,攻击者可利用恶意URL欺骗Git客户端发送主机凭据。
0x02 处置建议
升级补丁,下载链接:
https://github.com/git/git/releases
临时措施:
禁用credential helper:
git config --unsetcredential.helper
git config --global --unsetcredential.helper
git config --system --unsetcredential.helper
避免恶意URL:
gitclone时检查URL的主机名和用户名部分是否存在编码的换行符(%0a)或凭据协议注入的证据(例如host=github.com);
避免将子模块与不受信任的存储库一起使用(不要使用clone --recurse-submodules;仅在检查.gitmodules中的URL之后才使用git子模块更新);
避免对不信任的URL执行 git clone。
0x03 相关新闻
https://www.suse.com/security/cve/CVE-2020-5260/
0x04 参考链接
https://nvd.nist.gov/vuln/detail/CVE-2020-5260
https://github.com/git/git/security/advisories/GHSA-qm7j-c969-7j4q
0x05 时间线
2020-04-14 Git发布公告
2020-04-14 CVE发布该漏洞
维他命安全简讯
微信:VitaminSecurity