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

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

缺陷编号: WooYun-2012-13937

漏洞标题: PHPCMS2008任意PHP代码执行漏洞

相关厂商: phpcms

漏洞作者: 谱外符

提交时间: 2012-10-27 00:39

公开时间: 2012-12-11 00:40

漏洞类型: 文件上传导致任意代码执行

危害等级: 高

自评Rank: 18

漏洞状态: 厂商已经确认

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

Tags标签: 无

7人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2012-10-27: 细节已通知厂商并且等待厂商处理中
2012-10-29: 厂商已经确认,细节仅向厂商公开
2012-11-01: 细节向第三方安全合作伙伴开放(绿盟科技唐朝安全巡航无声信息
2012-12-23: 细节向核心白帽子及相关领域专家公开
2013-01-02: 细节向普通白帽子公开
2013-01-12: 细节向实习白帽子公开
2012-12-11: 细节向公众公开

简要描述:

PHPCMS2008黄页模块漏洞变量初始化不严导致任意PHP代码执行

详细说明:

PHPCMS2008系统中string2array函数调用eval有高风险,在/yp/web/include/common.inc.php中$menu变量初始化不严,导致可以注入执行任意PHP代码

漏洞证明:

code 区域
$r = $db->get_one("SELECT * FROM `".DB_PRE."member_company` WHERE `userid`='$userid'");





此处可能查询无结果,导致以下逻辑不执行

code 区域
if($r)
{
extract($r);
}





结合phpcms的全局变量初始化机制,可以构造$menu变量,结合string2array函数调用eval的漏洞,成功执行任意代码



因没找到官方demo,贴张官网案例网站 欧卡二手汽车网 的phpinfo图片

修复方案:

严格初始化、检查任意可能会用到的变量



code 区域
$menu = '';

$r = $db->get_one("SELECT * FROM `".DB_PRE."member_company` WHERE `userid`='$userid'");
if($r)
{
extract($r);
}

版权声明:转载请注明来源 谱外符@乌云


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:18

确认时间:2012-10-29 10:09

厂商回复:

感谢反馈!

最新状态:

暂无


漏洞评价:

对本漏洞信息进行评价,以更好的反馈信息的价值,包括信息客观性,内容是否完整以及是否具备学习价值

漏洞评价(共0人评价):
登陆后才能进行评分

评价

  1. 2012-11-15 09:28 | momo ( 实习白帽子 | Rank:91 漏洞数:24 | ★精华漏洞数:88888 | WooYun认证√)
    0

    求细节和方法。

  2. 2012-12-01 21:38 | mOon ( 路人 | Rank:0 漏洞数:1 | 上线非本人,请勿打扰!)
    0

    果断牛逼......研究一番 谢谢楼主

  3. 2012-12-11 10:03 | softbug ( 实习白帽子 | Rank:66 漏洞数:10 | 为人类设计最好的软件,解放人的双手,一起...)
    0

    有具体细节或者相关连接吗?

登录后才能发表评论,请先 登录