简要描述:
PHPCMS2008黄页模块漏洞变量初始化不严导致任意PHP代码执行
详细说明:
PHPCMS2008系统中string2array函数调用eval有高风险,在/yp/web/include/common.inc.php中$menu变量初始化不严,导致可以注入执行任意PHP代码
漏洞证明:
$r = $db->get_one("SELECT * FROM `".DB_PRE."member_company` WHERE `userid`='$userid'"); |
此处可能查询无结果,导致以下逻辑不执行
结合phpcms的全局变量初始化机制,可以构造$menu变量,结合string2array函数调用eval的漏洞,成功执行任意代码
因没找到官方demo,贴张官网案例网站 欧卡二手汽车网 的phpinfo图片
修复方案:
严格初始化、检查任意可能会用到的变量
$menu = '';
$r = $db->get_one("SELECT * FROM `".DB_PRE."member_company` WHERE `userid`='$userid'"); if($r) { extract($r); } |
|