铭说关于SSRF和多种绕过方式

一、SSRF是什么?

SSRF(Server-SideRequestForgery,服务器端请求伪造),漏洞形成的原因主要是服务器端所提供的接口中包含了所要请求内容的URL参数,并且未对客户端所传输过来的URL参数进行过滤,导致攻击者可以传入任意的地址来让后端服务器对其发起请求,并返回对该目标地址请求的数据。因此存在SSRF漏洞的服务器通常被作为跳板机来取得外网或内网其它应用服务器的信息。

图1SSRF的利用流程

二、SSRF的危害

主要攻击类型:

钓鱼。

对外网、服务器所在内网、本地进行端口、资产发现。

读取本地文件。

配合其它漏洞攻击内网其它机器。

举个例子

如下图以骗取用户在线转账作为一个比较经典的利用SSRF攻击流程,可以主要分为以下四个步骤:

(1)攻击者伪造了一个资金转帐网站的请求。

(2)将其嵌入到用户经常访问,存在SSRF漏洞的站点中。

(3)当访问者登录该网站并单击犯罪者创建的钓鱼链接时,它最终将重定向到犯罪者的网站。

(4)受害者在并将金额转移到攻击者指定的帐户中。

由于利用SSRF后的钓鱼链接伪造程度较高,以URL前部分与正常域名一致,所以对安全知识了解不多的用户是极其容易受此类漏洞制作的钓鱼网站的攻击。

图2利用SSRF的攻击

这里我们以‘PIKACHU’渗透测试环境来举例,演示一下攻击者是如何利用SSRF漏洞来获取到服务器内网其它主机资源的。

假设网站维护人员使用PHP函数不当(使用了危险函数:file_get_contents()、fsockopen()、curl_exec()),导致在站点目录pikachu/pikachu/vul/ssrf/ssrf_curl.php存在SSRF漏洞利用。

图3“PIKACHU”SSRF实验

发现参数以URL的格式调用了本地的其它资源,可以尝试调用同一网段下其它服务器的资源。

如图,利用SSRF成功查询了同网段主机下端口的资源,导致了内部的数据暴露。

图4访问内部数据

在通常情况下,对SSRF的防御措施是对URL特征参数进行检测和过滤、设置可访问URL白名单或使用户无法控制URL的参数,一但过滤的措施不够严密,就会存在多种Bypass方式。

三、绕过姿势大全

1.“

”符号绕过




转载请注明:http://www.xxcyfilter.com/zyyq/zyyq/16765.html

  • 上一篇文章:
  •   
  • 下一篇文章: 没有了