漏洞概要 关注数(24) 关注此漏洞
缺陷编号:
漏洞标题:
OEcms通用Cookie注入一枚(无视全局过滤)
相关厂商:
漏洞作者:
提交时间:
2014-11-07 16:32
修复时间:
2015-02-05 16:34
公开时间:
2015-02-05 16:34
漏洞类型:
SQL注射漏洞
危害等级:
中
自评Rank:
10
漏洞状态:
未联系到厂商或者厂商积极忽略
漏洞来源:
http://www.wooyun.org,如有疑问或需要帮助请联系
[email protected]
Tags标签:
分享漏洞:
>
漏洞详情
披露状态:
2014-11-07: 积极联系厂商并且等待厂商认领中,细节不对外公开
2015-02-05: 厂商已经主动忽略漏洞,细节向公众公开
简要描述:
OEcms通用Cookie注入一枚(无视全局过滤)
详细说明:
前两天发了一个OEcms的漏洞, WooYun: OEcms通用SQL注入一枚(无视全局过滤) ,补充了互联网实例终于通过了,这个漏洞如果还需要互联网实例,就看它吧。
今天再来一个cookie注入。注入点在/source/control/index/buylist.php,而这个是OEcms最新版OEcms4.2在2014-10-08 UPDATE的一个文件,早期的版本中不存在这个问题。版本如下:
OEcms首先对用户的各种输入做了全局过滤,/source/core/run.conf.php
然后在执行sql的时候,很多输入又做了过滤,我没有找到可以绕过’过滤注入的,既然不能绕过,那就不用’了吧,在cookie中找到了个数字型的注入点,无需考虑’的闭合问题了。
先看代码/source/control/index/buylist.php
可以看到uid的值是由cookie中的uid获得的,然后的执行了getlist()。
再来看看getlist():
再来看看getall()
没有进行任何形式的过滤,然后就带入sql执行了
虽然进行了全局过滤,但是仅用daddslashes过滤,对于数字型的注入来说,起不到作用,轻松绕过,注入成功。
Payload:
正常执行sql语句是这样的
执行注入sql语句
管理员的用户名和密码出来了
漏洞证明:
见 详细说明
修复方案:
intval
版权声明:转载请注明来源 路人甲@乌云
>
漏洞回应
厂商回应:
未能联系到厂商或者厂商积极拒绝




