当前位置: 首页 > article >正文

CTFHub Git泄露

Log

前言

根据题目描述,这个题目需要使用到工具 GitHack 来完成,而 CTFHub 上提供的工具需要在 python2 环境中执行,注意 python3 环境无法使用。

 GitHack准备(kali Linux)

打开虚拟机

sudo su

 以管理员的身份运行

git clone https://github.com/BugScanTeam/GitHack

 d2392681dd494bd4b787d5e77dead3d3.png

 GitHack要在其目录下运行,而且环境也要python2的环境,python3的环境不行

9d57614fbb7d4b2c97fd389c6c287f9d.png

 解题

311d5c485c1a49ad99753601d6a08faf.png

 

python2  GitHack.py http://challenge-e1d56afd01c3bdf2.sandbox.ctfhub.com:10800/.git/ 

ef5403c9ae70449d962675291a85afd8.png

 753f77e4aeb74dcda94854de683cee1e.png

 在终端打开目录路径,并使用git log命令查看其历史记录

040470c02df04daba52aedd85bda3e81.png

解释说明:

        remove flag 表示当前版本

        add flag 表示这次提交的版本

        init 表示初始的版本

 使用git diff命令可以对比提交版本,对比这三个版本发现在add flag中获得此题flag

git diff c4016e7a5c99106aefb974c030c8181d38696d42

145ace21b4a24d22a3a0d408b12874f8.png

 ctfhub{1e566fa3df6e2a017942e11f}

Stash

进入环境

0eebb09a5d48460aa0e420c8c87d1ed0.png

 使用GitHack工具将题目源码下到本地目录

python2 GitHack.py http://challenge-9ffd02eaf677512a.sandbox.ctfhub.com:10800/.git/

 6e15889c861f4fab8a7ab5959cca27e3.png

 在GitHack工具的dist目录中打开刚才clone的网站目录文件

在终端打开clone的目录路径,并使用git log命令查看其历史记录

3baa94b9d5f94d2ea3c57ce98c69bdf9.png

使用git diff命令可以对比提交版本,发现在add flag版本中有一个文本文件

git diff a1e2bbe39ff8538f8f661e3944ba82e9e7393086

9bff4b4d9d0548bd9abddef7d2cf22e4.png

 通过对git命令的学习和题目的提示,使用stash命令可以恢复文件

git stash pop  

40ddb4755b3542159cd4a10a8743f48c.png

笔记

f6fe23586c704fc19b7701f5deaa349d.png

Index

此题与之前题目类似,使用 GitHack 工具 clone 题目源码到本地目录,没想到查看本地目录文件时发现多了一个文本文件,文本文件中得到此题 flag 。

一来直接就使用GitHack工具clone题目源码到本地目录下

8aedf6c566334e5cae0bc3f1281d5beb.png

 bb740b9cf6304ca89cc01d9aa484015f.png

 

在GitHack工具的dist目录中打开刚才clone的网站目录文件,发现一个文本文件

26b61d7424634d3a9b098b8eeaed9d02.png

 在终端打开clone的目录路径,并查看index file文件

git ls-files --stage

3b7c820b21dd486b9246f8013d986ad0.png

 使用git log命令查看其历史记录

git log

08fa17862bb341eca32bdc1552f7730f.png

 使用git diff命令可以对比提交版本,发现在init版本中有一个文本文件,得到此题flag

92839c78e30f4cf4b4da5f93a6104b19.png

 

SVN泄露

先将dvcs-ripper工具在kali linux安装好

参考:dvcs-ripper安装教程-CSDN博客

 731f2957f30c41df9c918069e564cab2.png

使用dvcs-ripper工具将泄露的文件下载到本地目录中

./rip-svn.pl -u http://challenge-13535a84cf5cffc9.sandbox.ctfhub.com:10800/.svn 

cc907dffa3eb487a9256a180d3dda647.png

 在.svn文件夹中查看下载好的文件

ls -al

52d704e639c14750b2d34dac8171cad0.png

 访问wc.db数据查看是否有此题flag,索引发现flag有两个文本文件可能存在flag

