浅谈SSRF

admin 2022年4月23日09:01:20评论105 views字数 2297阅读7分39秒阅读模式
浅谈SSRF
01

 什么是SSRF?


浅谈SSRF

SSRFServer-side Request Forge, 服务端请求伪造)是由攻击者构造形成由服务端发起请求的安全漏洞。一般 情况下,SSRF攻击的目标是从外网无法访问的内部系统。正是因为它是由服务端发起的,所以它能够请求到与它相连而与外网隔离的内部系统。


浅谈SSRF
02

查看是否存在SSRF漏洞

1.排除法:浏览器f12查看源代码看是否是在本地进行了请求

eg:该资源地址类型为 http://www.xxx.com/a.php?image=(地址)的就可能存在SSRF漏洞

2.Dnslog等工具进行测试,查看是否被访问

生成一个域名用于伪造请求,看漏洞服务器是否发起 DNS 解析请求,若成功访问在 http://DNSLog.cn 上就会有解析日志。

3.抓包分析发送的请求是不是由服务器的发送的,如果不是客户端发出的请求,则有可能是,接着找存在HTTP服务的内网地址.

a、在平台的历史漏洞寻找泄漏的存在web应用内网地址

b、通过二级域名暴力破解工具模糊猜测内网地址

4. 访问日志检查:伪造请求到自己控制的公网服务器,然后在服务器上查看访问日志是否有来自漏洞服务器的请求,或者直接使用命令“nc -lvp”来监听请求.


浅谈SSRF
03

存在SSRF的位置

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

  • 转码服务

  • 在线翻译

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

  • 图片、文章收藏功能

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

  • 从URL关键词中寻找


浅谈SSRF
04

常见的利用方式

1.获取敏感文件

提交参数:

http://ip/?url=www.baidu.com/robots.txt

2.端口扫描

a、设置参数URL为内网地址时,则会泄露内网信息,比如内网的某个服务是否开放

b、提交参数:?url=探测的ip:1234,1234为不存在端口,查看返回结果

3.读取系统本地文件

利用file协议可以任意读取系统本地文件,提交参数

http://ip/?url=file://c:windowssystem32driversetchosts

4.内网web应用指纹识别

web应用框架都有一些独特的文件目录,通过这些文件可以识别出应用的类型,甚至详细版本,据这些信息就可以针对性的搜集漏洞进行攻击

http://ip/?url=http://ip/phpmyadmin/README

6.SSRF结合XXE漏洞利用——端口探测

由于xml实体注入攻击可以利用http://协议,也就是可以发起http请求。可以利用该请求去探查内网,进行SSRF攻击,可以根据响应时间/长度判断端口是否开放

7.利用SSRF漏洞的gopher协议攻击Redis服务器

可以利用gopher协议进行攻击内网的redis、ftp等服务。

利用SSRF漏洞攻击Redis服务器的方式有以下几种:

1. 绝对路径写Webshell

2. 通过写SSH公钥到服务器用私钥连接,获取shell

3. 写contrab计划任务反弹shell  


浅谈SSRF
05

常见的绕过方式

1. 限制 http://www.aaa.com 域名

采用http基本身份认证的绕过方式,即使用@绕过。如:http://[email protected]

注意:在对@解析域名中,不同的处理函数存在处理差异。如:在PHP的parse_url中会识别www.ccc.com,而libcurl则识别为www.bbb.com

2.绕过IP限制

• 采取特殊域名,如:xip.io可以指向任意域名,即127.0.0.1.xip.io,可解析为127.0.0.1

• 采取进制转换。如:127.0.0.1 转换成十六进制 0x7f.0.0.1

• 多进制混合 IP,如 http://0177.0x0.0x0.1,相当于 127.0.0.1

3.绕过 URL 解析限制

• URL 欺骗方式,如

http://[email protected],http://evil$http://google.com,http://google.com#@http://evil.com……

• 302 跳转切换协议,如请求头注入"Location: dict://http://lagou.com"

• Unicode 转换,如

http://evil.c ℀.http://office.com

• 采取短网址绕过,站长工具短网址 http://tool.chinaz.com/tools/dwz.aspx 


浅谈SSRF
06

SSRF的危害

• 内网探测:端口扫描,web应用指纹识别,攻击web应用

• 读取本地文件

• 跳板攻击:借助存在 SSRF 漏洞的服务器对内或对外发起攻击,以隐藏自己真实 IP

拒绝服务攻击:请求超大文件,保持链接 Keep-Alive Always


浅谈SSRF
07

SSRF的防御和修复

• 限制请求的端口只能为web端口,只允许访问HTTP和HTTPS的请求

• 设置白名单,或限制内网IP,以防止对内网进行攻击

• 禁止30x跳转

• 屏蔽返回的详细信息    

• 禁用不需要的协议,仅仅允许http和https请求。可以防止类似于file://, gopher://, ftp:// 等引起的问题 

最后附带一张SSRF的漏洞导图

浅谈SSRF

往期精彩推荐
浅谈SSRF


记一次搭建靶场渗透过程(1)

记一次搭建靶场渗透过程(2)

记一次搭建靶场渗透过程(3)

浅谈SSRF

浅谈SSRF

           团队介绍

银河护卫队super,是一个致力于红队攻防实战、内网渗透、代码审计、安卓逆向、安全运维等技术干货分享的队伍,定期分享常用渗透工具、复现教程等资源。欢迎有想法、乐于分享的具备互联网分享精神的安全人士进行交流学习。
浅谈SSRF

点击关注银河护卫队super

原文始发于微信公众号(银河护卫队super):浅谈SSRF

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年4月23日09:01:20
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   浅谈SSRFhttps://cn-sec.com/archives/763548.html

发表评论

匿名网友 填写信息