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.mzph.cn/news/151717.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

开源更安全? yum源配置/rpm 什么是SSH?

文章目录 1.开放源码有利于系统安全2.yum源配置,这一篇就够了!(包括本地,网络,本地共享yum源)3.rpm包是什么4.SSH是什么意思?有什么功能? 1.开放源码有利于系统安全 开放源码有利于系统安全 2.yum源配置…

Java 11及更高版本的Oracle JDK版本

2021 年 9 月 14 日,Oracle 发布了可以长期支持的 JDK17 版本,那么从 JDK11 到 JDK17,到底带来了哪些特性呢?亚毫秒级的 ZGC 效果到底怎么样呢?值得我们升级吗?而且升级过程会遇到哪些问题呢?带…

【Spring boot】RedisTemplate中String、Hash、List设置过期时间

文章目录 前言Redis中String设置时间的方法Redis中Hash和List设置时间的方法Redis中Hash的put、putAll、putIfAbsent区别 前言 时间类型:TimeUnit import java.util.concurrent.TimeUnit;TimeUnit.SECONDS:秒 TimeUnit.MINUTES:分 TimeUnit.HOURS&…

Javaweb之Ajax的详细解析

1.1 Ajax介绍 1.1.1 Ajax概述 我们前端页面中的数据,如下图所示的表格中的学生信息,应该来自于后台,那么我们的后台和前端是互不影响的2个程序,那么我们前端应该如何从后台获取数据呢?因为是2个程序,所以…

cobol基本语法

字符集 包括78个字符 A-Z a-z 0-9 (空格 - * / $ ,(逗号) ;(分号) .(小数点或英文句号) ""(双引号) ((左括号) )(右括号&…

“移动机器人课程群实践创新的困境与突围”素材

以下是一篇应用型本科教研论文“移动机器人课程群实践创新的困境与突围”的大纲。您可以根据这个大纲展开您的论文写作: 一、引言 移动机器人技术的发展和应用价值移动机器人课程群在应用型本科教育中的重要性论文目的和研究问题:解析移动机器人课程群实…

利用OpenCV做个熊猫表情包 二

之前写了一篇 利用OpenCV做个熊猫表情包吧_Leen的博客-CSDN博客 回想起来觉得有点太弱了,意犹未尽,每次使用需要自己去手动截取人脸,清除黑边什么的才能使用demo去合成表情,无奈之前由于安装的vs,opencv版本都比较低…

扩散模型实战(十):Stable Diffusion文本条件生成图像大模型

推荐阅读列表: 扩散模型实战(一):基本原理介绍 扩散模型实战(二):扩散模型的发展 扩散模型实战(三):扩散模型的应用 扩散模型实战(四&#xff…

【推荐】智元兔AI:一款集写作、问答、绘画于一体的全能工具!

在当今技术飞速发展的时代,越来越多的领域开始应用人工智能(Artificial Intelligence,简称AI)。其中,AI写作工具备受瞩目,备受推崇。在众多的选择中,智元兔AI是一款在笔者使用过程中非常有帮助的…

Halcon Solution Guide I basics(2): Image Acquisition(图像加载)

文章目录 文章专栏前言文章解读文章开头流程图算子介绍案例自主练习读取一张图片读取多张图片 文章专栏 Halcon开发 Halcon学习 练习项目gitee仓库 前言 今天来看Halcon的第二章,图像获取。在第二章之后,后面文章就会提供案例了。到时候我会尽量完成每一…

场景交互与场景漫游-交运算与对象选取(8-1)

交运算与对象选取 在面对大规模的场景管理时,场景图形的交运算和图形对象的拾取变成了一项基本工作。OSG作为一个场景管理系统,自然也实现了场景图形的交运算,交运算主要封装在osgUtil 工具中在OSG中,osgUtil是一个非常强有力的工…

@AutoConfigurationPackage的使用

作用 参考:https://blog.csdn.net/yasinawolaopo/article/details/121319977 不过文章最后这个结论是有点问题的,这个注解的作用只导入了一个bean,就是AutoConfigurationPackages.class.getName()。 了解introspectedClass(内省…

【Python】给定一个长度为n的数列,将这个数列按从小到大的顺序排列。1<=n<=200

2、问题描述 给定一个长度为n的数列&#xff0c;将这个数列按从小到大的顺序排列。1<n<200 样例输入 5 8 3 6 4 9 样例输出 3 4 6 8 9 n int(input()) a list(map(int,input().split())) a.sort() for i in a:print(i,end ) 运行结果&#xff1a;

深度学习基础

深度强化学习 教程链接 DataWhale强化学习课程JoyRL https://johnjim0816.com/joyrl-book/#/ch7/main 深度学习基础 强化学习的问题可以拆分成两类问题&#xff0c;即预测与控制。预测的主要目的是根据环境的状态以及动作来预测状态的价值与动作的价值&#xff0c;而控制的…

毕业设计JSP 2384网上diy蛋糕店管理系统【程序源码+讲解视频+调试运行】

一、摘要 本文将介绍一个功能全面、易于使用的网上DIY蛋糕店管理系统。该系统包括用户和管理员两种用户&#xff0c;每种用户都有相应的功能模块。系统实现了网站首页、用户注册/登录、蛋糕展示、综合排行、购物车、蛋糕DIY和用户中心等功能&#xff0c;同时管理员还可以进行管…

CISP全真模式测试题(二)

免责声明 文章仅做经验分享用途,利用本文章所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任,一旦造成后果请自行承担!!! 1、下列关于信息安全保障的说法错误的是: A.信息安全保障的问题就是安全的效用问题,在解决或预…

使用C语言判断闰年

可以使用以下代码来判断一个年份是否为闰年&#xff1a; #include <stdio.h>int isLeapYear(int year) {if ((year % 4 0 && year % 100 ! 0) || (year % 400 0)) {return 1; // 是闰年} else {return 0; // 不是闰年} }int main() {int year;printf("请…

VAD监测(一)

麦克风的采样率是16000&#xff0c;代表一秒钟采集16000个数据点 我们每次拿1024个采样点作为一个buffer&#xff0c;buffer是一个b类型&#xff0c;也就是字节类型。 这一个buffer的长度不一定是1024&#xff0c;取决于每个采样点的采样点的位深度&#xff0c;如果音频数据是…

每天一道算法题(七)——求一个数组中最多能存储多少雨水(困难)

文章目录 1、问题2、示例3、解决方法&#xff08;1&#xff09;方法1——双指针 总结 1、问题 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图&#xff0c;计算按此排列的柱子&#xff0c;下雨之后能接多少雨水。 2、示例 示例 1&#xff1a; 输入&#xff1a;height [0,1…