CTFHub个人学习记录
第三章:web前置技能-信息泄露-备份文件下载-网站源码篇
文章目录
前言
路漫漫其修远兮,吾将上下而求索。
本文涉及以下知识点,去引用文章学习即可:
链接: 我是一个知识点
链接: 我是一个知识点
链接: 我是一个知识点
这里提供我使用的两种方法,python和dirsearch
一、解题过程
方法一:
1.首先访问靶机页面和查看网页提示,如下图所示:
2.其实从提示我们就知道网站被压缩备份了,可以使用python来测试,如下图所示:
import requests
url1 = 'http://challenge-bb98ab6fa87968b5.sandbox.ctfhub.com:10800/' # 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)
代码解释:
这段代码是用Python的requests库对特定URL进行备份文件的扫描。具体执行过程如下:
- 首先定义了一个初始URL为’http://challenge-bb98ab6fa87968b5.sandbox.ctfhub.com:10800/'。
- 然后定义了两个列表,分别包含常见的网站源码备份文件名和后缀。
- 通过嵌套的循环遍历备份文件名和后缀的组合,生成不同备份文件的URL。
- 对于每个生成的URL,发送一个GET请求并输出备份文件名和对应的状态码。
代码执行过程中会输出备份文件名和状态码,状态码表示请求的结果,200表示请求成功,404表示请求的资源不存在等等。
找到访问成功返回的200状态码,如下图所示:
3.下载源码,查看并没有flag,找到文件名,在url中访问文件,得到flag,如下图所示:
方法二:
dirsearch 是一个在github上很好用的开源目录扫描工具,具体使用请看文章开头
使用:diresearch -u 接你要扫描的url -e *
-u:url
-e:扩展名列表,用逗号隔开(例如:php,asp)
查看返回值,大部分都是503,返回200的表示可以访问
1.使用命令python dirsearch.py -u http://challenge-016ded92e46feec0.sandbox.ctfhub.com:10800/ -e *对网站进行扫描,如下图所示:
python dirsearch.py -u http://challenge-016ded92e46feec0.sandbox.ctfhub.com:10800/ -e *
2.成功扫到访问目标地址,如方法一所示,拿到flag提交即可,如下图所示:
总结
大概思路和涉及的知识点(这里我一律复制网上师傅总结的即可,网上的师傅们总结的很完美,我就不东施效颦)
思路:
当开发人员在线上环境中对源代码进行了备份操作,并且将备份文件放在了 web 目录下,就会引起网站源码泄露。