(Server-side Request Forgery,服务器请求伪造)漏洞,是一种攻击者构造请求,是一种攻击者发起的伪造由服务器发起请求的一种攻击。
SSRF危害
* 端口扫描
* 利用file文件协议 读取本地文件
* 内网web 应用指纹识别
* 攻击内网web
端口扫描和读取文件的危害会在等下练习的时候体现出来;
漏洞发现:
其中对外发起网络请求的地方都可能存在SSRF漏洞,列举图片加载下载,分享页面等等;
看到了存在url类型的参数的话,就可以尝试是否存在SSRF漏洞;
做两个实验来加深理解SSRF:
";
}
else
{
echo "Inaccessible
";
}
}
}
?>
然后利用远程包含文件漏洞执行端口扫描脚本,这里已经给出类似于远程文件http://192.168.191.6/evil/ssrf-1.txt
我这里被攻击机是192.168.191.6,攻击机就是我的windows;
访问网站进入:
点击go之后会发现url变成:http://192.168.191.6/bWAPP/rlfi.php?language=lang_en.php&action=go
明显是文件包含漏洞,利用这个漏洞结合SSRF我们可以通过构造端口扫描脚本使服务器发起请求从而达到攻击的目的;
这里有两种不同的方式,可以抓包通过get请求方式添加参数ipforward;
也可以利用火狐浏览器的插件hackbar,因为hackbar现在要收费我这里用的是Max hackbar;
如图,构造get请求方式foward攻击成功;
如图利用火狐的插件也可以达到上述效果;
点击第二关,会给我们ssrf-2.txt的文件,根据文件内容
#Accesses a file on the internal network (1)
<!DOCTYPE root [
]>
&bWAPP;blah
#Accesses a file on the internal network (2)
#Web pages returns some characters that break the XML schema > use the PHP base64 encoder filter to return an XML schema friendly version of the page!
<!DOCTYPE root [
]>
&bWAPP;blah
看到代码我们应该就能想到这里应该是利用XML攻击结合SSRF读取被攻击机的文件:
进入XXE漏洞界面点击Any bugs进行抓包:
发送到repeater模块
发现有xml文件将xml文件修改为ssrf-2.txt第一个发送:
发现四项是不能访问的;
但是我们可以通过这个漏洞获取其中的内容,获取/bWAPP/passwords/heroes.xml中的经过base64编码的数据。
解码:
进而得到内部网络资源(其中利用到了php协议以及file协议);
唉也才了解那么一点点知识好想大佬带我。