SSRF漏洞
SSRF,Server-Side Request Forgery,服务端请求伪造,是一种由攻击者构造形成由 服务器端发起请求的一个漏洞。一般情况下,SSRF 攻击的目标是从外网无法访问 的内部系统。 漏洞形成的原因大多是因为服务端提供了从其他服务器应用获取数据的功能且没 有对目标地址作过滤和限制。
攻击途径
攻击者可以利用 SSRF 实现的攻击主要有 5 种:
1.可以对外网、服务器所在内网、本地进行端口扫描,获取一些服务的 banner 信息
2.攻击运行在内网或本地的应用程序(比如溢出)
3.对内网 WEB 应用进行指纹识别,通过访问默认文件实现
4.攻击内外网的 web 应用,主要是使用 GET 参数就可以实现的攻击(比如 Struts2, sqli 等)
5.利用 file 协议读取本地文件等
SSRF常见场景
常见套路使用SSRF攻击REDIS
能够对外发起网络请求的地方,就可能存在 SSRF 漏洞
从远程服务器请求资源(Upload from URL,Import & Export RSS Feed)
数据库内置功能(Oracle、MongoDB、MSSQL、Postgres、CouchDB)
Webmail 收取其他邮箱邮件(POP3、IMAP、SMTP)
文件处理、编码处理、属性信息处理(ffmpeg、ImageMagic、DOCX、PDF、XML)
高危函数:
file_get_contents()
fsockopen()
cur