CTFHUB信息泄露

0x00目录遍历

这题比较简单,目录一个个翻过去就能找到flag

0x01PHPINFO

phpinfo() 是php中查看相关信息的函数,当在页面中执行phpinfo()函数时,php会将自身的所有信息全部打印出来。在phpinfo中会泄露很多服务端的一些信息.例如安装的一些模块、网站绝对路径、服务器自身的操作系统、使用的组件版本等等,在phpinfo中获得的这些信息会为下一步的渗透/做题提供一些帮助

打开题目,直接ctrl+f搜索ctfhub

image-20210322213030561

备份文件下载

网站源码

当开发人员在线上环境中对源代码进行了备份操作,并且将备份文件放在了 web 目录下,就会引起网站源码泄露。

image-20210323081920199

1.dirsearch扫描

python3 dirsearch.py -u http://challenge-cf9faace3a6f6f4f.sandbox.ctfhub.com:10080/ -e *

image-20210323082219705

可以看到有一个www.zip备份文件,访问并下载

image-20210323082504903

注意,下载文件里没有flag,需要访问线上环境,也就是http://challenge-cf9faace3a6f6f4f.sandbox.ctfhub.com:10080/flag_884925986.txt 得到flag

2.写python脚本

参考CSDN上某位师傅的脚本

requests
1
2
3
4
5
6
7
8
9
10
11
12
13
14
url = "http://challenge-d43c376975fe79c9.sandbox.ctfhub.com:10080/"
a = ['web','website','backup','back','www','wwwroot','temp']
b = ['tar','tar.gz','zip','rar']

for i in a:
for j in b:
pos = url + i + '.' + j
r = requests.get(pos)
print(i)
print(j)
print(r)
————————————————
版权声明:本文为CSDN博主「这里是青」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/a597934448/article/details/105431367

bak文件

考点:bak文件泄露

有些时候网站管理员可能为了方便,会在修改某个文件的时候先复制一份,将其命名为xxx.bak。而大部分Web Server对bak文件并不做任何处理,导致可以直接下载,从而获取到网站某个文件的源代码

1.直接访问http://challenge-690f816819d034d4.sandbox.ctfhub.com:10080/index.php.bak下载打开得到flag

image-20210323083630723

2.dirsearch扫描

找不到文件,就扫一下看看

3.curl访问

命令行里curl http://challenge-690f816819d034d4.sandbox.ctfhub.com:10080/index.php.bak

image-20210323083933053

vim缓存

当开发人员在线上环境中使用 vim 编辑器,在使用过程中会留下 vim 编辑器缓存,当vim异常退出时,缓存会一直留在服务器上,引起网站源码泄露。

考点:vim交换文件名

在使用vim时会创建临时缓存文件,关闭vim时缓存文件则会被删除,当vim异常退出后,因为未处理缓存文件,导致可以通过缓存文件恢复原始文件内容

以 index.php 为例:第一次产生的交换文件名为 .index.php.swp

再次意外退出后,将会产生名为 .index.php.swo 的交换文件

第三次产生的交换文件则为 .index.php.swn

注意:index前面有’.’

1.curl访问

但是不知道为什么我curl不能直接查看,需要用–output -1.txt来导出文件

image-20210323084800873

2.直接访问.index.php.swp文件下载查看

http://challenge-24655e45a7e82dcd.sandbox.ctfhub.com:10080/.index.php.swp

image-20210323084941771

看了官方wp,除了用编辑器查看外,可以用vim编辑原有文件,例如下载的.index.php.swp,则说明之前编辑的文件名为index.php

vim index.php会提示是否恢复,选择R恢复查看原始内容,具体内容可以看官方wphttps://writeup.ctfhub.com/Skill/Web/%E4%BF%A1%E6%81%AF%E6%B3%84%E9%9C%B2/%E5%A4%87%E4%BB%BD%E6%96%87%E4%BB%B6%E4%B8%8B%E8%BD%BD/qRLpeHeAKJtXs9uV68pmjv.html

.DS_Store

