SSRF
意思是服务器请求伪造漏洞
形式
攻击者构造请求,服务端发起请求的漏洞
目标
一般是外网无法访问的内部系统
为什么能访问内部?
请求是由服务端发起的,所以可以请求到与自身相连而与外部隔离的内部系统
漏洞原理
大多数是因为服务端提供了从其他服务器应用获取数据的功能,并且没有对目标地址进行过滤和限制。
攻击方式
- 对外网、服务器所在的内网、本地进行端口扫描,获取一些服务的banner信息
banner信息
表示欢迎语,包含一些敏感信息。也是信息搜集的范畴。可以获取到软件开发商、软件名称、服务类型、版本号等信息。有时候版本号可能会存在一些公开的CVE问题,可以直接利用。
- 攻击运行在内网或者本地的应用程序,如DOS攻击
- 对内网Web应用进行指纹识别,识别企业内部的资产信息
- 攻击内外网的Web应用,主要是使用HTTP GET请求就可以实现的攻击(比如struts2\SQli等)
- 利用file协议读取本地文件等。
漏洞利用
篡改请求地址
通过直接修改URL参数的值为另一个地址即可直接跳转
然后我们还可利用file来读取文件
通过dict来查看端口的开放情况
漏洞修复建议
- 限制请求的端口只能为Web端口,只允许访问HTTP和HTTPS的请求
- 限制不能访问内网的IP,以防止对内网进行攻击
- 屏蔽返回的详细信息