SSRF漏洞

395 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

什么是SSRF漏洞

是一种由攻击者构造形成由服务端发起请求的一个安全漏洞。 一般情况下,SSRF攻击的目标是从外网无法访问的内部系统。

服务端的请求伪造

引起漏洞的方式

常见的是curl函数

另外还有file_get_contents()函数,这个函数是将整个文件读入一个字符串。

这都会有可能引起SSRF漏洞

除了上面的函数还有协议。

比如

file:查看文件

dict:探测端口

这个协议是用来搭建一个字典服务

gopher:反弹shell

这个协议是一种信息查找系统,只支持文本,不支持图像,已经被HTTP代替

危害

1.扫描资产

可以知道某个端口是否被打开着

2.获取敏感信息

访问磁盘上的文件

3.攻击内网服务

不需要经过防火墙

4.访问大文件,造成溢出

5.通过redis写入webshell或创建反弹连接

常见场景

只要有个网页或者服务器的代码,只要读取加载了其他地址的代码或内容,那么就会导致SSRF的漏洞。

1.社会化分享功能

2.转码服务

3.在线翻译

4.在线图片下载

5.图片、文章收藏功能

6.网站采集,网站抓取

怎么发现SSRF漏洞

第一步:爬取地址

第二步:查看是否请求了其他资源

也可以用Google语法搜索关键字

工具

github上面的一些工具

1.SSRF-Testing

2.Gopherus

3.SSRF-map

当然不只这些工具,大家也可以找一点其他的工具去运用。

之后我们可以去pikachu靶场去训练。

如何预防

1.我们要禁用一些协议,禁用端口

2.设置URL白名单

3.过滤返回信息

4.统一错误信息