漏洞概要 关注数(20) 关注此漏洞
缺陷编号: WooYun-2013-24840
漏洞标题: ecshop最新版本后台所有功能块通用SQL注入(全版本亦可)
相关厂商: ShopEx
漏洞作者: blue
提交时间: 2013-05-30 23:44
公开时间: 2013-08-28 23:45
漏洞类型: SQL注射漏洞
危害等级: 中
自评Rank: 8
漏洞状态: 厂商已经确认
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 help@wooyun.org
Tags标签: sql注射漏洞利用技巧
漏洞详情
披露状态:
2013-05-30: 细节已通知厂商并且等待厂商处理中
2013-05-31: 厂商已经确认,细节仅向厂商公开
2013-06-03: 细节向第三方安全合作伙伴开放(绿盟科技、唐朝安全巡航、无声信息)
2013-07-25: 细节向核心白帽子及相关领域专家公开
2013-08-04: 细节向普通白帽子公开
2013-08-14: 细节向实习白帽子公开
2013-08-28: 细节向公众公开
简要描述:
后台的SQL注入,几乎所有的后台功能块都能用此方法注入,进入后台就可以用此提升下自己的权限了,当然,“进入后台”让这个漏洞鸡肋了,你懂的~~~
详细说明:
$filter = unserialize(urldecode($_COOKIE['ECSCP']['lastfilter']));
这一句是核心,urldecode看到了么?所以啊,只要%27、%2527就能绕过init.php里对$_COOKIE的addslashes_deep了~~~
两个地方:
1.订单详情
2.后台几乎各功能块列表都会用到的get_filter()方法
看接下来的漏洞证明吧~~
漏洞证明:
订单详情的,这个好弄些
get_filter方法的,拿文章列表来测试,满足触发条件可能麻烦些,说个简单的方法,把条件“==”你控制不了的那一边echo输出出来,然后控制的那一边改一下就好了(我说的不绕口吧?)
相关代码(文章列表的,供测试)
怎样,有了这个,还要再找后台SQL注入么?
修复方案:
进入sql语句前,再进行过滤最靠谱
版权声明:转载请注明来源 blue@乌云
漏洞回应
厂商回应:
危害等级:低
漏洞Rank:2
确认时间:2013-05-31 08:44
厂商回复:
感谢您为shopex安全做的贡献
我们会尽快处理
非常感谢
最新状态:
暂无
漏洞评价:
对本漏洞信息进行评价,以更好的反馈信息的价值,包括信息客观性,内容是否完整以及是否具备学习价值