目录
环境搭建
环境:Ubuntu+Nginx+php
代码
<?php
highlight_file(__FILE__);
$url = $_GET['url'];
$curl = curl_init($url);
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($curl, CURLOPT_HEADER, 0);
$responseText = curl_exec($curl);
echo $responseText;
curl_close($curl);
?>
开始测试
?url=http://www.baidu.com
到这里我们发现可以成功返回百度页面,接下来可以利用ssrf漏洞可以使用的协议dict,file,gopher等,那我们就可以先利用file协议查看etc/passwd
但是我们查看/etc/shadow就不可,因为我们的权限不够,那我们使用dict协议看看服务器本地开启了哪些端口,经过测试,发现没有明显的反馈,
看一下页面返回值,
这里利用了Nginx中间件,那么我们就有理由认为他这里有php-fpm,也有理由认为使用了9000端口。那我们接下来利用gopher协议去伪造请求了,这里我使用了gopherus工具生成exp。
因为我们是get传参,那我们就需要进行url code编码后才可以,
进行url code 编码
查看
这里就完成了