最近果然了某OA的随便文件上传POC,想着来剖析一下,下面截图代码为github找到。
上传破绽的行使接口如下所示:
/weaver/weaver.common.Ctrl/.css?arg0=com.cloudstore.api.service.Service_CheckApp&arg1=validateApp
看POC注重到接口后面多了一个.css
,凭证以往的履历应该是用于权限认证绕过。抓包举行验证效果如下所示:
当接口后面跟.css
,请求返回状态码为200,如下所示:
当接口后面不跟.css
时,返回状态码为403,如下所示:
由此可以判断.css
是用于权限绕过。接下来通过POC入口逆向来剖析该破绽成因。
,菜宝钱包(www.caibao.it)是使用TRC-20协议的Usdt第三方支付平台,Usdt收款平台、Usdt自动充提平台、usdt跑分平台。免费提供入金通道、Usdt钱包支付接口、Usdt自动充值接口、Usdt无需实名寄售回收。菜宝Usdt钱包一键生成Usdt钱包、一键调用API接口、一键无实名出售Usdt。
翻阅资料知道该系统写了全局平安防护规则,当用户请求触发响应防护规则时会纪录触发规则及IP等信息。查看日志发现触发了该条规则weaver.security.rules.SecurityRuleQX20
该规则防护源码如下所示:
当请求URL中包罗字符weaver
,common
,ctrl
等字符时就会触发该条防护规则。这时就又有一个疑惑。绕过接见控制的POC/weaver/weaver.common.Ctrl/.css
中不是同样存在这些字符嘛为啥没有触发该规则。凭证履历判断可能是该系统的全局过滤器在处置URL后缀为.css
时,举行了白名单验证放过,不进入防护规则判断。
查看web.xml
文件中的平安防护规则filter
入口为weaver.filter.SecurityFilter
,匹配过滤全局路径,如下所示:
weaver.filter.SecurityFilter
源代码中的initFilterBean
函数用于初始化系统防火墙即加载所有防护规则:
跟入weaver.security.filter.SecurityMain
的initFilterBean
函数启动并导入所有规则类:
weaver.filter.SecurityFilter
中初始化系统防火墙后之后举行doFilterInternal
用于过滤校验前端传入数据是否知足平安要求:
请求数据及FilterChain传入weaver.security.filter.SecurityMain
的process
函数继续跟入,idea反编译失败wtf:
使用JD举行反编译发现如下所示代码:
Object localObject7 = str2.toLowerCase().trim(); if ((((String)localObject7).endsWith(".cur")) || (((String)localObject7).endsWith(".ico")) || (((String)localObject7).endsWith(".css")) || (((String)localObject7).endsWith(".png")) || (((String)localObject7).endsWith(".jpg")) || (((String)localObject7).endsWith(".gif"))) { if (!localSecurityCore.null2String(localSecurityCore.getRule().get("OA-Server")).equals("")) { localHttpServletResponse.addHeader("Server", localSecurityCore.null2String(localSecurityCore.getRule().get("OA-Server"))); } localSecurityCore.addHeader(localHttpServletRequest, localHttpServletResponse); paramFilterChain.doFilter(paramHttpServletRequest, paramHttpServletResponse);
str2
为获取的请求URL,故上述代码为URL后缀为cur、ico、css、png、jpg、gif
时即可条过该filter链校验即不用举行上述weaver.security.rules.SecurityRuleQX20的校验,之后跟进挪用paramFilterChain.doFilter
进入下一条filter链
:
将POC
中的绕过.css
换成.cur
发现同样绕过接见限制,如下所示:
web.xml
之后的filter并未对器防护过滤故直接进入最终的resource
处即weaver.common.Ctrl
方式:
前台传入arg0
,arg1
参数,并挪用doInvoke
以arg0
参数为类工具,arg1
参数为响应类的方式。跟进POC中的arg0=com.cloudstore.api.service.Service_CheckApp&arg1=validateApp
,获取前端数据流导入zip压缩包再举行文件解压:
validateApp函数
createLocalApp函数
decompress函数
由上行使链最终造成绕过权限接见造成随便文件上传。
万利逆商网(www.ipfs8.vip)是FiLecoin致力服务于使用FiLecoin存储和检索数据的官方权威平台。IPFS网实时更新FiLecoin(FIL)行情、当前FiLecoin(FIL)矿池、FiLecoin(FIL)收益数据、各类FiLecoin(FIL)矿机出售信息。并开放FiLecoin(FIL)交易所、IPFS云矿机、IPFS矿机出售、租用、招商等业务。
网友评论
6条评论ALLBET欧博真人客户端
回复IPFS代理IPFS代理(www.ipfs8.vip)是万利逆熵官方IPFS指定代理招募中心。IPFS代理官网实时更新IPFS矿机的FiLecoin(FIL币)收益数据、提供FiLecoin(FIL币)节点运维、FiLecoin(FIL币)矿机出售信息、IPFS矿机出售合租拼购、IPFS算力出售合租拼购、全国代理招商、运营中心指导等业务。我就想发个言
皇冠即时比分
回复usdt数字货币交易平台(www.usdt8.vip)
回复环球ug会员开户(www.ugbet.us)
回复家庭主妇在一部电视剧或者影戏中,一样平常都是没有太多存在感,对照容易受欺压的类型。尤其是林芸芸的丈夫又是一个高级乐成人士,外加大男子主义,他脾性上来的时刻,可是一点儿也不给林芸芸体面。这么精彩没人?
USDTOTCAPI(www.usdt8.vip)
回复真的大爱
百家乐官网
回复他在社交账号中写道这样一段话:“若是危险我是你的天性,那同情是我的座右铭。”这段话出自周杰伦的《四周楚歌》,不知他在这个时刻分享这样一首歌,这样一段词的用意是什么?而从他分享的躺在医院病床上的输液照,可以确认他现在的情形可能并没有事情室声明得那么乐观,事实还在输液。而且从输液照也能判断出来,这是在两个差其余地方输液,输液的手也划分是左右手,以是应该也输液不止一瓶了。爱了爱了,抱走。