bo-blog是一款外觀好看,而且當前流行的個人博客系統,在很多下載站你都可以找到這套程序,而且甚至有很多安全界的人都使用著這套php txt的程序,但是這套程序裡有些安全隱患,可能會被人利用去做一些破壞。首先開門見山,我們說說它的絕對路徑暴露問題.........只要提交地址:_blank>?m=2&y=/2005就可以得到程序所在絕對路徑!這是php中很經常出現的問題!現在我們在來看一段代碼,這是showcat.php裡的內容!if (!file_exists("$dirblog/$cat.php")) {wronginfo($langerrornocat);}unset ($allfiles);$allfiles=@file("$dirblog/$cat.php");看到了沒有?他直接把cat.php沒有處理就拿出來用了,而它又是怎麼處理他拿出來的數據的呢?for ($i=$start; $i<$end;$i ) {$latest=explode("|",$allfiles[$i]);$articleid=$latest[1];$articlename=$latest[2];$latest[3]=mktimezone($latest[3]);$showtime=date("Y-n-j",$latest[3]);這樣,它將$cat提交來的文件打開,讀出來,但是以|為分隔讀出文件內容,因為以|讀出文件內容卻是從1開始的,所以我們讀不出其他的文件,我們只能讀文件裡有|的文件的第一個|後面的數據。也就是說,假設我們知道用戶所在目錄的話,我們就可以提交_blank>?job=showcat&cat=../saiy/userid便可以得到管理員的密碼散列。然後偽造cookies登陸,直接可以傳後門了。但是前提是要知道目錄名,所以這只限制於目錄名了,但是假設對方站點上有其他的php 文本的程序,我們可以利用此文件讀出隱秘內容。我們再來說第二個問題,回復評論未限制時間,自學教程,大家大概覺得這不算什麼問題吧,看完代碼不知道你還會這麼想嗎?$replyauthor=safe_convert($replyauthor);$remreplyauthor=$replyauthor;if ($replyemail!="")
$replyauthor.="胃胃".safe_convert($replyemail);$replycontent=safe_convert($replycontent);$simplecontent=preg_replace("/\[(. ?)\]/is", "", $replycontent);$simplecontent=preg_replace("/<(. ?)>/is", "", $simplecontent);$simplecontent=preg_replace("/&(. ?);/is", "", $simplecontent);$curexcerpt=msubstr($simplecontent,0,20);$timestamp=time();$areply=@readfromfile("$dirblog/$articleid.rpl");writetofile("$dirblog/$articleid.rpl",$replycontent."\n|rep|\n".$areply);writetofile("$dirblog/list.php",$all1);updaterenum(1); 看到沒有?居然也沒對$articleid做過濾,大家覺得嚇人嗎?哦?你們覺得不怎麼樣?恐怕不好玩?我改改你再看看。writetofile("$dirblog/C:\winnt\system32\hacker.rpl",$replycontent."\n|rep|\n".$areply);呼,這樣我們把一個垃圾文件寫到系統目錄下了。要麼,寫到管理員啟動目錄?一個N大無比的文本文件。只要我們不停的提交數據,則不斷的把文件寫入了,假設你手頭沒有工具可以幫你提交,我教你個簡單的,利用NC的方法!首先,抓取你發表評論的包,存在NC所在目錄下,5自學網,命名為test.txt。這個大家都會做吧~~再建立一個bat,命名為test.bat內容為:nc 80