Git安全漏洞检查CVE-2021-21300

CVE-2021-21300是一种安全漏洞,允许攻击者通过恶意仓库内的symbolic links执行远程代码。此漏洞影响从Git 2.15至2.30.1的版本。当用户克隆包含恶意脚本的仓库时,可能会在本地执行这些脚本。为防止该漏洞被利用,建议用户更新Git至指定版本或禁用symlink功能。

CVE-2021-21300 安全漏洞检查

本项目模拟一个利用CVE-2021-21300漏洞执行仓库内恶意脚本的行为,如果您的git客户端有 CVE-2021-21300 的安全漏洞,执行 git clone 本仓库时会输出以下内容

CVE-2021-21300 detected !!!  Please update your git to fix the vulnerability

CVE-2021-21300 影响分析

由于对 symbolic links 处理的问题,导致在不区分大小写的文件系统例如 NTFS、HFS、APFS等(这些Window和macOS中默认的文件系统)中 clone 仓库时,存在通过 clean/smudge filters (由Git LFS配置使用)执行命令的漏洞,通过该漏洞,受害者clone 恶意仓库时会在本机执行仓库内植入的恶意脚本.

涉及的 Git 版本

  • 从 2.15 至 现有的 2.30.1

触发这个漏洞还有两个前提:

  • 开启了Git LFS
  • 开启了Git symlinks

解决办法

升级到如下版本:

  • v2.17.6, v2.18.5, v2.19.6, v2.20.5, v2.21.4, v2.22.5, v2.23.4, v2.24.4, v2.25.5, v2.26.3, v2.27.1, v2.28.1, v2.29.3, v2.30.2

Workaround

如果不能升级可以通过以下woraround解决

  • 禁用git 的symlink: git config --global core.symlinks false
  • 禁用 process filter (通常是 LFS 使用此功能),可以通过 git config --show-scope --get-regexp 'filter\..*\.process 查看
  • 避免clone 不受信任的仓库

加入社区

Code China平台

参考信息

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值