CTFHub-Web-信息泄露 WriteUp

一、目录遍历

  1.题目内容

  点击绿色按钮,进入到一个Web根文件夹中,要求我们遍历所有文件夹,找到flag


  2.解题思路

  由于本题根目录下包含4个文件夹,每个文件夹下面又都包含了4个子文件夹,数量并不多,因此可以采用人工搜寻的方式。但是当遇到文件夹数量过多时,需要编写脚本来自动遍历寻找。

  3.解题过程

  编写了一个Python脚本,自动进行遍历

import requests

base_url = "http://challenge-a4129b9511b15cf1.sandbox.ctfhub.com:10080/flag_in_here/"
for i in range(1,5):
    for j in range(1,5):
        text = requests.get(base_url + str(i) + '/' + str(j) + '/').text
        if 'flag.txt' in text:
            print(str(i) + '/' + str(j) + '/')

  最终找到flag在/1/4目录下,Capture The Flag!



二、PHPINFO

  1.题目内容

  点击绿色按钮,进入到PHPINFO页面,包含了服务器PHP当前状态的大量信息,包括PHP的编译选项、启用拓展、PHP版本信息、服务器信息、环境变量配置、HTTP头和PHP授权信息等


  2.解题思路

  直接在页面中使用Ctrl + F进行搜索

  3.解题过程

  Capture The Flag!


三、备份文件下载

(一)网站源码

  1.题目内容
  2.解题思路

  本题可以直接使用dirsearch工具对该页面进行扫描,也可以自己编写脚本实现

  3.解题过程

  使用如下语句,使用工具进行扫描

python dirsearch.py -u http://challenge-4311e62f0891cfae.sandbox.ctfhub.com:10080/ -e *

  结果保存为txt文件,内容如图所示,包含有内容的后缀为/www.zip


  或者使用自己编写的Python脚本,能够得到相同的结果

import requests

url = "http://challenge-4311e62f0891cfae.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)
        if r.status_code == 200:
            print(pos)

  下载的压缩包中,包含有一个txt文件,用该题目的url访问该文件,Capture The Flag!

(二)bak文件

  1.题目内容
  2.解题思路

  同(一),直接使用dirsearch扫描

  3.解题过程

  使用dirsearch扫描后,得到的txt如图所示


  访问下载后,使用记事本打开,Capture The Flag!

(三)vim缓存

  同(一)(二)相同的方法



(四).DS_Store

  1.题目内容
  2.解题思路

  使用工具并未扫描到包含文件的链接,因此根据题目,直接在链接后面加上/.DS_Store,可获得相关文件

  3.解题过程

  下载得到的为一个二进制文件,通过编译得到字符串51de79b8bd73258dd69382f6b5811aca.txt


  在网页中访问该文件,Capture The Flag!


四、Git泄露

(一)Log

  1.题目内容
  2.解题思路

  使用相关扫描工具

  3.解题过程

  首先使用dirsearch对URL进行扫描,发现了.git文件夹,结果如图所示


  使用GitHack工具进行文件恢复,然后在GitHack所在目录下的dist目录下得到恢复的文件,如图所示

  进入dist目录中刚恢复的文件内打开git,读取git日志,回退到add flag的那个版本,Capture The Flag!

(二)Stash

(三)Index

  采取同(一)类似的方法。(二)在恢复文件后,使用git stash pop获得Flag;(三)在恢复文件后,直接可以获得Flag


五、SVN泄露

  1.题目内容
  2.解题思路

  使用工具dvcs-ripper

  3.解题过程

  首先安装perl的相关环境

sudo apt-get install perl libio-socket-ssl-perl libdbd-sqlite3-perl libclass-dbi-perl libio-all-lwp-perl

  下载工具后,执行以下命令

./rip-svn.pl -v -u http://challenge-5d9d6ed0f6c97245.sandbox.ctfhub.com:10080/.svn/

  执行结果如图所示,使用ls -a查看隐藏目录,进入.svn


  最终在pristine文件夹中,Capture The Flag!


六、HG泄露

  1.题目内容
  2.解题思路

  同样使用工具dvcs-ripper

  3.解题过程

  执行以下命令

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

  在/.hg/store/fnchache中找到了包含flag的txt文件后缀


  在URL后面加上该后缀,Capture The Flag!


  信息泄露的内容,全部学习完成!

你可能感兴趣的:(CTFHub-Web-信息泄露 WriteUp)