SSRF

SSRF

    SSRF(Server-Side Request Forgery:服务请求伪造)是一种由攻击者构造,从而让服务端发起请求的一种安全漏洞,
它将一个可以发起网络请求的服务当作跳板来攻击其他服务,SSRF的攻击目标一般是内网。  
    当服务端提供了从其他服务器获取数据的功能(如:从指定URL地址获取网页文本内容、加载指定地址的图片、下载等),
但是没有对目标地址做过滤与限制时就会出现SSRF。

SSRF的危害

可以扫描内部网络
可以构造数据攻击内部主机

漏洞挖掘

其实只要能对外发起网络请求就有可能存在SSRF漏洞。

1. 从WEB功能上寻找
    通过URL分享内容
    文件处理、编码处理、转码等服务
    在线翻译
    通过URL地址加载与下载图片
    图片、文章的收藏
    设置邮件接收服务器
2. 从URL关键字寻找
    share、wap、url、link、src、source、target、u、3g、
    display、sourceURl、imageURL、domain...

漏洞验证

http://www.douban.com/***/service?image=http://www.baidu.com/img/bd_logo1.png
1. 右键在新窗口打开图片,若浏览器上URL地址为http://www.baidu.com/img/bd_logo1.png,
    说明不存在SSRF漏洞。  
2. firebug看网络连接信息,若没有http://www.baidu.com/img/bd_logo1.png
    这个图片请求,则证明图片是豆瓣服务端发起的请求,则可能存在SSRF漏洞。

绕过过滤

有时漏洞利用时会遇到IP限制,可用如下方法绕过:

* 使用@:http://A.com@10.10.10.10 = 10.10.10.10
* IP地址转换成十进制、八进制:127.0.0.1 = 2130706433
* 使用短地址:http://10.10.116.11 = http://t.cn/RwbLKDx
* 端口绕过:ip后面加一个端口
* xip.io:10.0.0.1.xip.io = 10.0.0.1
        www.10.0.0.1.xip.io = 10.0.0.1
        mysite.10.0.0.1.xip.io = 10.0.0.1
        foo.bar.10.0.0.1.xip.io = 10.0.0.1
* 通过js跳转

通用的SSRF实例

* weblogin配置不当,天生ssrf漏洞
* discuz x2.5/x3.0/x3.1/x3.2 ssrf漏洞
* CVE-2016-1897/8 - FFMpeg
* CVE-2016-3718 - ImageMagick

推荐阅读更多精彩内容

  • 0x00原理 一般的请求:客户端发起请求,服务器响应。 另外一种请求:客户端发起请求(向服务端提供一个URL),服...
    0x525c阅读 1,045评论 0 1
  • (Server-Side Request Forgery,服务器端请求伪造):通俗的来说就是我们可以伪造服务器端发...
    傻傻笨笨宝宝阅读 6,483评论 0 5
  • 米斯特白帽培训讲义 漏洞篇 SSRF 讲师:gh0stkey 整理:飞龙 协议:CC BY-NC-SA 4.0 很...
    布客飞龙阅读 633评论 0 8
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 87,724评论 13 122
  • 什么是csrf csrf通常缩写为CSRF或者XSRF,是一种对网站的恶意利用。尽管听起来像跨站脚本(XSS),但...
    青山i阅读 2,323评论 0 4