cat wc.db | grep -a flag
cat wc.db | grep -a ctfhub

5dd0a2a87a1a4974a50c41f0c2143faf.png

 使用curl命令访问可以文件检查网页源代码是否存在flag,检查均返回404,可能已经被删除了

7fbcf12fd7f2405e8398f1f8ab0ba545.png

网页提示说flag在服务端旧版本的源代码中,那么应该检查一下pristine文件是否存放flag

cd pristine

5ce86de2d75545d486b5fcb1f19c2399.png

查看bf文件夹是否存在此题flag,发现查看文件夹中的.svn-base文件中不存在此题flag

5111e7a0e25e4e2baaabed3429ba81d0.png

 同样的操作查看e8,最后发现flag

2de44c821de647d7bede8c402fa76b81.png

HG泄露

37eb52cfc0d54f619aa547346a094966.png

 要做这题要先下载关于HG泄露的漏洞利用工具

下载使用工具我建议在kali Linux上下载使用dvcs-ripper

解题思路

这题与之前的题目比较类似,同样使用 dvcs-ripper 工具下载泄露的网站目录,但是使用工具过程中出现了一些错误,导致网站源代码没有完整下载。正如网页显示内容中的提示所说,不好使的情况下,试着手工解决。那么此题目是让我们不要过度依赖工具的使用。使用 tree 命令列出下载到本地目录的所有文件。发现一个可疑的文本文件,查看文本文件发现历史记录中一个新增的 flag 文件。正则搜索相关文件发现可疑文本,使用 curl 命令检查发现此题flag。
 

使用dvcs-ripper下载泄露的文件

./rip-hg.pl -u http://challenge-0d3831f1cebeab8b.sandbox.ctfhub.com:10800/.hg

 99f5535928104b6d85cd32d34d1ded6d.png

发现提示404报错和两处完成,可能是没有完整下载网站目录

使用tree命令列出刚刚下载的.hg网站目录,发现可疑的文本文件

f8368c1dba494741a16059c8c0ed6826.png

 查看可疑的文本文件是否存在此题flag,发现历史版本add flag

cat .hg/last-message.txt

 785f3ee449534c569650cabbc91cad2f.png

 发现历史版本可以使用正则表达式进行关键字查找

grep -a -r flag

efc7db5ee7c3405cbeec83bfd44401e9.png

 使用curl命令检查一下data数据中的文本文件,发现此题flag

curl http://challenge-0d3831f1cebeab8b.sandbox.ctfhub.com:10800/flag_2556511088.txt

4b5bc164b551436f8e69edd2dba2b526.png

 


http://www.kler.cn/a/135847.html

相关文章:

  • linux socket编程之udp_dict_serve服务端--引入配置文件
  • 重温设计模式--组合模式
  • C++ OpenGL学习笔记(4、绘制贴图纹理)
  • OpenHarmony的分布式服务框架介绍与实现解析
  • SpringBoot核心:自动配置
  • 【java基础系列】实现数字的首位交换算法
  • Spring Framework IOC依赖查找 - 按类型查找解析
  • Linux-CentOS重要模块
  • 编写高效的消息传递代码-对消息进行降维
  • 不同content-type对应的前端请求参数处理格式
  • HTTP四种请求方式,状态码,请求和响应报文
  • 比赛调研资料
  • Apache阿帕奇安装配置
  • 学习c#的第二十一天
  • pip list 和 conda list的区别
  • 在市场发展中寻变革,马上消费金融树行业发展“风向标”
  • Android修行手册-POI操作中文API文档
  • 数据结构之链表练习与习题详细解析
  • HTTPS流量抓包分析中出现无法加载key
  • vscode Prettier配置
  • 苹果(Apple)公司的新产品开发流程(一)
  • 计蒜客T1654 数列分段(C语言实现)
  • 结合scss实现黑白主题切换
  • 趣学python编程 (五、常用IDE环境推荐)
  • 10 Redis的持久化
  • c++ 获取当前时间(精确至秒、毫秒和微妙)