欧美另类日韩中文色综合,天堂va亚洲va欧美va国产,www.av在线播放,大香视频伊人精品75,奇米777888,欧美日本道免费二区三区,中文字幕亚洲综久久2021

我發(fā)現(xiàn)的Magic WinMail Server漏洞 -電腦資料

電腦資料 時間:2019-01-01 我要投稿
【www.lotusphilosophies.com - 電腦資料】

    不久之前我經(jīng)常去的一家音樂網(wǎng)站突然宣布無限期關(guān)閉,但保留對VIPs下載的權(quán)利.這個消息對于我這種狂熱的音樂愛好者猶如晴天霹靂.但是沒有辦法,別人的站關(guān)不關(guān)是別人的事,而我如果想要得到這些音樂,只能操起許久不動的"邪惡"手段了.

    一般來說在滲透一個網(wǎng)站之前,腦海中總要有一個大致的滲透思路,將以前對這個站了解的信息全部挖掘出來,分析有用的部分組合應(yīng)用.我首先想到的是利用以前這個站點的BBS攻擊,記得是Phpwind的,因為最近出了一些漏洞,可以很方便的得到WebShell.然后想到的是以前的一些遺留頁面.但是這些想法都失敗了,因為關(guān)站之后,除了首頁上幾個關(guān)站通知以外,好象沒有別的信息了.似乎在腳本上攻擊不太現(xiàn)實.

    這個站沒有可以利用的地方并不代表別的站點不存在漏洞,我的第二個思路則是旁注,但是等我仔細一查,發(fā)現(xiàn)這個IP上只綁定了一個頂級域名,其他的2級域名也無法通過nslookup列出,看來旁注的想法也告吹.一切看來都像走著背運.沒有辦法,有點想放棄了..腳本上不行,只能看看主機的安全性了.

    如果要對主機進行探測的話,就需要手工的探測一些基本的開放端口,然后整理一個列表,這樣可以更詳細的了解主機的設(shè)置情況,比使用掃描器要方便多了.于是大約在3分鐘之內(nèi),我探測出來一些開放的端口:21(FTP),80(IIS),3372(MSTDS),3389(Terminal Service),8080(Apache).

    對于這些端口,總體來分析一下吧.

    FTP上,我沒有用戶名與密碼,采用的是Serv-U Ftp Server 6.0,如果有這個東西的密碼的話,主機基本上就下來了.但是似乎得到密碼很麻煩.

    80端口上配備著IIS 5.0,但是除了端口和一個index.asp就沒有任何有價值的東西了.從這里下手也很難.

    從開放的3372端口來看,主機并沒有做一些安全策略和TCP/IP篩選,或者沒有裝防火墻,因為憑經(jīng)驗,這個端口一般有安全意識的管理員是不會開放出來的.同時證明這臺主機是Server系列版本的.

    3389,這個誰都知道,是終端服務(wù)的默認端口.登入進去以后發(fā)現(xiàn)是Win2000 Advanced Server.

    還有一個8080,從Telnet中得到的反饋結(jié)果來看,很有可能是Apache的WEB服務(wù)器.難說這上面有一些別的什么頁面可以瀏覽的..于是我就打開這個IP的8080端口...居然返回一個Magic WinMail Server..

    記得這個WinMail曾經(jīng)在25端口有個helo的漏洞,但是那個是老漏洞,新版本應(yīng)該可以避免了.于是省去了找Exploit的打算.不過為了證實,我還是寫了一個段程序,發(fā)送了20000字節(jié)的數(shù)據(jù)包,服務(wù)器沒有掛,說明漏洞已經(jīng)修補掉了.

    似乎走到這里沒轍了.但是我想,既然來了,就這么走太沒意思了吧.于是準備對這個Magic WinMail Server進行一翻測試.

    從網(wǎng)上下載了一個Maigc WinMail,然后安裝后進行了一番黑盒測試,結(jié)果全部失敗.想想這個程序?qū)懙膽?yīng)該是不錯的.但是它的WebMail是用PHP寫成的,如果代碼不嚴謹,PHP上就難免出漏洞.至少是明文的代碼,可以輕松的找到漏洞.

    簡單的看了一下各個PHP中的腳本和函數(shù),找到幾個似乎可以利用的地方,但是由于一些限制,沒有成功,但是很多地方寫的的確不是很嚴謹.當我看到download.php的時候,突然發(fā)覺到了一段奇怪的代碼.代碼如下

    ----------------------------------------codz start---------------------

   

    $html_compress = "false";

    // load session management

    require("./inc/inc.php");

    // check for all parameters

    if( $part == "" || $folder == ""

    || $ix == "")

    Header("Location: error.php?err=3&sid=$sid&tid=$tid&lid=$lid&retid=$retid\r\n");

    $mail_info = $sess["headers"][base64_encode($folder)][$ix];

    $localname = $mail_info["localname"];

    // check if the file exists, otherwise, do a error

    if($cache) {

    $fullfilename = $temporary_directory."_attachments\\".$sess["user"].'_'.md5(base64_decode($bound))."_".$filename;

    if (!file_exists($fullfilename))

    exit;

    clearstatcache();

    $fp = fopen($fullfilename,"rb");

    $email = fread($fp, filesize($fullfilename));

    fclose($fp);

    echo($email);

    exit;

    }

    else {

    if (0 == 'nonmime'){

    $filename = base64_decode($filename);

    $filename = str_replace("\\","",$filename);

    $filename = str_replace("/","",$filename);

    $filename = str_replace("|","",$filename);

    $filename = str_replace("<","",$filename);

    $filename = str_replace(">","",$filename);

    $filename = str_replace(":","",$filename);

    $filename = str_replace("*","",$filename);

    $filename = str_replace("?","",$filename);

    $filename = str_replace("\"", "", $filename);

    $fullfilename = $temporary_directory."_attachments\\".$sess["user"].'_'.md5(base64_decode($bound))."_".$filename;

    if (file_exists($fullfilename)) {

    header("Content-Type: application/rfc822");

    header("Content-Disposition: attachment; filename=\"".$filename."\"");

    clearstatcache();

    $fp = fopen($fullfilename,"rb");

    $email = fread($fp, filesize($fullfilename));

    fclose($fp);

    echo($email);

    exit;

    }

    }

    // othe codz..................

    ?>

    ----------------------------codz stop----------------------

    其中存在問題的代碼是這一段.

    if($cache) {

    $fullfilename = $temporary_directory."_attachments\\".$sess["user"].'_'.md5(base64_decode($bound))."_".$filename;

    if (!file_exists($fullfilename))

    exit;

    clearstatcache();

    $fp = fopen($fullfilename,"rb");

    $email = fread($fp, filesize($fullfilename));

    fclose($fp);

    echo($email);

    exit;

    讓我來講解一下這段代碼吧:

    首先,從瀏覽器中取得cache的值,如果值不為空,那么就開始組合$fullfilename.然后就是fopen,再是讀出所有內(nèi)容并輸出到瀏覽器中,

我發(fā)現(xiàn)的Magic WinMail Server漏洞

,

電腦資料

我發(fā)現(xiàn)的Magic WinMail Server漏洞》(http://www.lotusphilosophies.com)。

    但是這里就出現(xiàn)了問題了...我們的$filename變量沒有經(jīng)過任何處理就組合到了讀取的文件中。如果我們的$filename中包含目錄的跳轉(zhuǎn)符號的話,那么我們就可以跨越目錄讀取文件了....似乎是個好兆頭.先去利用一下看看.

    到了那個網(wǎng)站的8080端口,從WebMail注冊一個用戶進去.提示成功,然后從我的郵箱中發(fā)一封帶附件的郵件到這個新的郵箱中,得到收到郵件以后,我們就開始來利用一下這個漏洞吧.

    在收到的郵件中點開附件,然后按F11將全屏掉IE窗口,再地址欄后輸入&cache=kevin1986&filename=/../../../index.php 回車一下,果然讀出了index.php的內(nèi)容.(圖P1)

    這一下好辦了,我只要去讀一些默認的配置文件就可以讀到比如Metabase.bin,因為在默認配置下,Magic Winmail是以LocalSystem權(quán)限啟動的,所以相應(yīng)的Apache服務(wù)也是以LocalSystem權(quán)限啟動的.所以metabase.bin是可以讀到的

    但是我要下載,文件名這些東西是必要的,從那個中讀到路徑可以,但是文件名就不行了.所以我得想別的辦法..先看看這個Magic WinMail的安裝目錄吧,猜一個.多加幾個../來到根目錄,然后讀boot.ini,結(jié)果正確返回其中的內(nèi)容,說明Magic WinMail的目錄安裝在C盤,似乎Magic WinMail本身不是很好玩,干脆去讀讀別的東西吧...比如Serv-U...

    試著讀/../../../../../program files/Serv-U/Readme.txt

    發(fā)現(xiàn)存在,說明Serv-U安裝在C盤里.那么讀讀ServUDeamon.ini吧.

    果然不出我所料讀出來了,而且管理員似乎很喜歡在注釋中寫一些很敏感的東西,比如密碼.這不是明擺著放我的水嗎?不管了.先從Serv-U里進去,然后就發(fā)現(xiàn)站點目錄下還有一個vipdownloadsmusic目錄,在IE中一訪問,居然全部是打包好的音樂.足足6個G呀.... .挑選幾個比較喜愛的New Age風格的piano solo專輯下載,然后睡覺去了..有一些興奮,但是總覺得不爽,至少我總覺得有些東西還沒做夠...是什么呢?哦....貪心的壞毛病又來了.拿下主機吧...看看是不是還有別的什么好的音樂...這個站的站長可是收集稀有的音樂碟出名的呀.

    從FTP上寫一個WebShell進去,瀏覽了一下C盤,發(fā)現(xiàn)做了限制了,但是從剛才跳轉(zhuǎn)的目錄來看,一般是默認安裝位置,那么就直接進C:\Magic WinMail Server目錄...很好很好,什么都能做,包括在Magic Winmail的Webmail目錄中寫的權(quán)限..

    我隨便寫一個PHP代碼進到主機里,然后執(zhí)行命令(圖P2).由于權(quán)限是最高的關(guān)系,很輕松的加進了用戶,并且進入了終端服務(wù)器。..但是很遺憾,別的盤中除了備份文件,再沒有別的東西了.有點沮喪的給管理員發(fā)了封郵件,然后刪除用戶走人...玩網(wǎng)絡(luò)安全的,要玩的適當才有意思.不對嗎?

最新文章