漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2013-021227
漏洞标题:ESPCMS COOKIE注入与详细分析
相关厂商:易思ESPCMS企业网站管理系统
漏洞作者: Kavia
提交时间:2013-04-04 10:44
修复时间:2013-04-23 23:22
公开时间:2013-04-23 23:22
漏洞类型:SQL注射漏洞
危害等级:中
自评Rank:10
漏洞状态:厂商已经确认
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2013-04-04: 细节已通知厂商并且等待厂商处理中
2013-04-05: 厂商已经确认,细节仅向厂商公开
2013-04-15: 细节向核心白帽子及相关领域专家公开
2013-04-23: 厂商提前公开漏洞,细节向公众公开
简要描述:
对于从cookie中取出的值过滤不严,造成sql注入(可无视GPC)
详细说明:
/espcms/interface/order.php
直接获取cookies[‘ecisp_order_list’]的值,没有经过过滤,直接被用来构造了sql语句,并带入了查询。所以此处形成了一个cookie注入。
接收到的cookies[‘ecisp_order_list’]在整个传递过程中,经过了htmlspecialchars_decode()、stripslashes()、unserialize()、key_array_name()、array_keys()、format_array_text()几个函数。
其中stripslashes()使得注入语句可以无视GPC的影响。
但是,由于unserialize()的使用,使得构造exp的难度加大;因为传入unserialize()的值,必须使用一种规定的特殊格式(实施上,我也没有完全吃透这个特殊格式)
我就依靠运气,和一点小技巧,成功地构造出了exp,这里就不细说了。大家可以通过打印几个函数的返回值,来找到构造的方法。(或者,也可以通过下面的exp,来找寻一些规律)
漏洞证明:
修复方案:
在进入sql语句之前,对变量进行过滤
版权声明:转载请注明来源 Kavia@乌云
漏洞回应
厂商回应:
危害等级:高
漏洞Rank:15
确认时间:2013-04-05 16:32
厂商回复:
感谢您对本漏洞的提醒!
最新状态:
2013-04-23:已修正此漏洞,登陆官网下载最新的程序包即可!