软件下载 | 资讯教程 | 最近更新 | 下载排行 | 一键转帖 | 发布投稿
您的位置:最火下载站 > 资讯阅读 > 站长新闻 > PHPCMS再爆最新漏洞:页面变量覆盖漏洞

PHPCMS再爆最新漏洞:页面变量覆盖漏洞

Phpcms最新漏洞报告:common.inc.php页面变量覆盖漏洞

添加时间:2010-06-09

系统编号:
WAVDB-01649

影响版本:
PHPCMS 2007

程序介绍: PHPCMS是一款基于 PHP+Mysql 架构的网站内容管理系统,也是一个开源的 PHP 开发平台。Phpcms 采用模块化方式开发,功能易用便于扩展,可面向大中型站点提供重量级网站建设解决方案。3年来,凭借 Phpcms 团队长期积累的丰富的Web开发及数据库经验和勇于创新追求完美的设计理念,使得 Phpcms 得到了近10万网站的认可,并且越来越多地被应用到大中型商业网站

漏洞分析: 在文件incude/common.inc.php中:
if(!defined('IN_ADMIN')) //不是管理员则进入判断
{
if($CONFIG['dbiscache']) $db_file .= '_cache';
if($CONFIG['phpcache'] == '2')
{
$cachefileid = md5($PHP_SELF.'?'.$PHP_QUERYSTRING);
$cachefiledir = PHPCMS_ROOT.'/data/phpcache/'.substr($cachefileid, 0, 2).'/';
$cachefile = $cachefiledir.$cachefileid.'.html';
if(file_exists($cachefile) && ($PHP_TIME < @filemtime($cachefile) + $CONFIG['phpcacheexpires']))
{
require $cachefile;
exit;
}
}
if($PHP_QUERYSTRING && preg_match("/^(.*)\.(htm|html|shtm|shtml)$/", $PHP_QUERYSTRING, $urlvar))
{
parse_str(str_replace(array('/', '-', ' '), array('&', '=', ''), $urlvar[1])); //parse_str函数注册变量,导致可以任意覆盖之前的变量。

漏洞利用:
http://wavdb.com/article/rss.php? CONFIG[tablepre]-phpcms_member.html

解决方案:
厂商补丁:
PHPCMS
-------
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
http://www.phpcms.cn/

信息来源:
<*来源: Bug.Center.Team
链接: http://wavdb.com/vuln/1661
*>

官方回复:

自行删除 parse_str(str_replace(array('/', '-', ' '), array('&', '=', ''), $urlvar[1]));

    相关阅读
    网友评论