SSRF漏洞分析 1基础

SSRF漏洞分析 1基础

四月 15, 2019 阅读 253 字数 896 评论 0 喜欢 0

名称:SSRF (Server-Side Request Forgery:服务器端请求伪造)

形成原因:

服务端提供了从其他服务器应用获取数据的功能且没有对目标地址做过滤与限制。一般情况下,SSRF攻击的目标是从外网无法访问的内部系统。

SSRF 形成的原因大都是由于服务端提供了从其他服务器应用获取数据的功能且没有对目标地址做过滤与限制。比如从指定URL地址获取网页文本内容,加载指定地址的图片,下载等等。

利用手段:

  • 1. 可以对外网、内网、本地进行端口扫描,某些情况下端口的Banner会回显出来(比如3306的)
  • 攻击运行在内网或本地的有漏洞程序(比如溢出)
  • 可以对内网Web应用进行指纹识别,原理是通过请求默认的文件得到特定的指纹
  • 攻击内网或外网有漏洞的Web应用
  • 使用file:///协议读取本地文件

漏洞出现点

1)分享:通过URL地址分享网页内容

2)转码服务

3)在线翻译

4)图片加载与下载:通过URL地址加载或下载图片

5)图片、文章收藏功能

6)未公开的api实现以及其他调用URL的功能

7)从URL关键字中寻找


防御方法

  • 过滤返回信息,验证远程服务器对请求的响应是比较容易的方法。如果web应用是去获取某一种类型的文件。那么在把返回结果展示给用户之前先验证返回的信息是否符合标准。
  • 统一错误信息,避免用户可以根据错误信息来判断远端服务器的端口状态。
  • 限制请求的端口为http常用的端口,比如,80,443,8080,8090。
  • 黑名单内网ip。避免应用被用来获取获取内网数据,攻击内网。
  • 禁用不需要的协议。仅仅允许http和https请求。可以防止类似于file:///,gopher://,ftp:// 等引起的问题。

这里有个问题,对于内网如果成千上万的机器,如何做一个限定或过滤或者其他的解决手段?(阿里巴巴面试题)

绕过方法

1、使用@ // http://abc@127.0.0.1

2、添加端口号,比如 http://127.0.0.1:8080

3、短地址 http://dwz.cn/11SMa

4、可以指向任意ip的域名:xip.io

5、ip地址转换成进制来访问,比如 115.239.210.26 = 16373751032

发表评论

电子邮件地址不会被公开。 必填项已用*标注