记一次前台任意文件下载漏洞挖掘

VSole2022-07-22 06:22:45

文章中所涉及漏洞已交给相关漏洞平台

1、起因

日常闲逛,翻到了某后台系统

先是日常手法操作了一番,弱口令走起

admin/123456 yyds!

U1s1,这个后台功能点少的可怜,文件上传点更是别想

不过那个备份管理的界面引起了我的兴趣,似乎有点意思

filename参数后面直接跟上了文件名,这很难让人不怀疑存在任意下载漏洞

抓包,放到burp中,发现果然存在任意文件下载

2、经过

经过fofa收集,我发现这是一个小通用,正当我打算兴致勃勃的打一发别的目标时,却发现这只是个后台洞,backup功能点需要管理员权限

直接302跳转了,晕

运用了常规手法,也bypass失败了

好了,此处漏洞挖掘到此结束

身为一个有菜又爱玩的家伙,我怎么可能轻言放弃呢?

本来打算批量扫备份拿源码,但后面发现,github的链接就在后台介绍处。。。

好家伙,我直呼好家伙,真是踏破铁鞋无觅处

拿到源码,赶紧在本地翻配置文件

spring+shiro的典型组合,嗯,刚好没学到过

凭着典型的脚本小子的思想,我考虑到了shiro的权限分配的较死,从逻辑层绕过估计是中彩票

想到f12sec有位师傅发表过shiro权限绕过的文章,可以利用shiro权限绕过,达到前台任意下载

但是尝试了网上公开的几种exp,发现均失败了

/;/------>302跳转

/;a/------>302跳转

末尾加上"/"------>302跳转

/fdsf;/../------>302跳转

怎么回事小老弟,我的200呢w(゚Д゚)w

最后,发现是我的姿势错了,在https://www.freebuf.com/vuls/231909.html中,我找到了答案

先了解点前置知识(大佬绕过):

Shiro的URL路径表达式为Ant 格式,路径通配符支持?***。

?:匹配一个字符
*:匹配零个或多个字符串
**:匹配路径中的零个或多个路径

上面的文章里解释的很清楚了,如果URI中存在;号的话,则会删除其后面的所有字符。

/fdsf;/../hello/1/最终也就变成了/fdsf。

而我们这款web应用遇到不符合的目录就直接跳转了,所以,想要利用这个权限绕过,必须要有以下条件

1、存在,并且是anon权限的目录

此外只要让路径规范化处理完后匹配上anon配置的即可。

比如说: /noAuth;/../backup/download

很幸运,这款web应用中就有这样的目录

经过测试,images目录可行

然后手动构造,burp发包,芜湖,成功前台任意下载!

声明:本所分享内容仅用于网安爱好者之间的技术讨论,禁止用于违法途径,所有渗透都需获取授权!否则需自行承担,本公众号及原作者不承担相应的后果.

漏洞挖掘shiro
本作品采用《CC 协议》,转载必须注明作者和本文链接
漏洞挖掘是指对应用程序中未知漏洞的探索,通过综合应用各种技术和工具,尽可能地找出其中的潜在漏洞。cookie的key为RememberMe,并对相关信息进行序列化,先使用aes加密,然后再使用base64编码处理形成的。在网上关于Shiro反序列化的介绍很多,我这里就只简单介绍一下,详情各位可以看下大神们对其源码的分析。
0x01 确定目标无目标随便打,有没有自己对应的SRC应急响应平台不说,还往往会因为一开始没有挖掘漏洞而随意放弃,这样往往不能挖掘到深层次的漏洞。所以在真的想要花点时间在SRC漏洞挖掘上的话,建议先选好目标。0x02 确认测试范围前面说到确定测什么SRC,那么下面就要通过一些方法,获取这个SRC的测试范围,以免测偏。
对于公益SRC来说,想要冲榜就不能在一个站上浪费大量时间,公益SRC对洞的质量要求不高,所以只要 花时间,还是可以上榜的。在对某站点进行测试SQL注入的时候,先通过一些方式测试是否可能存在漏洞,然后可以直接sqlmap一把梭,也可以手工测试,然后提交漏洞。任意注册算是低危漏洞,不过也有两分。不管是进行SRC漏洞挖掘,还是做项目进行渗透测试,又或者是打红蓝对抗,一定要做好信息收集。
拿到一个系统后,很多情况下只有一个登录入口。如果想进一步得到较为高危的漏洞,只能去寻找权限校验相关的漏洞,再结合后台洞,最终得到一个较为满意的漏洞
文章中所涉及漏洞已交给相关漏洞平台1、起因日常闲逛,翻到了某后台系统先是日常手法操作了一番,弱口令走起admin/123456 yyds!本来打算批量扫备份拿源码,但后面发现,github的链接就在后台介绍处。。
分析漏洞的本质是为了能让我们从中学习漏洞挖掘者的思路以及挖掘到新的漏洞,而CodeQL就是一款可以将我们对漏洞的理解快速转化为可实现的规则并挖掘漏洞的利器。根据网上的传言Log4j2的RCE漏洞就是作者通过CodeQL挖掘出的。虽然如何挖掘的我们不得而知,但我们现在站在事后的角度再去想想,可以推测一下作者如何通过CodeQL挖掘漏洞的,并尝试基于作者的思路挖掘漏洞
细说从0开始挖掘cms-
2022-08-17 16:26:57
确立目标挖洞的第一步首先是确立一个目标,也就是找个cms来挖,这里可以通过github,gitee或者谷歌百度直接去搜cms。或者cnvd查看相应的信息,通过查看相应的信息可以提高我们挖洞的效率,我们从中可以知道该项目已经存在漏洞,我们到时候挖就可以看看相应的地方会不会还存在漏洞或者避免挖到别人挖过的漏洞。本次挖掘漏洞是ofcms,首先先下载一下源码,然后解压丢一边,回到网页来看一下项目文档。
0x01 前言最近看到了关于很多红队方面的文章,如何进行信息收集,从单一目标或多个目标中进行快速查找漏洞。今天提供一种针对较多资产或目标的情况下进行批量识别目标框架进行针对性漏洞挖掘的方式。0x02 正文最近 EHole 更新了3.0版本,提供了 finger 与 fofaext 参数,fofaext参数主要从fofa进行批量获取 IP 的端口情况,而 finger 则进行批量进行指纹验证识别。目前开源的指纹将近1000条,基本上都是比较常遇到的系统,另外 finger 参数则可以直接识别下面格式的地址:IP:PORT
0x01 前言最近看到了关于很多红队方面的文章,如何进行信息收集,从单一目标或多个目标中进行快速查找漏洞。今天提供一种针对较多资产或目标的情况下进行批量识别目标框架进行针对性漏洞挖掘的方式。
VSole
网络安全专家