当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2015-0152666

漏洞标题:大汉政府信息公开网站群存在getshell的风险

相关厂商:南京大汉网络有限公司

漏洞作者: 路人甲

提交时间:2015-11-08 16:30

修复时间:2016-02-15 10:50

公开时间:2016-02-15 10:50

漏洞类型:设计缺陷/逻辑错误

危害等级:高

自评Rank:20

漏洞状态:漏洞已经通知厂商但是厂商忽略漏洞

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-11-08: 细节已通知厂商并且等待厂商处理中
2015-11-17: 厂商主动忽略漏洞,细节向第三方安全合作伙伴开放(绿盟科技唐朝安全巡航
2016-01-11: 细节向核心白帽子及相关领域专家公开
2016-01-21: 细节向普通白帽子公开
2016-01-31: 细节向实习白帽子公开
2016-02-15: 细节向公众公开

简要描述:

管理后台权限绕过,进入后台后轻松GetShell http://www.wooyun.org/bugs/wooyun-2015-0107138 矿主曾经提交了大汉的某个getshell的漏洞,但是并不完全,我将xxgk里涉及到后台绕过getshell的补充完整。都是没有提交过的。

详细说明:

1.http://xxx/xxgk/jcms_files/jcms1/web1/site/zfxxgk/ysqgk/que_code.jsp,que_code.jsp代码如下:

<%@page import="jcms.util.ValidateCode"%> <% String sessionId = request.getParameter("sessionid"); out.clear(); ValidateCode code1 = new ValidateCode(); if(sessionId==null) { sessionId = ""; } code1.setSessionName(sessionId); code1.getValidateCode(request,response); %>


ValidateCode.class文件,函数setSessionName,将this.sessionname 值设置为参数sessinid传入的值

2.png

ValidateCode.class文件,函数getValidateCode,e将this.sessionname 作为session,值为sRand。所以通过参数sessionid,就可以控制SESSION的名称的创建,从而利用创建任意的SESSION值绕过验证。

01.png

效果:以某政府网站为例

13.png

14.png


2、http://xxx/xxgk/jcms_files/jcms1/web1/site/zfxxgk/ysqgk/sendcode.jsp?webid=2&destnum=cookie_username sendcode.jsp代码中第16行,先将destnum参数值赋值给变量destnum,第29行创建destnum为名称的SESSION值,所以通过参数destnum,就可以控制SESSION的名称的创建,从而利用创建任意的SESSION值绕过验证

String destnum = Convert.getParameter(request, "destnum", "", true, true); // System.out.println("手机号码为"+destnum+"-------;验证码为"+validatorcode); //3.调用短信接口,发送短信 SendMsmBLF blf = new SendMsmBLF(); boolean b = blf.isSendAgain(destnum); if(b){ //表示在次发送 String result = blf.sendSms(webid,destnum,validatorcode); //1:表示发送成功,0:表示发送失败 if("1".equals(result)) { request.getSession().setAttribute("destnum", destnum); request.getSession().setAttribute(destnum, validatorcode); out.print("1");

效果:以某政府网站为例

11.png

12.png


getshell的方法参考我之前提交的漏洞 http://wooyun.org/bugs/wooyun-2014-073992

漏洞证明:

详细说明中已经指出详细的出问题的地方,请及时修改。

修复方案:

后台的session值 绝对不能使用前台客户端提交的参数。应该由服务器端生成,且客户端无法猜测出。

版权声明:转载请注明来源 路人甲@乌云


漏洞回应

厂商回应:

危害等级:无影响厂商忽略

忽略时间:2016-02-15 10:50

厂商回复:

非常感谢提交,这个问题新版本早已解决

最新状态:

暂无