重生之我是赏金猎人(三)-SRC漏洞挖掘-强行多次FUZZ发现某厂商SSRF到redis密码喷洒批量反弹Shell

本文主要是介绍重生之我是赏金猎人(三)-SRC漏洞挖掘-强行多次FUZZ发现某厂商SSRF到redis密码喷洒批量反弹Shell,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

0x00 前言

https://github.com/J0o1ey/BountyHunterInChina

欢迎大佬们点个star

最近BugBounty挖了不少,但大多数都是有手就行的漏洞,需要动脑子的实属罕见

而今天就遇到了一个非常好的案例,故作此文

0x01 对目录批量FUZZ,发现一处隐蔽接口

挖某大厂已经挖了快两个周了,期间因为公司业务比较繁忙,最近一直没挖。

但是一直在用ffuf挂着字典对厂商资产进行批量目录扫描,今天上服务器看了下扫描结果,就出货了

image-20211224185734645

接口地址为:https://xxx.xxxx.com/xxxx/start

我们直接对其进行访问

image-20211224190001535

发现该接口给我们提供了一些可以使用的接口链接

我们逐个测试拼接接口后,发现一个名为face_xxxx的接口有戏

0x02 FUZZ传参格式+参数

访问接口,提示Method Not Allow,405错误,那么很显然,我们得换POST传参

image-20211224190757303

POST随便传个参过去,发现接口提示"Request error, content-type was unsupported"

image-20211224191101242

很好,继续FUZZ content-type header(记得把payload_processing自动编码给关掉)

image-20211224192131756

FUZZ出来application/json的content-type头可用,那么很简单了,构造JSON数据,继续FUZZ JSON数据参数

image-20211224192458939

0x03 SSRF无脑到手

参数为image_url,稍有经验的朋友就可以借此判断出,很可能这个参数是加载远程图片的

直接进行SSRF测试

image-20211224193009475

服务器收到了请求,经测试gopher,dict,http等常规协议都可以使用~

之前收集了不少该厂商内网redis的ip和密码,也了解到该厂商的内网网段

尝试利用本处SSRF完全可以批量对内网Redis进行密码喷洒+反弹shell对边界进行突破

0x04 利用gopher协议对内网脆弱网段批量Redis密码喷洒反弹Shell

普及一个知识:与未授权直接访问的redis不同,加入密码认证的redis在命令行链接时会多一个-a参数指定密码

如图所示如果不传参密码,则无法执行任何redis指令
image

而加入密码认证后redis,在整个RESQ协议流量中表现如下
image

认证过程中会多一个Auth

写脚本来构造gopher数据,注意把这块Auth加上,后续常规操作写计划任务反弹SHELL

image

利用上面挖掘到的SSRF点,配合之前自己收集到的内网redis密码和脆弱网段

直接通过intruder批量跑内网的脆弱网段redis,进行密码喷洒,喷洒一但成功,则会写入计划任务

image

最终功夫不负有心人,在一个网段,弹回来了十几个Shell。。。

厂商的内网Redis主机还能出网,属实是内网安全做的稀烂了。

image

0x04 后言

这个洞是在平安夜挖到的~算是圣诞贺礼啦

这篇关于重生之我是赏金猎人(三)-SRC漏洞挖掘-强行多次FUZZ发现某厂商SSRF到redis密码喷洒批量反弹Shell的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/740009

相关文章

Redis 基本数据类型和使用详解

《Redis基本数据类型和使用详解》String是Redis最基本的数据类型,一个键对应一个值,它的功能十分强大,可以存储字符串、整数、浮点数等多种数据格式,本文给大家介绍Redis基本数据类型和... 目录一、Redis 入门介绍二、Redis 的五大基本数据类型2.1 String 类型2.2 Hash

Redis中Hash从使用过程到原理说明

《Redis中Hash从使用过程到原理说明》RedisHash结构用于存储字段-值对,适合对象数据,支持HSET、HGET等命令,采用ziplist或hashtable编码,通过渐进式rehash优化... 目录一、开篇:Hash就像超市的货架二、Hash的基本使用1. 常用命令示例2. Java操作示例三

Redis中Set结构使用过程与原理说明

《Redis中Set结构使用过程与原理说明》本文解析了RedisSet数据结构,涵盖其基本操作(如添加、查找)、集合运算(交并差)、底层实现(intset与hashtable自动切换机制)、典型应用场... 目录开篇:从购物车到Redis Set一、Redis Set的基本操作1.1 编程常用命令1.2 集

Redis中的有序集合zset从使用到原理分析

《Redis中的有序集合zset从使用到原理分析》Redis有序集合(zset)是字符串与分值的有序映射,通过跳跃表和哈希表结合实现高效有序性管理,适用于排行榜、延迟队列等场景,其时间复杂度低,内存占... 目录开篇:排行榜背后的秘密一、zset的基本使用1.1 常用命令1.2 Java客户端示例二、zse

Redis中的AOF原理及分析

《Redis中的AOF原理及分析》Redis的AOF通过记录所有写操作命令实现持久化,支持always/everysec/no三种同步策略,重写机制优化文件体积,与RDB结合可平衡数据安全与恢复效率... 目录开篇:从日记本到AOF一、AOF的基本执行流程1. 命令执行与记录2. AOF重写机制二、AOF的

Ubuntu向多台主机批量传输文件的流程步骤

《Ubuntu向多台主机批量传输文件的流程步骤》:本文主要介绍在Ubuntu中批量传输文件到多台主机的方法,需确保主机互通、用户名密码统一及端口开放,通过安装sshpass工具,准备包含目标主机信... 目录Ubuntu 向多台主机批量传输文件1.安装 sshpass2.准备主机列表文件3.创建一个批处理脚

MySQL批量替换数据库字符集的实用方法(附详细代码)

《MySQL批量替换数据库字符集的实用方法(附详细代码)》当需要修改数据库编码和字符集时,通常需要对其下属的所有表及表中所有字段进行修改,下面:本文主要介绍MySQL批量替换数据库字符集的实用方法... 目录前言为什么要批量修改字符集?整体脚本脚本逻辑解析1. 设置目标参数2. 生成修改表默认字符集的语句3

Redis高性能Key-Value存储与缓存利器常见解决方案

《Redis高性能Key-Value存储与缓存利器常见解决方案》Redis是高性能内存Key-Value存储系统,支持丰富数据类型与持久化方案(RDB/AOF),本文给大家介绍Redis高性能Key-... 目录Redis:高性能Key-Value存储与缓存利器什么是Redis?为什么选择Redis?Red

SpringBoot分段处理List集合多线程批量插入数据方式

《SpringBoot分段处理List集合多线程批量插入数据方式》文章介绍如何处理大数据量List批量插入数据库的优化方案:通过拆分List并分配独立线程处理,结合Spring线程池与异步方法提升效率... 目录项目场景解决方案1.实体类2.Mapper3.spring容器注入线程池bejsan对象4.创建

Python实现Excel批量样式修改器(附完整代码)

《Python实现Excel批量样式修改器(附完整代码)》这篇文章主要为大家详细介绍了如何使用Python实现一个Excel批量样式修改器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录前言功能特性核心功能界面特性系统要求安装说明使用指南基本操作流程高级功能技术实现核心技术栈关键函