SSRF(服务端请求伪造)漏洞

漏洞原理:

SSRF服务器的请求伪造漏洞,一种由攻击者构造形成由服务器发起请求的漏洞。

漏洞原因:

服务器提供从其他服务器获取数据的功能,且没有对目标地址做出过滤和限制。比如:指定URL获取网页的内容,指定的下载,等等

漏洞源码:

$url=@$_GET['url'];

$ch=curl_init();//初始化会话

curl_setopt($ch,CURLOPT_URL,$url);

curl_setopt($ch, CURLOPT_HEADER, 0);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);

$res=curl_exec($ch);//执行会话

curl_close($ch);

echo $res;

?>

进行访问请求

SSRF(服务端请求伪造)漏洞_第1张图片
访问百度

这是一个正常的流程,经常用来访问链接、图片等,同样可以进行漏洞利用

漏洞利用

多用于探测内网各系统的弱口令,进行内网漫游

收集内网web应用的指纹识别1,如开放的端口,中间件的版本信息

file

利用file协议,可以请求读取本地任意文件

SSRF(服务端请求伪造)漏洞_第2张图片
探测版本信息

当请求为http://192.168.15.108:端口

通过任意指定端口,判断端口是否开放

若迅速返回则端口开放,如443

若长时间访问后没有结果则端口关闭,如444

还有更多的利用方式,参考

http://www.freebuf.com/column/157466.html

判断是否为SSRF漏洞

通过抓包进行判断

SSRF(服务端请求伪造)漏洞_第3张图片

可以看出是服务器发出的请求,而不是百度服务器发出的请求,可以判断为SSRF漏洞

你可能感兴趣的:(SSRF(服务端请求伪造)漏洞)