Sablog-X 2.0 后台管理权限欺骗漏洞

- AV AC AU C I A
发布: 2025-04-13
修订: 2025-04-13

// cp.php if (!$sax_uid || !$sax_pw || !$sax_logincount || !$sax_hash) { // 只要这个条件不满足,就可以通过后台的权限验证了 loginpage(); } ... if ($sax_group == 1) { // 如果要获得管理员权限,还必须保证$sax_group的值为1 ... 下面来看下这几个变量是怎么来的 // common.inc.php list($sax_uid, $sax_pw, $sax_logincount) = $_COOKIE['sax_auth'] ? explode("\t", authcode($_COOKIE['sax_auth'], 'DECODE')) : array('', '', ''); // authcode()就是简单的调用base64_decode $sax_hash = sax_addslashes($_COOKIE['sax_hash']); // 这些变量来自$_COOKIE,是可以控制的:) // 不过后面的代码在一定条件下会通过extract($_EVO)来重新注册这些变量 $sax_uid = intval($sax_uid); $sax_pw = sax_addslashes($sax_pw); $sax_logincount = intval($sax_logincount); $sax_group = 4; // 默认的值为4,而我们需要的值是1 $_EVO = array(); // 这里是fix那个变量覆盖的漏洞:) $seccode = $sessionexists = 0; $userfields = 'u.userid AS sax_uid, u.username AS sax_user, u.password AS sax_pw, u.groupid AS sax_group, u.logincount AS sax_logincount, u.email as sax_email, u.url as sax_url, u.lastpost, u.lastip, u.lastvisit, u.lastactivity'; //...

0%
暂无可用Exp或PoC
当前有0条受影响产品信息