文章目录:
1.git泄露
2.解题流程
3.flag
?一、git泄露:
当前大量开发人员使用git进行版本控制,对站点自动部署。如果配置不当,可能会将.git文件夹直接部署到线上环境。这就引起了git泄露漏洞。
二、解题流程:
1.由于之前的ctfhub在git这题目上存在工具差别,有些版本的githack用相同的方法不能获得flag,所以下面统一用BugScanTeam的GitHack
githack链接
2.进入环境
?3.使用dirsearch扫描目录
dirsearch是一款文件扫描工具,需要现在虚拟机上下载后运行py文件后才能使用
python3 dirsearch.py -u http://challenge-b20bc02a1f02c35f.sandbox.ctfhub.com:10080/
?发现存在git泄露
4.利用githack扫描
python2 GitHack.py -u http://challenge-a2143da80df5cd8b.sandbox.ctfhub.com:10800/.git
GitHack是一个.git泄露利用脚本,通过泄露的.git文件夹下的文件,还原重建工程源代码。
?扫描成功后githack会生成一个文件夹dist,里面存放着重新生成的文件
?进入生成的文件夹中
5.使用git log查看历史记录
可以看见文件有过三次操作,remove flag add flag和init
那么我们获取flag就可以用diff对面前后的flag操作
?三、flag
1.法一使用git diff文件对比
git diff d7b0a8166625cd0c0e09ff80aeb44d023fa9b012 21141e26cc1462d5b872e5cc166bdb1807f9a060
?成功获取flag
法二git reset回退文件版本
git reset --hard d7b0a8166625cd0c0e09ff80aeb44d023fa9b012
?去文件夹中打开文件发现flag
?写这篇文章单纯因为自己在做的时候碰到的错误,单纯分享
|