CTFHUB-WEB-信息泄露

CTFHUB-WEB-信息泄露

  • 目录遍历:
  • PHPINFO
  • 备份文件下载
    • 备份文件下载-网站源码
    • Dirsearch目录爆破工具
    • 备份文件下载-bak文件
    • 备份文件下载-vim缓存
    • 备份文件下载-.DS_Store
  • SVN泄露
    • 工具:dvcs-ripper信息泄露利用工具
  • Git泄露
    • Git泄露-Log
    • GitHack:.git泄露利用工具,可还原历史版本
    • Git泄露-stash
    • Git泄露-index
  • HG泄露

目录遍历:

靶机环境
CTFHUB-WEB-信息泄露_第1张图片

点进去是4个文件夹,开始寻找flag
CTFHUB-WEB-信息泄露_第2张图片

发现flag在2/3文件夹里,打开即可获得flag

CTFHUB-WEB-信息泄露_第3张图片
CTFHUB-WEB-信息泄露_第4张图片

别人博客里的代码:使用了requests库。运行后即可得到flag.txt所在路径
https://www.cnblogs.com/anweilx/p/12420060.html

#! /usr/bin/env python
# _*_  coding:utf-8 _*_
import requests

url = "http://challenge-a2aa3d58b775fdfd.sandbox.ctfhub.com:10080/flag_in_here"

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(url_test)

PHPINFO

靶机环境:
CTFHUB-WEB-信息泄露_第5张图片

点进去是PHP版本信息和环境信息。
CTFHUB-WEB-信息泄露_第6张图片

文档很长,搜索关键字FLAG,即可找到flag信息
CTFHUB-WEB-信息泄露_第7张图片

备份文件下载

备份文件下载-网站源码

题目:
CTFHUB-WEB-信息泄露_第8张图片

靶机环境:给了一点提示
CTFHUB-WEB-信息泄露_第9张图片

使用burp suit抓包,在HTTP请求方式GET/后添加两个负载,一个用于爆破文件名,一个用于爆破后缀名
CTFHUB-WEB-信息泄露_第10张图片

第一个负载为文件名,添加可能的文件名
CTFHUB-WEB-信息泄露_第11张图片

第二个负载为后缀名,添加常见后缀名。开始爆破
CTFHUB-WEB-信息泄露_第12张图片

爆破出WWW.zip文件。
CTFHUB-WEB-信息泄露_第13张图片

既然是备份文件,那这个文件在网站上是存在的,那就访问就可以了。下载打开有3个文件
在这里插入图片描述

打开flag_*文件里面并没有flag。另外两个文件直接打开也没有flag
在这里插入图片描述

换个方式,在网页上直接用文件路径访问这几个文件,就得到了flag
在这里插入图片描述

Dirsearch目录爆破工具

在kali中安装使用(在网上下载好包之后直接解压,复制整个包到kali中)
CTFHUB-WEB-信息泄露_第14张图片

查看dirsearch.py的权限(我这里权限是够的,不用修改权限)
在这里插入图片描述

dirsearch需要python3,kail中是自带的
进入dirsearch目录后
执行./dirsearch.py -u 网址 -e php

-u 指定url
-e 指定网站语言
-w 可以加上自己的字典(带上路径)
-r 递归跑(查到一个目录后,在目录后在重复跑,很慢,不建议用)
--random-agents 使用代理(使用的代理目录在uesr-agents.txt中,可以自己添加)

本题使用工具目录遍历如下:
命令:python3 dirsearch.py -u http://challenge-91f1f5e6a791ab02.sandbox.ctfhub.com:10080/ -e *
遍历完成后,目标路径状态码和其它的不一样,为200.得到相应的路径后就可以访问备份文件了。其它步骤跟上面相同。
CTFHUB-WEB-信息泄露_第15张图片

备份文件下载-bak文件

题目:
CTFHUB-WEB-信息泄露_第16张图片

靶机环境:
在这里插入图片描述

根据提示,flag目录在index.php文件下,在路径后输入index.php后没有反应
CTFHUB-WEB-信息泄露_第17张图片

想到题目提示是bak文件,在index.php后再加上后缀.bak
在这里插入图片描述

就可以下载一个该文件,打开里面就是flag
CTFHUB-WEB-信息泄露_第18张图片

或者:
使用dirsearch工具,进行目录遍历扫描,得到有用的文件路径,进行访问下载
在这里插入图片描述
在这里插入图片描述

备份文件下载-vim缓存

题目:
CTFHUB-WEB-信息泄露_第19张图片

靶机环境:
CTFHUB-WEB-信息泄露_第20张图片

使用dirsearch工具,进行目录遍历,得到vim缓存的路径

在这里插入图片描述
在这里插入图片描述

在使用vim时会创建临时缓存文件,关闭vim时缓存文件则会被删除,当vim异常退出后,因为未处理缓存文件,导致可以通过缓存文件恢复原始文件内容
以 index.php 为例:第一次产生的交换文件名为 .index.php.swp
再次意外退出后,将会产生名为 .index.php.swo 的交换文件
第三次产生的交换文件则为 .index.php.swn
在页面后输入index.php.swp显示无效链接
CTFHUB-WEB-信息泄露_第21张图片

