提示:当前大量开发人员使用git进行版本控制,对站点自动部署。如果配置不当,可能会将.git文件夹直接部署到线上环境。这就引起了git泄露漏洞。
这题明确提示有git泄露漏洞,显然你需要一个工具githack
1.python2可以用githack
------windos的话去网站上下载
https://github.com/lijiejie/GitHack
上不去github就用镜像网站
https://git.sdut.me/lijiejie/GitHack
-------linux可以直接下载
下载后别忘了进入下载目录,然后直接在命令窗输入如下代码
// 这里说明一下网址要是自己做题的网址仔细看看别复制成了别人的网址。
然后会发现文件中会有下载一些文件
// .git文件需要显示隐藏文件才可见
文件被下下来了,这时候查看下载的日志如下输入
------------------------------------详情请看下面python3的部分查看日志------------------------------------与python2完全操作一样
2.python3可以使用 githacker
这个最好在linux上使用,我在windows上不知道为啥跑不了
下载网址
https://github.com/WangYihang/GitHacker
镜像下载
https://git.sdut.me/WangYihang/GitHacker
下载后,里面有个figure文件夹,里面有个demo打开可查看使用步骤
使用 pip3 install -i https://pypi.org/simple/ GitHacker来下载githacker
检查下是否安装成功
输入如下命令下载本网站泄露的内容得到相关文件
查看日志
// 查看日志时一定要去下载的目录去查看
可以清晰的看到,三次提交过程分别有标注 init ,add flag ,remove flag
意思也很清晰,先初始化仓库,加入flag,移除flag。
head->master说明当前所给信息是移除flag后的版本。
这就有两种方法找到flag。
1)使用
git diff HEAD^
命令来对比文件之间的不同得到flag
2) 使用
git reset --hard HEAD^
来切换版本
可以看到版本已经去到add flag这里了