- ssrf漏洞介绍
Server-Side Request Forgery:服务器端请求伪造 由于服务端提供了,从其他服务器应用获取数据的功能而没有对目标地址做过滤和限制,服务端请求伪造,利用存在缺陷的WEB应用作为代理攻击远程和本地的服务器。 - ssrf 漏洞常见功能点
社交分享功能:获取超链接的标题等内容进行显示 转码服务:通过URL地址把原地址的网页内容调优使其适合手机屏幕浏览 在线翻译:给网址翻译对应网页的内容 图片加载/下载:例如富文本编辑器中的点击下载图片到本地、通过URL地址加载或下载图片 图片/文章收藏功能:主要其会取URL地址中title以及文本的内容作为显示以求一个好的用具体验 云服务厂商:它会远程执行一些命令来判断网站是否存活等,所以如果可以捕获相应的信息,就可以进行ssrf测试 网站采集,网站抓取的地方:一些网站会针对你输入的url进行一些信息采集工作 数据库内置功能:数据库的比如mongodb的copyDatabase函数 邮件系统:比如接收邮件服务器地址 编码处理、属性信息处理,文件处理:比如ffpmg,ImageMagick,docx,pdf,xml处理器等 未公开的api实现以及其他扩展调用URL的功能:可以利用google语法加上这些关键字去寻找SSRF漏洞。一些的url中的关键字有:share、wap、url、link、src、source、target、u、3g、display、sourceURl、imageURL、domain…… 从远程服务器请求资源 - 常出现漏洞的参数名
share wap url link src source target u 3g display sourceURL imageURL domain 4.ssrf漏洞用途 内外网的端口和服务扫描 主机本地敏感数据的读取 内外网主机应用程序漏洞的利用 内外网web站点漏洞的利用 - ssrf 常见函数
(1)file_get_contents() 函数是用来将文件的内容读入到一个字符串中的首选方法。
<?php
$url = $_GET['url'];;
echo file_get_contents($url);
?>
(2)fsockopen() 函数打开一个网络连接或者一个Unix套接字连接
<?php`在这里插入代码片`
$host=$_GET['url'];
$fp = fsockopen($host, 80, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)<br />\n";
} else {
$out = "GET / HTTP/1.1\r\n";
$out .= "Host: $host\r\n";
$out .= "Connection: Close\r\n\r\n";
fwrite($fp, $out);
while (!feof($fp)) {
echo fgets($fp, 128);
}
fclose($fp);
}
?>
(3)curl_exec() 执行一个 curl 会话
<?php
if (isset($_GET['url'])){
$link = $_GET['url'];
$curlobj = curl_init();
curl_setopt($curlobj, CURLOPT_POST, 0);
curl_setopt($curlobj,CURLOPT_URL,$link);
curl_setopt($curlobj, CURLOPT_RETURNTRANSFER, 1);
$result=curl_exec($curlobj);
curl_close($curlobj);
echo $result;
}
?>
(4)SoapClient() 类为SOAP 1.1,SOAP 1.2服务器提供客户端。它可以在 WSDL 或非 WSDL 模式下使用。
<?php
$a = new SoapClient(null,array('uri'=>'http://47.xxx.xxx.72:2333', 'location'=>'http://47.xxx.xxx.72:2333/aaa'));
$b = serialize($a);
echo $b;
$c = unserialize($b);
$c->a();
?>
6.ssrf测试代码:
<?php
function curl($url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
}
$url = $_GET['url'];
curl($url);
?>
|