一、SSRF简介
SSRF(Server-Side Request Forgery:服务器端请求伪造) 是一种由攻击者构造形成由服务端发起请求的一个安全漏洞。一般情况下,SSRF是要目标网站的内部系统。(因为他是从内部系统访问的,所有可以通过它攻击外网无法访问的内部系统,也就是把目标网站当中间人)
二、SSRF形成的原因
SSRF 形成的原因大都是由于服务端提供了从其他服务器应用==获取数据==的功能,且没有对目标地址做==过滤与限制==。比如从指定URL地址获取网页文本内容,加载指定地址的图片,文档,等等。

首先,我们要对目标网站的架构了解,脑子了要有一个架构图。比如 : A网站,是一个所有人都可以访问的外网网站,B网站是一个他们内部的OA网站,我们普通用户只可以访问a网站,不能访问b网站。但是我们可以同过a网站做中间人,访问b网站,从而达到攻击b网站需求
比如,一个服务器端应用在接收用户输入的URL等信息后,在服务器端发起请求。如果没有对这个输入进行严格过滤,攻击者就可以利用这个功能让服务器向内部的其他服务或者外部恶意站点发起请求。
举例来说,有一个图片加载功能,正常情况下是从指定的图片服务器获取图片。但如果存在SSRF漏洞,攻击者可以通过修改URL参数,让服务器去访问内部的数据库服务器或者其他敏感服务,可能会导致敏感信息泄露,甚至在一定条件下可以进行攻击其他服务,影响整个系统的安全。
三、SSRF用途:
攻击者利用ssrf可以实现的攻击主要有5种::
1.可以对外网、服务器所在内网、本地进行端口扫描,获取一些服务的banner信息;
2.攻击运行在内网或本地的应用程序(比如溢出);
3.对内网web应用进行指纹识别,通过访问默认文件实现;
4.攻击内外网的web应用,主要是使用get参数就可以实现的攻击(比如struts2,sqli等);
5.利用file协议读取本地文件等。