免责声明
由于传播、利用WK安全所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负
责,WK安全及作者不为此承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除
并致歉。谢谢!
背景
这个系统也是自己看过了之后,感觉也没啥东西,拿给我朋友一看,尼玛嘎嘎出洞了,是真牛逼,抱着学习的态度今天从白盒的角度去看一下,分享一下过程,如有不到位的地方,欢迎斧正!另外该系统所涉及的漏洞均以上报到相关平台。
审计分析
这套系统没使用到什么框架之类的,经典的JSP+Servlet开发的程序,访问路由方式也是通过web.xml定义的,这个系统功能跟配置信息都蛮多的,不一一撰述了,直接看到漏洞点。
Druid的账号密码硬编码在web.xml里面,通过init-param进行赋值的操作
虽然说已经获取到了账号密码,但是还是登录不进去呀,那么直接通过JSON API接口进行访问,例如登录之后跳转到index.html
那么可以通过 basic.json 接口得到index.html页面显示的数据
通过访问websession.json 或 weburi.json 通过泄露出的大量的session,然后去替换包中对应的值,直接登录到了后台
越权分析(这个是朋友黑盒搞出来的,我根据代码分析的),学生后台内的功能点少的可怜,基本上没啥东西,连个框框都看不到,挂着burp去看看流量信息了,注意到一个包
其中的commandType的值是yh_getQx 根据分析 得到这个是获取到 用户(yh)权限(Qx)的 功能,这个分析的过程有点繁琐,一句两句说不清楚,就先不写了。
我们直接来到漏洞点
跟进查看 这个函数内部是 通过session获取对应的id值,然后跟进这个值到数据库中去查询相关的权限列表,然后再进行嵌套循环,判断用户是否具有这个权限,用户具有这个权限是 1 不具有这个权限是 0
直接修改返回包 把所有的 0 全部换成 1,越权成功
结束
其实这个分析过程不止这些,里面很多参数传递也是加密的以及参数的解析获取等等。又水了一篇,大佬勿喷!最后上个通杀的图片
【安全群聊&技术交流】
原文始发于微信公众号(WK安全):通杀分析 | 从硬编码泄露到越权漏洞审计过程!
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论