来源:坏狼安全网
// 允许程序在 register_globals = off 的环境下工作 $onoff = (function_exists(‘ini_get’)) ? ini_get(‘register_globals’) : get_cfg_var(‘register_globals’);
if ($onoff != 1) { @extract($_POST, EXTR_SKIP); @extract($_GET, EXTR_SKIP); }
$self = $_SERVER[‘PHP_SELF’]; $dis_func = get_cfg_var(“disable_functions”);
/===================== 身份验证 =====================/ if($admin[‘check’] == “1”) { if ($_GET[‘action’] == “logout”) { setcookie (“adminpass”, ""); echo “<meta http-equiv=“refresh” content=“3;URL=“.$self."">”; echo “注销成功…
<a href="".$self."">三秒后自动退出或单击这里退出程序界面 >>>”; exit; }
if ($_POST[‘do’] == ‘login’) { $thepass=trim($_POST[‘adminpass’]); if ($admin[‘pass’] == $thepass) { setcookie (“adminpass”,$thepass,time()+(1243600)); echo “<meta http-equiv=“refresh” content=“3;URL=“.$self."">”; echo “登陆成功…
<a href="".$self."">三秒后自动跳转或单击这里进入程序界面 >>>”; exit; } } if (isset($_COOKIE[‘adminpass’])) { if ($_COOKIE[‘adminpass’] != $admin[‘pass’]) { loginpage(); } } else { loginpage(); } } /===================== 验证结束 =====================/
// 判断 magic_quotes_gpc 状态 if (get_magic_quotes_gpc()) { $_GET = stripslashes_array($_GET); $_POST = stripslashes_array($_POST); }
http://www.discuz.net/admin/logging.php?action=login 可以跳到其它目录 注册登录后利用
http://www.discuz.net/search.php?user%id=100 可以进行injection……
只能手工注射
注意
里必须包含用户自己的路径 如果限制的话,还可以向上跳,向上级传文件的时候,不能直接 http://www. http://www.discuz.net/user/up/_id=../../…/(注射语句) 就包含用户路径 http://www.discuz.net/member.php?action=list_UserNumber=1402257EE8F 不然不能进行注射。文件漏洞代码如下
getDB(); /* echo ''; print_r($Data); */ ?>可以直接注射,拿到后台密码。