首页 | 安全文章 | 安全工具 | Exploits | 本站原创 | 关于我们 | 网站地图 | 安全论坛
  当前位置:主页>安全文章>文章资料>入侵实例>文章内容
墨尔本及高雄电影节官网漏洞揭露
来源:http://www.oldjun.com 作者:oldjun 发布时间:2009-10-09  

首先,热烈庆祝中华人民共和国成立六十周年,普天同庆;其次,祝各位路过本blog的孩子们节日快乐,玩的开心~下面开始放两者的漏洞。

这个事情一直没在blog上说,因为有一些顾忌。趁着祖国六十周年大庆,利用揭露漏洞的机会稍微说一下:本人无党派,在私企工作,与gov无任何联系;本人所作所为无任何政治色彩,只是一个愤懑的中国人的软弱反抗。当然,如果我没去碰这两个站,也会有人去搞,坊间爱国的黑客太多了,我只是侥幸碰巧关注的早些从而把它们拿下来而已。

没太多技术含量,高手别见笑~好了,不多说,谈谈漏洞:

一、墨尔本电影节官网(http://www.melbournefilmfestival.com.au/):

墨尔本电影节官网貌似给一个开发CMS的company(MeccaMedialight Pty Ltd.)做的,那一套CMS(名称是Wrangler 8.0.0)写的很不错。

虽然写的很好,但明眼人一眼就看出了网站有注入,确实有注入,而且权限蛮大,可以load_file;mysql版本大于5.0,所有数据都可以猜出来;robots.txt可以知道后台目录是:wrangler8。也许很多人觉得这样子已经很容易拿了,可是我却绊在这里很久,问题是,1、mysql猜到的密码一个都破不了,虽然看上去很像MD5;2、这个服务器貌似就这一个站,根本没旁注的机会。

实在没办法了,还是从源码下手吧。花费时间半天拿到源码(这里不说了,业内人士都知道怎么去搞源码),然后大概读了下源码,基本没找到漏洞。整体系统是没啥严重的漏洞,为什么有注入呢,也许前台是后来写的。执行代码与包含的漏洞没找到,只好还是回归后台,从后台下手吧,看看是什么加密,原来是mysql的password函数,不过我没mysql的库,指定破不了了。不过,后台验证那我发现了问题:Cookie Manipulation。

看源码(不知道是否开源,为了保护开发者利益,cookie名称用xxxxxxxxxxxxx替代):

function ValidateUser () {

        $this->UserLvl = 0;
    
        $uid = inQuery('user_login');
        $pwd = inQuery('password');
        $logout = inQuery('logout');
        $stay = false; //inQuery('createCookie');
        
        // check for logout
        if ($logout) {
        
            setcookie('xxxxxxxxxxxxx','',time()-60000);
            header("location:index.php");
            exit;
        }
        
        
        if (!empty($_COOKIE['xxxxxxxxxxxxx']) and !$logout) {    // cookie exists
                
            @list($c_uid,$cookie_hash) = split(',',$_COOKIE['xxxxxxxxxxxxx']);
            
            $q = "SELECT nonce, level, enabled FROM cw_administrators WHERE name='$c_uid'";
            $r = db_getarray($q);
            if (count($r) < 1) {
                $enabled = false;
            } else {
                $nonce = $r[0]['nonce'];
                $enabled = $r[0]['enabled'];
            }
            
            if ($enabled <> '1') {
            
                $this->UserID = '';
                $this->UserLvl = 0;
                setcookie('xxxxxxxxxxxxx','',time()-60000);
                $this->LoginMsg = 'This account ('.$c_uid.') has been disabled.';
                LogEvent('Admin access', 'Login rejected (account disabled). Someone from '. $_SERVER['REMOTE_ADDR']. " could not log in with supplied credentials ('$uid')");
                return false;
                
            } elseif ((md5($c_uid.$nonce) === $cookie_hash) && $nonce) {  // check nonce //这里满足就OK了,来源:http://www.oldjun.com
    
                $this->UserID = ($c_uid);    // cookie is good, create $user
                $this->UserLvl = $r[0]['level'];
                $safe_user = addslashes($c_uid);
                $q = "UPDATE cw_administrators SET last_access = now() WHERE name = '$safe_user'";
                $r = db_query($q);
                return true;
    
            } else {
                // something's gone wrong
                $this->UserID = '';
                $this->UserLvl = 0;
                $ok = setcookie('xxxxxxxxxxxxx','',time()-60000);
                if (!$ok) $this->LoginMsg = 'Please enter your username and password (unable to delete bad cookie)';
                else $this->LoginMsg = 'Please enter your username and password (bad cookie)';
                return false;
            }
            
        } elseif ($uid and $pwd) {    
                
                sleep(3); 
                
                $userdata = $this->HandleLogin($uid,$pwd);
                
                if (is_array($userdata)) {
                
                    
                    
                    extract($userdata);
    
                    if ($stay) {                                                                    
    
                        setcookie('xxxxxxxxxxxxx', $uid.','.md5($uid.$userdata['nonce']), time()+3600*24*365);    
    
                    } else {                                                                               
    
                        setcookie('xxxxxxxxxxxxx',$uid.','.md5($uid.$userdata['nonce']));                
                        setcookie('xxxxxxxxxxxxx_nostay','1', time()+3600*24*365);                    
                    }
                
                    $this->UserID = $uid;
                    $this->UserLvl = $userdata['level'];
                    
                    RecordEvent('Admin access', 'Successful login by <strong>'.$uid.'.</strong> Remote address is '.$_SERVER['REMOTE_ADDR'], $uid);
                    return true;
    
                } else {
                    $this->UserID = '';
                    $this->UserLvl = 0;
                    $this->LoginMsg = ('Could not log in with supplied credentials. <a href="'.ADMIN_URL.'?frm=rpwd"> Can\'t remember your password?</a>');
                    LogEvent('Admin access', 'Login rejected. Someone from '. $_SERVER['REMOTE_ADDR']. " could not log in with supplied credentials ('$uid')");
                    return false;
                }
        
        } else {
            $this->UserID   = '';
            $this->UserLvl  = 0;
            $this->LoginMsg = 'Please enter your username and password';
            return false;
        }    
        
        
    }

$nonce注入可以得到,于是可以得到$cookie_hash,于是直接修改cookie进后台了,剩下的不多说了,大家都有数。

二、高雄电影节官网(http://www.kff.tw/):

高雄电影节官网貌似也是外包给电脑公司的,但跟墨尔本电影节官网的公司比起来差多了,网站很小,代码也写的比较烂,虽然美工还是有点酷的~

拿这个站只花费了我一分钟,也许很多人已经知道漏洞了,于是我稍微提一下,不多说了。不过这个站也有个有意思的地方,前台可以肆意注入,而且mysql版本大于5.0,表与列都可以得到,可是就是找不到后台密码,于是用工具跑花去半分钟,我觉得数据库找不到用户名密码后(很明显那些表都不像),随便尝试了个常用的方法,一下子进去了,进出无阻,同样是后台验证问题,具体参考这里:http://www.oldjun.com/blog/index.php/archives/41/。

看看源码(后台):

<?
   
//session_start();
   
if(!isset($_SESSION["ADM_AUTH"]) || $_SESSION["ADM_AUTH"]==""){
?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
   <script language="javascript">alert("請登入");
          location="login.php?refer=<?echo $_SERVER['SCRIPT_NAME']?><? echo $_SERVER["QUERY_STRING"]?"?".$_SERVER["QUERY_STRING"]:""?>";
   </script>
</head>
</html>
<?
   
}else{
          
   }
?>

问题一目了然了吧?好了,不多说了,那个网站上的某些新闻真的看得让人很不爽,真想删之而后快。

高雄电影节貌似还没开始,然后官网的漏洞也没有修复。请大家对它的官网手下留情,我不说其他,那电脑公司的网络管理员也是有老婆孩子的,你们别搞的他下岗,这样不好,毕竟这种事情与他无关,做人总是要有点良心的~~~

谨以此文向祖国六十周年献礼,最后附上我保存的最原始的黑页:
墨尔本原始图

高雄原始图


 
[推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]  
匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
 §最新评论:
  热点文章
·另类网站入侵之一句话木马图片的
·0day批量拿站webshell,挖掘机是
·利用ewebeditor 5.5 - 6.0 鸡肋
·OmniPeek抓包的一点看法
·强大的嗅探工具ettercap使用教程
·Windows系统密码破解全攻略
·破解禁止SSID广播
·XSS偷取密码Cookies通用脚本
·XSS漏洞基本攻击代码
·Intel 3945ABG用OmniPeek 4.1抓
·KesionCMS V7.0科汛内容网站管理
·破解无线过滤MAC
  相关文章
·电信局入侵实例
·Javascript Paste Keyboard Shor
·unix入侵
·Gene6 FTP Server提权方法
·如何使用MySQL提升权限
·如何渗透域
·续谈Hacking中的小技巧
·小谈WIN系统Hacking中的小命令2
·小谈WIN系统Hacking中提权前的小
·DEDECMS小说连载模块0day
·php版ewebeditor 3.8的漏洞
·利用Fly_Flash蠕虫攻击开心网
  推荐广告
CopyRight © 2002-2022 VFocuS.Net All Rights Reserved