近日,GitHub 官博披露了一个 “git clone” 命令的漏洞 CVE-2021-213,该漏洞可能导致特制的仓库在 git clone 过程中能够执行代码。
该漏洞源于 clean/smudge 过滤器(如Git LFS)中的延迟检查机制。 如果一个特别制作的版本库包含符号链接以及使用 clean/smudge 过滤器的文件,可能会导致在克隆到不区分大小写的文件系统(如 NTFS、HFS+ 或 APFS(即 Windows 和 macOS上 的默认文件系统))时执行刚检查出来的脚本。这个过程中,注意,clean/smudge 过滤器是必须的,而 Windows 默认配置了 Git LFS,因此更易受到攻击。2.15 到 2.30.1 的版本均会受到影响。
解决这个漏洞的最有效方法是升级到 2.30.2。如不能立即升级,也可以通过以下任何一种方式来降低风险:
GitHub 本身不容易受到这种攻击,因为其不会在服务器上存储已检查出的仓库副本,但 GitHub Pages 除外,尽管它没有使用任何 clean/smudge 过滤器。目前,该问题已在 3 月 9 日星期二发布的补丁中进行了修补。
from:https://www.oschina.net/news/132640/git-clone-vulnerability-cve-2021-213