需要在前面多加一个点. index.php.swp。swp这类隐藏文件在调用时前面要加一个.
访问即可下载该文件。
CTFHUB-WEB-信息泄露_第22张图片

因为是vim文件,所以把该文件复制到kali中
使用vim –r命令可以查看当前目录下的所有swp文件
使用vim –r index.php.swp就可恢复出原文件,这样上次意外退出没有保存的修改,就会覆盖文件。
在这里插入图片描述
CTFHUB-WEB-信息泄露_第23张图片
CTFHUB-WEB-信息泄露_第24张图片

或者,直接使用curl命令查看页面信息,也可以得到flag

curl http://challenge-c11057ca9f308893.sandbox.ctfhub.com:10080/.index.php.swp

原因:利用curl访问即可直接看到flag,因为vim使用的缓存存储为一种固定格式的二进制文件。而我们一般编辑的是明文可见字符,在vim的缓存中这些可见字符会原样保留

备份文件下载-.DS_Store

题目:
CTFHUB-WEB-信息泄露_第25张图片

靶机环境:
CTFHUB-WEB-信息泄露_第26张图片
使用dirsearch进行目录遍历查找文件
在这里插入图片描述
在这里插入图片描述

使用浏览器访问该文件,下载。使用notepad++打开后发现是乱码
CTFHUB-WEB-信息泄露_第27张图片

将文件复制到kali中,使用linux打开文件

Cat .DS_Store

在这里插入图片描述

发现文件中有一串字符,神似文件名。使用浏览器打开试试,发现flag就在里面
在这里插入图片描述

SVN泄露

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

靶机环境:
在这里插入图片描述

工具:dvcs-ripper信息泄露利用工具

一款perl的版本控制软件信息泄露利用工具,支持SVN, GIT, Mercurial/hg, bzr…
工具链接:https://github.com/kost/dvcs-ripper
下载好解压,复制到kali中。
命令./rip-svn.pl -v -u http://challenge-57d43bbc3b3c2347.sandbox.ctfhub.com:10080/.svn/恢复SVN文件
然后进入.svn文件夹下,一步步查看文件,找到我们想要的文件夹
CTFHUB-WEB-信息泄露_第29张图片
CTFHUB-WEB-信息泄露_第30张图片

最终找到了flag
CTFHUB-WEB-信息泄露_第31张图片

Git泄露

Git泄露-Log

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

靶机环境:
在这里插入图片描述

在kali中,使用dirsearch工具扫描url,发现url低下存在敏感文件.git
CTFHUB-WEB-信息泄露_第33张图片
CTFHUB-WEB-信息泄露_第34张图片

GitHack:.git泄露利用工具,可还原历史版本

使用GitHack进行文件恢复【这里需要将扫描到的.git加在url后面】,然后在GitHack所在目录下的dist目录下得到恢复的文件

python2 GitHack.py <url>  (url格式:http(s)://xxx/.git)

CTFHUB-WEB-信息泄露_第35张图片

进入dist目录中的刚恢复的文件内打开git,读取git日志,发现:

git log  //查看日志

CTFHUB-WEB-信息泄露_第36张图片

回退到“add flag”的那个版本,即可查看flag
CTFHUB-WEB-信息泄露_第37张图片

Git泄露-stash

CTFHUB-WEB-信息泄露_第38张图片

靶机环境:
在这里插入图片描述

dirsearch扫描发现.git文件(找到思路),GitHack恢复到本地dist目录下,进入恢复的目录下打开git操作
在这里插入图片描述
CTFHUB-WEB-信息泄露_第39张图片
CTFHUB-WEB-信息泄露_第40张图片

查看log:
CTFHUB-WEB-信息泄露_第41张图片

直接回到add flag的版本查看,发现没有flag
CTFHUB-WEB-信息泄露_第42张图片

这里可以使用Stash栈pop出flag
CTFHUB-WEB-信息泄露_第43张图片

Git泄露-index

CTFHUB-WEB-信息泄露_第44张图片

靶机环境:
在这里插入图片描述

如法炮制,dirsearch目录扫描,GitHack恢复到本地,git读取flag
在这里插入图片描述
CTFHUB-WEB-信息泄露_第45张图片
在这里插入图片描述
CTFHUB-WEB-信息泄露_第46张图片
在这里插入图片描述

HG泄露

当开发人员使用 Mercurial 进行版本控制,对站点自动部署。如果配置不当,可能会将.hg 文件夹直接部署到线上环境。这就引起了 hg 泄露漏洞。
CTFHUB-WEB-信息泄露_第47张图片
靶机环境:
CTFHUB-WEB-信息泄露_第48张图片
使用dvcs-ripper工具进行处理:

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

在这里插入图片描述
进入.hg文件夹,查看文件,一步步找flag文件
CTFHUB-WEB-信息泄露_第49张图片
查看fncache文件信息,出现文件目录信息。查看data文件,没有发现flag
CTFHUB-WEB-信息泄露_第50张图片
根据页面提示,可以尝试手工查看。得到flag
在这里插入图片描述

你可能感兴趣的:(CTF,linux,安全)