GitHub修复9个Git漏洞风险通告

发布时间 2019-12-16

漏洞编号和级别


CVE编号:CVE-2019-1348,危险级别:高危,CVSS分值:官方未评定

CVE编号:CVE-2019-1349,危险级别:高危,CVSS分值:官方未评定

CVE编号:CVE-2019-1350,危险级别:高危,CVSS分值:官方未评定

CVE编号:CVE-2019-1351,危险级别:高危,CVSS分值:官方未评定

CVE编号:CVE-2019-1352,危险级别:高危,CVSS分值:官方未评定

CVE编号:CVE-2019-1353,危险级别:高危,CVSS分值:官方未评定

CVE编号:CVE-2019-1354,危险级别:高危,CVSS分值:官方未评定

CVE编号:CVE-2019-1387,危险级别:高危,CVSS分值:官方未评定

CVE编号:CVE-2019-19604,危险级别:严重,CVSS分值:9.8


影响版本


Git 2.24及以下版本


漏洞概述


Git是一套免费、开源的分布式版本控制系统。它修复了如下九个漏洞,其中CVE-2019-1350,CVE-2019-1351,CVE-2019-1352,CVE-2019-1353和CVE-2019-1354是Windows特定的漏洞,在克隆不受信任的存储库时可能导致远程实行代码。CVE-2019-1352可以影响非Windows用户,但前提是必须挂载NTFS卷。


CVE-2019-1348

git fast-import的--export-marks选项也通过以下方式公开流内命令功能export-marks = ...,它允许覆盖任意路径。


CVE-2019-1349

在某些情况下以递归方式克隆子模块时Git可能被欺骗两次使用相同的Git目录。


CVE-2019-1350

命令行参数引用不正确允许远程代码与SSH URL一起在递归克隆期间实行。


CVE-2019-1351

物理驱动器上唯一允许使用的驱动器号 Windows是美国英语字母,此限制不适用于通过subst<letter>:<path>分配的虚拟驱动器。Git将此类路径误认为是相对路径,从而允许在克隆时写在工作树外部。


CVE-2019-1352

Git不知道NTFS备用数据流,克隆期间允许文件覆盖.git/目录。


CVE-2019-1353

在Linux的Windows子系统中运行Git时(也称为“ WSL”),在常规Windows驱动器上访问工作目录时,没有任何NTFS保护处于活动状态。


CVE-2019-1354

Linux / Unix上的文件名可以包含反斜杠。在Windows上,反斜杠是目录分隔符。 Git并没有拒绝用这样的文件名写出跟踪文件。


CVE-2019-1387

递归克隆当前受以下漏洞的影响:子模块名称验证过于宽松造成的,允许通过递归克隆中的远程代码实行来进行有针对性的攻击。


CVE-2019-19604

“Git子模块更新”操作可以运行恶意存储库的.gitmodules文件中找到的命令。


漏洞验证


暂无POC/EXP。


修复建议


目前厂商已发布升级补丁以修复漏洞,补丁获取链接:https://github.blog/2019-12-10-multiple-git-vulnerabilities-in-2-24-and-older/。


参考链接


https://www.cbronline.com/news/git-project-patches