目录
一、Log
1、题目介绍
2、知识储备
3、解题步骤
(1)、查看页面
(2)、dirsearch扫描目录
(3)、Githack扫描
(4)、git log历史查询
(5)、获取flag
二、Stash
1、知识储备:
2、githack扫描
3、获取flag
三、Index
1、知识储备
2、dirsearch扫描
3、获取flag
四、个人感悟
一、Log
1、题目介绍
2、知识储备
(1)、用的工具:dirsearch、Githack。(大家在GitHub上自己下载,也可以私聊)
Githack在使用前需要有确保git在环境变量里,下载如下:
ubuntu/debian: $ apt-get install git
redhat/centos: $ yum install git
windows:https://github.com/git-for-windows/git/releases/tag/v2.38.1.windows.1(下载地址)
(2)、GitHack是一个.git泄露利用脚本,通过泄露的.git文件夹下的文件,还原重建工程源代码。
(3)、Githack使用思路:1、Githack扫描;2、git log查看历史记录。
扫描语法:python GitHack.py http://www.target.com/.git/
3、解题步骤
(1)、查看页面
(2)、dirsearch扫描目录
python dirsearch.py -u http://challenge-5a5d24023f7ea71c.sandbox.ctfhub.com:10800 -e git -t 5
扫描结果:
存在git泄露;
(3)、Githack扫描
进入GitHack文件夹,执行下列命令:
python GitHack.py http://challenge-e87e0210287ba7b3.sandbox.ctfhub.com:10800/.git/
进入这个文件夹,扫描结果存储在这
(4)、git log历史查询
总共有三个版本,经过查看发现在add flag这添加了flag,所以我们要恢复到这个版本;
(5)、获取flag
得到flag有两种方法:
1、版本比对:git diff
用法:git diff <分支名1> <分支名2>2、版本回退:git reset
用法:git reset --hard <分支名>
- 版本比对
- 版本回退
git reset --hard flag对应版本
版本回退完成后会在该目录下生成一个txt文件,flag存在该文件里。
二、Stash
1、知识储备:
(1).git stash概念
.git stash用于想要保存当前的修改,但是想回到之前最后一次提交的干净的工作仓库时进行的操作。.git stash将本地的修改保存起来,并且将当前代码切换到HEAD
提交上。
主要大家可以参考:git stash的详细讲解 - 简书 (jianshu.com)
(2)、会用到的命令
主要会用到:
git stash lish #查看当前stash中的内容
git stash pop #将当前stash中的内容弹出,并应用到当前分支对应的工作目录上,可以理解为恢复内容。
其他命令讲解可以参考: git stash命令详解
其他步骤与上述相同,直接来到GitHack扫描。
2、githack扫描
箭头所指为文件内容,进入该文件夹;
3、获取flag
本关为stash,因此在githack扫描后,进入文件夹,输入git stash pop恢复缓存,执行后会恢复一个txt文件,里面存有flag。
三、Index
1、知识储备
题目中的index并不是我们理解的web网页,而是一个暂存区,默认存储在.git/index。
关于index的具体知识点大家可以阅读一下这个大佬的文章:(Git本地库中的索引(Index)及文件状态概述_易生一世的博客-CSDN博客
2、dirsearch扫描
3、获取flag
到了这一步,网上有大佬说是可以直接访问/.git/index,获取到文件,然后直接打开就可以得到flag;关于如何打开个人尝试了两种:直接打开二进制文件,linux下cat打开乱码,之后看帖子有个大佬说使用git checkout命令查看,我属实没有玩明白,实在研究不出来了,使用老办法。(个人能力问题,感兴趣的大家可以试着去学习这个)
老办法:
githack扫描 =》进入文件夹 =》git log查看历史 =》两个版本,直接进行git diff获取到flag 。
图如下:
文章来源:https://www.toymoban.com/news/detail-524465.html
四、个人感悟
做了这三个git泄露,只能说知识的匮乏,学习的路还很长;正式的挖掘不会像这个一样直接告诉你他是什么泄露,需要自己去尝试,另外感觉git这个东西很深啊,好难。路还长,共勉!文章来源地址https://www.toymoban.com/news/detail-524465.html
到了这里,关于CTFHub-Web-信息泄露-Git泄露的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!