SSRF
SSRF
- CSRF => 客户端请求伪造(跨站请求伪造)
利用 Js 代码让浏览器发送数据 - SSRF => 服务端请求伪造
让服务器帮我们发送数据 
- 探测内网
内网:局域网
防御:外紧内松 - 做攻击跳板(攻击A网站)
 - 探测自己(本地其他网站)
端口服务:
防火墙(防外不防内:127.0.0.1) 
SSRF不属于漏洞,它是一种功能
比如翻译软件,给它一个域名,他会去访问该域名,再翻译该网页

判断ssrf
<?php
	$URL = $_GET['url'];
	$CH = CURL_INIT();
	CURL_SETOPT($CH, CURLOPT_URL, $URL);
	CURL_SETOPT($CH, CURLOPT_HEADER, FALSE);
	CURL_SETOPT($CH, CURLOPT_RETURNTRANSFER, TRUE);
	CURL_SETOPT($CH, CURLOPT_SSL_VERIFYPEER, FALSE);
	CURL_SETOPT($CH, CURLOPT_FOLLOWLOCATION, TRUE);
	$RES = CURL_EXEC($CH);
	CURL_CLOSE($CH);
	echo $RES;
?>
http://127.0.0.1/ssrf/?url=https://www.baidu.com

当本地直接访问与通过该网页访问得到的页面不一致时,存在ssrf
dict:// 协议探测端口(字典协议)

file:// 协议读取文件
(可以搜索敏感目录)
能访问外网的站应该存在ssrf;若传参中包含协议头或者是文件的时候,非常可能存在ssrf
- a=http://
 - a=123.php(文件读取、文件下载、文件包含、ssrf)
 
小技巧:
- 加@,之访问@之后的内容:
https://www.baidu.com@127.0.0.1 - 域名最终指向IP
 - 数字IP法
 
靶场

既然可以访问外网,可能存在ssrf,放问其端口
至81端口时发现flag

拓展
反弹shell:把目标的命令行反弹到你的服务器上
XSS  =>   偷Cookie (存储型)
CSRF  =>   利用 Cookie  (看不到 Cookie,诱骗,构建特殊 Js)
SSRF  =>  让服务器去访问XXX   (杀入内网、攻击本机)

                
            
        
浙公网安备 33010602011771号