SSRF——介绍利用(不全)

1. SSRF介绍

SSRF(Server-side Request Forge, 服务端请求伪造)。
由攻击者构造的攻击链接传给服务端执行造成的漏洞,一般用来在外网探测或攻击内网服务。

2. SSRF的危害

1. 扫内网
2.  向内部任意主机的任意端口发送精心构造的Payload
3.  DOS攻击(请求大文件,始终保持连接Keep-Alive Always)
4.  攻击内网的web应用,主要是使用GET参数就可以实现的攻击(比如			struts2,sqli等)
5.  利用file协议读取本地文件等

3.容易出现SSRF的地方

  1. 转码服务
  2. 在线翻译
  3. 图片加载与下载(通过URL地址加载或下载图片)
  4. 图片、文章收藏功能
  5. 网站采集、网页抓取的地方。
  6. 头像的地方。(远程加载头像)
  7. 一切要你输入网址的地方和可以输入ip的地方。
  8. 从URL关键字中寻找: sharewapurllinksrcsourcetargetu3gdisplaysourceURlimageURLdomain

4. SSRF漏洞相关函数和协议

  1. 函数
    file_get_contents()fsockopen()curl_exec()fopen()readfile()等函数使用不当会造成SSRF漏洞

  2. 协议
    (1) file: 在有回显的情况下,利用 file 协议可以读取任意内容
    (2) dict:泄露安装软件版本信息,查看端口,操作内网redis服务等
    (3) gopher:gopher支持发出GET、POST请求:可以先截获get请求包和post请求包,再构造成符合gopher协议的请求。gopher协议是ssrf利用中一个最强大的协议(俗称万能协议)。可用于反弹shell
    (4) http/s:探测内网主机存活

5. 本题解法

思路

(1) 已知目标服务器可以访问我们输入进去的url。没有任何过滤
(2) 首先探测目标主机开放了哪些端口

最简单的方法:http://127.0.0.1:端口
利用__dict__协议 
利用dnslog解析成localhost,从而可以访问localhost
实践

(1) burp抓包爆破地址

(2)结果

(3)得到flag

posted @ 2021-01-22 14:44  Throokie  阅读(99)  评论(0编辑  收藏  举报