漏洞概要 关注数(9) 关注此漏洞
缺陷编号: WooYun-2012-13400
漏洞标题: PHPCMS V9 member表内容随意修改漏洞
相关厂商: phpcms
漏洞作者: tenzy
提交时间: 2012-10-16 10:41
公开时间: 2012-11-30 10:41
漏洞类型: 设计缺陷/逻辑错误
危害等级: 高
自评Rank: 10
漏洞状态: 厂商已经确认
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 help@wooyun.org
Tags标签: 无
漏洞详情
披露状态:
2012-10-16: 细节已通知厂商并且等待厂商处理中
2012-10-16: 厂商已经确认,细节仅向厂商公开
2012-10-26: 细节向核心白帽子及相关领域专家公开
2012-11-05: 细节向普通白帽子公开
2012-11-15: 细节向实习白帽子公开
2012-11-30: 细节向公众公开
简要描述:
某变量未初始化导致服务器设置register_global=On时会员可以随意修改自己的member信息。
由于需要register_global=On支持,影响有限。。漏洞涉及到会员可以修改自己的余额导致网站可能产生严重后果因此漏洞等级设为高。
详细说明:
修改用户密码的account_manage_password函数未对$updateinfo初始化,导致可以提交
updateinfo[amount]这样的数组随意修改自己的余额、点数、会员组、VIP等一切存放在member表的信息
文件: \phpcms\modules\member\index.php
约435行:
$newpassword = password($_POST['info']['newpassword'], $this->memberinfo['encrypt']);
$updateinfo['password'] = $newpassword;
$this->db->update($updateinfo, array('userid'=>$this->memberinfo['userid']));
漏洞证明:
文件: \phpcms\modules\member\index.php
约435行:
$newpassword = password($_POST['info']['newpassword'], $this->memberinfo['encrypt']);
$updateinfo['password'] = $newpassword;
$this->db->update($updateinfo, array('userid'=>$this->memberinfo['userid']));
修复方案:
$updateinfo = array();
版权声明:转载请注明来源 tenzy@乌云
漏洞回应
厂商回应:
危害等级:高
漏洞Rank:15
确认时间:2012-10-16 11:36
厂商回复:
感谢提交问题!
最新状态:
暂无
漏洞评价:
对本漏洞信息进行评价,以更好的反馈信息的价值,包括信息客观性,内容是否完整以及是否具备学习价值