织梦DEDECMS安全漏洞之/include/common.inc.php漏洞修复方法

1.受影响版本DEDECMS 5.7、5.6、5.5。

2.漏洞文件/include/common.inc.php
3.DEDECMS的全局变量初始化存在漏洞,可以任意覆盖任意全局变量。

危害:

1.黑客可以通过此漏洞来重定义数据库连接。
2.通过此漏洞进行各种越权操作构造漏洞直接写入webshell后门。


临时解决方案:

在 /include/common.inc.php  中
找到注册变量的代码

foreach(Array('_GET','_POST','_COOKIE') as $_request)
{
         foreach($$_request as $_k => $_v) ${$_k} = _RunMagicQuotes($_v);
}

修改为


foreach(Array('_GET','_POST','_COOKIE') as $_request)
{
         foreach($$_request as $_k => $_v) {
                    if( strlen($_k)>0 && eregi('^(cfg_|GLOBALS)',$_k) ){
                            exit('Request var not allow!');
                   }
                    ${$_k} = _RunMagicQuotes($_v);
    }
}