.DS_Store 是 Mac OS 保存文件夹的自定义属性的隐藏文件。通过.DS_Store可以知道这个目录里面所有文件的清单。

1.直接访问下载

http://challenge-698e43df72eaa635.sandbox.ctfhub.com:10080/.DS_Store

image-20210323085943221

不知道为什么这里有空格隔开了,自行把空格去掉然后访问

2.curl

3.利用工具解析

官方wp中写到可以用Python-dsstore来解析.DS_Store文件https://writeup.ctfhub.com/Skill/Web/%E4%BF%A1%E6%81%AF%E6%B3%84%E9%9C%B2/%E5%A4%87%E4%BB%BD%E6%96%87%E4%BB%B6%E4%B8%8B%E8%BD%BD/R95hfDpwDbP2gQ6uEhj3x.html

Git泄露

Log

当前大量开发人员使用git进行版本控制,对站点自动部署。如果配置不当,可能会将.git文件夹直接部署到线上环境。这就引起了git泄露漏洞。

扫描发现git目录有内容

image-20210323092056411

然后用Githack工具clone目标源代码到本地

python GitHack.py http://challenge-bb79305d79fd9c62.sandbox.ctfhub.com:10080/.git/

image-20210323133647117

执行git log查看历史记录

image-20210323133738535

可以看到当前版本为remove flag,而flag在add flag的提交记录里。

解法一:通过与add flag对比

git diff 330e

image-20210323134023453

解法二:切换到add flag这个版本

git reset --hard 330e

image-20210323134213626

得到一个txt文件,打开获得flag

Stash

考点:git 泄露 .git/refs/stash

stash 用于保存 git 工作状态到 git 栈,在需要的时候再恢复。

用Githack工具把源代码clone到本地

python GitHack http://challenge-62efc1b2c479abdf.sandbox.ctfhub.com:10080/.git/

git stash list: 显示Git栈内的所有备份,可以利用这个列表来决定从那个地方恢复。

git stash pop: 从Git栈中读取最近一次保存的内容,恢复工作区的相关内容。由于可能存在多个Stash的内容,所以用栈来管理,pop会从最近的一个stash中读取内容并恢复。

image-20210323135315081

Index

直接Githack下载到本地就有flag

image-20210323135819169

SVN泄露

当开发人员使用 SVN 进行版本控制,对站点自动部署。如果配置不当,可能会将.svn文件夹直接部署到线上环境。这就引起了 SVN 泄露漏洞。

这里贴一个漏洞库https://vulwiki.readthedocs.io/zh_CN/latest/web/svn/

利用dvcs-ripper工具里的rip-svn.pl脚本进行clone.我在本地跑脚本报错,所以就在kali里测试

./rip-svn.pl -u http://challenge-cf93aa0fbd9e2635.sandbox.ctfhub.com:10080/.svn/

image-20210323160142906

cat wc.db | grep -a flag

有个flag文件,尝试访问了一下,并没有得到flag

image-20210323160444530

去pristine文件夹看看,成功找到flag

image-20210323160717397

HG泄露

当开发人员使用 Mercurial 进行版本控制,对站点自动部署。如果配置不当,可能会将.hg 文件夹直接部署到线上环境。这就引起了 hg 泄露漏洞。

还是用dvcs-ripper下载源代码

./rip-hg.pl -v -u http://challenge-151201cbebbbeb85.sandbox.ctfhub.com:10080/.hg/

image-20210323161442938

查看.hg/store/fncache或者直接grep -r flag *找到flag文件,访问得到flag

image-20210323161756847

参考:

https://blog.csdn.net/a597934448/article/details/105431367

https://writeup.ctfhub.com/categories/Skill/Web/%E4%BF%A1%E6%81%AF%E6%B3%84%E9%9C%B2/

https://cloud.tencent.com/developer/article/1682519

https://www.jianshu.com/p/ea88b6a22fcb

  • Copyright: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.

扫一扫,分享到微信

微信分享二维码
  • Copyrights © 2020-2021 Blog of Tianze

请我喝杯咖啡吧~

支付宝
微信