专栏名称: 衡阳信安
船山院士网络安全团队唯一公众号,为国之安全而奋斗,为信息安全而发声!
目录
相关文章推荐
南方能源观察  ·  《南方能源观察》电子刊上线!订阅方式戳→ ·  17 小时前  
南方能源观察  ·  试点碳市场仍需继续试验 ·  2 天前  
华夏能源网  ·  谁是2024风电“签单冠军”?金风第一,运达 ... ·  3 天前  
51好读  ›  专栏  ›  衡阳信安

泛微E9路径browser.jsp存在权限绕过导致SQL注入漏洞

衡阳信安  · 公众号  ·  · 2024-09-22 02:00

正文

一、漏洞描述

这是一个组合漏洞,权限绕过 + 后台sql注入漏洞。

二、漏洞分析

2.1 登录绕过分析

从互联网得知,漏洞路径为 /mobile/plugin/browser.jsp 。访问这个路径,无法访问

那么就需要分析哪里拦截了这个请求,或者说哪里进行了权限验证。这种验证通常需要登录,或者有一定的权限。不了解项目架构的时候,我们就通过关键字搜索来找到对应的信息。全局搜索 您所请求的资源禁止访问 关键字,在一个 403.htm 文件中,接着搜这个文件

cas web.xml 配置文件中,定义了该报错页面。

但是并没有找到 /mobile 路径相关的验证代码。根据以往经验,该应用修复漏洞都是添加安全规则,在 classbean/weaver/security/rules/ruleImp/SecurityRuleMobile29.class 中找到跟 Mobile 有关的安全规则。有以下几个验证,是否登录、不用登录、必须登录。

根据以上条件,想要访问后台功能,可以是登录检查返回 true mobile-no-login-urls 规则返回包含该 URL

mobile-need-login-urls 规则不包含该URL。

经过翻找规则文件,找到这么一个文件 SecurityRuleNeedLogin.class 从名字看,是验证不许登录的规则。

不包含 ../ \\ 会进入 if 逻辑,才可以返回 true 。这里少了个空格的验证,那么我们就可以利用空格来绕过必须登录的验证。

2.2 SQL注入分析

接下来就可以进入这个文件了,SQL注入在 keyword 中,从http请求获取值,进行一次url解密。

把值初始化给了 BrowserAction

经过一系列参数值的初始化后,最终调用 braction.getBrowserData() 方法获取结果,返回给HTTP的响应。

这个方法会根据 browserTypeId 的值调用对应的方法。

这些方法都存在SQL注入漏洞







请到「今天看啥」查看全文