分布式版本控制软件 Git 修复 RCE 远程执行漏洞,官方敦促尽快升级
哈迈百科注:Git 是一个分布式版本控制软件,最初由林纳斯・托瓦兹创作,于 2005 年以 GPL 许可协议发布。最初目的是更好地管理 Linux 内核开发而设计。
CVE-2024-32002 漏洞破坏力很大,黑客通过制作特殊的 Git 仓库子模块,可以欺骗 Git Git 将文件写入 .git/ 目录,而不是子模块的工作树。
这样一来,攻击者可以植入恶意的钩子脚本,在克隆操作仍在进行时即被执行,用户几乎无法事先检查即将执行的代码。
这主要是因为 Git 文件系统支持符号链接(symlinks)且不区分大小写,在递归克隆容易受到大小写混淆的影响,未经身份认证的远程攻击者利用该漏洞使受害者克隆操作期间执行刚刚克隆的代码,从而导致远程代码执行。
官方安全公告指出,禁用 Git 中的符号链接支持(例如,通过 git config --global core.symlinks false)可以阻止此攻击。
这些漏洞已在 Git v2.45.1、v2.44.1、v2.43.4、v2.42.2、v2.41.1、v2.40.2 和 v2.39.4 中得到修补,如果用户当前使用以下影响版本,请尽快升级:
Git 2.45.0
Git 2.44.0
Git 2.43.* < 2.43.4
Git 2.42.* < 2.42.2
Git 2.41.0
Git 2.40.* < 2.40.2
Git < 2.39.4
只影响 Windows 和 Mac 系统
参考
CVE-2024-32002: Exploiting Git RCE via git clone
Critical Git vulnerability allows RCE when cloning repositories with submodules (CVE-2024-32002)