Web题解1 ( CTFHUB ) - ctf

Web题解1 ( CTFHUB )

  • 请求方式

  1. 打开burpsuit,拦截GET请求, 将GET改成CTFHUB,Forword请求,返回flag。
  2. 改成CTFHUB原因:
  3. 另一种方法:curl -X CTFHUB -v xx.comxx
  • 302跳转

  1. 这题稍微有点奇怪,我的网址http://challenge-419fd51c51e50e13.sandbox.ctfhub.com:10800/index.html返回状态码是304,即客户端已经缓存了资源,但不确定资源是否是最新的。
  2. send to Repeater。
  3. 将if-Modified-Since和if-None-Match头部删掉,send
  4. 发现返回状态码为200,页面提示:资源在index.php中。
  5. 将地址从index.html改为index.php中,send。
  6. 返回的response中包含文本flg。
  • Cookie

  1. burpsuit拦截请求,将Cookie:admin=0

改成admin=1。

  1. send。

这题还是不能理解,为什么改admin值可以改变权限。服务器返回的是Set-Cookie:admin=0;那么客户端应该设置为0才能拿到数据啊。为什么是改成别的数值呢。

  • 基础认证

  1. burpsuite抓取response, 状态码401, 要求客户端进行认证。认证范围:在头部显示:WWW-Authenticate: Basic realm="Do u know admin ?”
  2. 联想到:客户名为admin
  3. 随意输入一个密码,forword
  4. 发现GET请求的头部有Authorization: Basic YWRtaW46MQ==
  5. 等号缀尾,明显是base64加密传输name:password
  6. send to intruder, add $(YWRtaW46MQ==), payload type 选择custom iterator, 分两个序列,第一个add(admin:)!!!小心,一定要加冒号!
  7. 第二个序列load密码.txt
  8. add encode,选择base64 encode
  9. 去最后一个勾
  10. 爆破。
  11. 选取200的网址,send to Repeater。
  • 响应包源代码

  1. 浏览器右键,检查,在元素那一栏就有flg。
  • 目录遍历

  1. 这题要注意:1/ 2/ 3/ 4/ 两两搭配有16种可能。
  2. 即遍历的含义。
  • PHPINFO

  1. 点击查看phpinfo.php
  2. 发现返回的页面文字太多了,ctrl + F 查看是否有{ ,匹配成功!
  • 网站源码

  1. 写一个Python程序,遍历所有组合。
import requests

def get_flg(name, index):
    url = "http://challenge-85be40614e4b91c6.sandbox.ctfhub.com:10800/"
    url = url + name + '.' + index
    response = requests.get(url)

    if response.status_code == 200:
        print("Successfully downloaded")
    else:
        print("Failed")

def main():
    indexs = ['tar', 'tar.gz', 'zip', 'rar']
    names = ['web', 'website', 'backup', 'back', 'www', 'wwwroot', 'temp']
    for name in names:
        for index in indexs:
            get_flg(name, index)
main()
  1. www.zip是可以ping通的。
  2. 在浏览器中打开网址,下载zip包,解压。
  3. 打开flg_2680396.txt文件,没找到flg。
  4. 猜测这个是路径。
  5. 浏览器打开http://…./flg_2680396.txt。
  • bak文件

  1. .bak文件:被备份的文件的复件
  2. 依据提示,在网址后面添加/index.php.bak
  • vim 缓存

  1. vim第一次意外退出时产生的缓存文件后缀为.index.php.swp (因为vim产生的缓存文件时隐藏文件。)
  2. 缀到网址后面,浏览器打开。
  3. 下载得到index.php.swp文件。
  4. 在linux环境中命令行:vim -r index.php.swp 回车。
  • .DS_Store

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

  1. 网址后缀/.DS_Store打开,下载到一个文件DS_Store。
  2. 用vim DS_Store打开,乱码。
  3. 用cat DS_Store打开,
$ cat DS_Store
Bud1
 ▒

DSDB@▒@ @ @$1d633fd2c8ec7adea237d61a794c70cb.txtnoteustr
flag here!

依据经验,网址后缀/1d633fd2c8ec7adea237d61a794c70cb.txt打开,即可得到flg。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值