SSRF
原理
SSRF服务器端请求伪造,由攻击者构造请求,并由服务端来发起请求的安全漏洞,因为请求是服务端发起的,所以服务端能够请求到与自身相连而与外网隔离的内部系统,成因是因为服务端提供了从其他服务器应用获取数据的功能但没有对目标地址做过滤和限制
常见攻击目标
图片加载与下载功能
本地处理功能
各类辅助功能
图片、文章收藏功能等
主要攻击方式
端口扫描,获取banner信息(banner信息中可以得到软件开发商,软件名称、版本、服务类型等信息)
攻击运行在内网或者本地的应用程序
对内网Web引用进行指纹识别,识别企业内部的资产信息
攻击内外网的Web应用,主要是使用HTTP GET请求就能实现的攻击
利用file协议读取本地文件
例如,某网站的一个代码是这样写的
<?php
function curl($url)
{
// 创建一个新cURL资源
$ch = curl_init();
// 设置URL和相应的选项
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
// 抓取URL并把它传递给浏览器
curl_exec($ch);
// 关闭cURL资源,并且释放系统资源
curl_close($ch);
}
$url = $_GET['url']; //以get方式获取url的值
curl=($url); //将url的值代入函数curl中执行
?>
探测是否存在mysql服务www.test1.com/ssrf.php?url=192.168.226.100:3306
或者类似于http://example.com:8080/dir/images/
获取内网资源www.test1.com/ssrf.php?url=file:///C:/Windows/win.ini
另外,一篇不错的参考文章地址
评论已关闭