第一百零一章:魔幻駭客檔案之攻關
網頁瀏覽器(如IE)內部集成了一個指令碼語言的解釋功能,只要將這個功能給禁用掉,那網頁中的指令碼程式就成了擺設,什麼效果都不會有。而這個功能是很容易就可以禁用掉的,只要在簡單的勾掉其中的一個功能選項而已。
不過對心語來說,這個方法還是相對比較麻煩,等看完原始碼之後又要把設定還原。因為如果禁用掉這個功能,以後網頁中的一些動態效果都沒有了。許毅用的方法是直接在位址列中的網址前面敲入一個命令“view-source:”,這個命令也是瀏覽器本身認識的命令,意思就是“檢視原始檔”,執行“view-source:http://***”之後,裡面的原始碼就顯示出來了。
還有一個比較簡單的方法,那就是直接用瀏覽器工具欄上的檢視“原始檔”功能。除此之外,還可以用其他軟體開啟,例如windows系統中的記事本,寫字板之類的,直接把網址填入要開啟對話方塊的地址內,都可以。如果不怕麻煩,那就直接用下載軟體將這個頁面下載下來再看。
心語很順利地看到了第二關網頁的原始碼,大致瀏覽了一下,發現了一段比較可疑的編碼,許毅推斷過關密碼應該隱藏在其中。
這段編碼內容為:“%B9%A7%CF%B2%B9%FD%B9%D8%A3%A1%B1%BE%B9%D8%C3%DC%C2%EB%CA%C7%45%32
”
第二關還有點難度,心語呵呵一笑。看到這個段奇怪的編碼他就知道怎麼破解了。看這它們的形式,很顯然是URL編碼,也就是網址轉換的時候的編碼。在上網的時候,經常可以看到這樣的編碼,是瀏覽器用來打包表格輸入的一種格式,這種情形在用搜索引擎搜東西的時候最常見,搜尋的內容通常都會轉換成這種形式呈現在瀏覽器的位址列中(至於為什麼要這樣以後再解釋)。
URL編碼其實就是字元ASCII碼(美國國家資訊交換標準程式碼)的十六進位制,不過稍微有些變動,需要在前面加上“%”。比如反斜槓“”,它的ASCII碼是92,而92的十六進位制是5C,所以它的URL編碼就是%5C。漢字的編碼也是同樣的原理,如“胡”的ASCII碼是17670,十六進位制碼是BAFA,則它的URL編碼是“%BA%FA”,由於一個漢字佔兩個位元組,所以中間多了個“%”。
平時通常用不上URL編碼,因為IE會自動將輸入到位址列的非數字字母轉換為URL編碼,只有程式設計師在編寫某些相關功能的程式的時候才需要用到其中的原理,當然,身為一個駭客,這個編碼是需要掌握的,有些入侵行為就需要用到這個知識(如:SQL注入)。
這點小知識心語早就掌握得滾瓜爛熟,他乾脆調出編譯器,當場編寫了一個URL編碼轉換器,反正知道原理,編寫起來不用花多少時間,而且,以後也用得上。
將那段編碼複製到自己剛剛編寫的小程式中,轉換成了幾個漢字:“恭喜過關!本關密碼是E2
”。
心語微笑起來,雖然題目沒什麼難度,但這樣過關的感覺還是不錯,第二關的難度明顯比第一關要大上很多,估計會難倒一片菜鳥。
第三關的難度怎樣呢?心語還真有點期待了,希望能夠讓自己頭痛一下,最近正在研究密碼學呢。
填入第二關的密碼,順利進入第三關。步驟有些大同小異,還是得檢視原始碼,不過這次的原始碼看上去比較混亂,不像前兩關那樣,一眼看去,就能發現密碼大概在某個部位。
第三關的頁面裡面有很多用來干擾的程式碼,主要是一些指令碼程式碼。這就要求闖關者對網頁程式設計比較熟悉,能夠讀懂這些程式碼,至少應該知道那些程式碼應該會完成哪些功能,哪些程式碼有用,而哪些程式碼只是起干擾作用。
心語很快找到了目標,在驗證的時候出現了一段密文,心語一看,知道用的是JScript.Encode加密,只要用相應
的解密功能就能搞定,這對別人來說也許是個難題,但是對心語自然能夠輕易搞定,心語他很順利地進入第四關,心語他想看看到底有多少關,並且想早一點看到最後一關。
--- 進入第四關,心語找了老半天,實在是沒找到哪個地方是突破口,原始碼是檢查了一遍又一遍,正懷疑線索可能並不在原始碼中的時候,心語他終於發現了奇怪之處。
在原始碼中有這麼一句:
疑點就在這裡了,這段程式碼看上去好像沒什麼問題,可是卻沒什麼具體的作用。通常情況下,指令碼程式碼都是夾在之間的,但這個其中卻沒有任何程式碼。這還不是主要的,關鍵在於,如果網頁尾本語言要使用JavaScript語言的話,正確格式應該為:
或者,將指令碼獨立出來,直接放到另外一個檔案中,然後進行引用。則語法為:
也就是說,上面那個是引用了一個檔案了,而檔名正好是JavaScript,出題者這麼出,正好是利用它們之間的相似之處,如果對這兩個概念不清楚,還真不能發現其中的疑點,當然,這麼一句無關緊要的程式碼隱藏在大量程式碼中,如果不細心也是發現不了的。
心語按照上面的地址,將那個檔案開啟,果然裡面有東西,準確的說裡面是一句密文,心語知道自己找對了。
就這麼一句密文,不知道加密演算法也是沒有任何辦法的。加密演算法何其多,任心語如何厲害,單憑一句密文也是不能破解的,這個不比軟體破解,這只是一個過關密碼,也不能根據上下文來推斷,各種情況都是有可能的。
既然這是破壞所設定的,那肯定還有其他什麼線索,這點是可以肯定的。於是,心語又回到網頁原始碼上,仔細閱讀起來,在其中,發現了一小段和加密有關的程式碼,不過這段程式碼實際上是沒有起作用的,並沒有得到執行,唯一的作用那就是干擾了。其中用的加密方式是base64加密,心語感覺到自己又一次抓住了過關的鑰匙。
心語再次查看了一下密文的特點,更加肯定這正是用base64加密演算法加密的密文了。
Base64是網際網路上用的比較多的一種演算法,它是為了解決郵件傳輸中的加密和二進位制資料(聲音、圖形影象等)傳輸問題而產生的。也就是說,這個演算法和郵件聯絡緊密,幾乎所有的電子郵件軟體都把它作為預設的二進位制編碼,它已經成了現今電子郵件編碼的代名詞。
它的主要思想是將輸入的字串或資料編碼成只含有{‘A‘-‘Z‘, ‘a‘-‘z‘, ‘0‘-‘9‘, ‘+‘, ‘/‘}這64個可列印字元的串,故稱為“Base64”(基於64個字元)。它構造簡單,速度快,但安全性就一般了,因為這是一種可逆的加密演算法,也就是說只要知道密文,就可以將明文很輕易地恢復過來。
在PHP程式設計中,裡面就內建了這樣的加密函式,所以許毅很輕易地就將密文破解了,得到了進入第五關的密碼。
來到第五關的頁面,這次倒乾脆,直接給出了一個16位的密文,另外還有一段提示,說密碼是6位純數字。16位的密文,心語立刻就想到了MD5加密,再聯絡題目給出的提示,心語大致猜測自己的推斷應該是不錯了,不然也不會給出這麼一個提示。
看到這個,心語有些無奈了,他估計這關卡也許就到頂了。因為MD5加密演算法是不可逆的,心語要想破解,就只能是暴力破解了,編寫一個軟體對6位數字進行窮舉,肯定可以將密文跑出來。
既然是MD5,前面自然還有MDX(X
Unix系統中使用者的密碼就是以MD5經加密後儲存在檔案系統中。當用戶登入的時候,系統把使用者輸入的密碼計算成MD5值,然後再去和儲存在檔案系統中的MD5值進行比較,進而確定輸入的密
碼是否正確。
透過這樣的步驟,系統在並不知道使用者密碼的明碼的情況下就可以確定使用者登入系統的合法性。這不但可以避免使用者的密碼被具有系統管理員許可權的使用者知道,而且還在一定程度上增加了密碼被破解的難度。
現在心語手中並沒有能夠跑密碼的工具,所以心語他也就不急著繼續,加上此刻時間已晚,他也就睡下了。
心語現在可是用意志力來控制程式,果然如心語所料總共的關卡只有五關。這個破解公佈以後,心語開始向他的手下下達命令。
小屋等人紛紛向其發起了衝擊,可惜的是連第二關都闖不過去。渺渺抱怨,關卡難度太大,看來還真的是自己的能力有限,小屋藍萍兒也都是站同。
這些題目的難度說大也不大,說小也不小,需要的知識並不多,總得來說技術含量不高,但要想順利闖過去,確實需要一些能力。
接著,心語給出了幾點自己的建議。由於心語的這些手下都是放黑的對這些駭客方面的尤其是駭客類的,破解方面肯定不會太過專業。
所以他們還真的實施進不了也就是入侵不了破壞和那兩家也就是網路不死鳥和骷髏他們的計算機網路系統。
至於破解方面,心語決定專門分出一個板塊,重點研究加密解密技術,培養這方面的專才。
對心語的建議,曲斌絲毫不敢怠慢,全部採納。不過卻有些為難,畢竟如果經常要組織這樣的活動的話,需要不少精力,而且最關鍵的是現在真的是沒有時間來做這些。最後還是隻要心語和上次一樣的他自己單獨作戰了。
心語在網上可以說對網路中毒這件經歷了次數已經不少了,本來心語他就是研究並不與反病毒的。
又不這還是第一次想方法來破解這麼一款病毒,不應該說又不是第一次用病毒來反攻擊。那心語的話來說這就叫做,以毒攻毒,以牙還牙。
心語將這個“svch0st.exe”的檔案放入虛擬系統中執行後,很快就看到了檢測的結果----這款病毒執行後。
自動在C盤。SYSTEM32下生成了一個同名的檔案,還有一個是strm.dl的資料庫檔案。都是隱藏的。並且在登錄檔當中加入了開機時自動執行的鍵值。
然後每過尋找桌面視窗,自動關閉防毒軟體,然後搜尋登錄檔鍵值,刪除一切與防毒軟體有關的登錄檔鍵,使防毒軟體無法使用。
修改登錄檔的隱藏檔案鍵值,使系統無法顯示出隱藏檔案。然後刪除系統的一些安全服務,破壞副檔名為GHO的檔案----這個檔案是GHOST的系統備份檔案,破壞該檔案以後使用者將不能透過系統還原來恢復系統。而且會感染應用軟體。
每三秒鐘檢查一次網路,發現聯網的話自動下載木馬病毒包,在電腦中全面擴散。
“他***真毒啊!”心語看到這個病毒的感染過程忍不住罵了一句,這種病毒存在的意義完全就是破壞了。這種病毒就是那種以完全惡意損壞他人電腦為樂的,老實說心語真不知道這種病毒能夠給病毒製造者帶來什麼好處。
於是心語也不急著把這個病毒給破解了,就趕緊登上了網站後臺進行查詢。 很明顯 自己的這些偷襲還是叫破壞他們發現了,破壞已經開始反攻擊了木馬病毒鋪天蓋地的全向心語鋪面也來。
心語不及去反追蹤,現在心語先得把這個該死的木馬給清除了。仔細找了找,心語果然找到了一段JS的指令碼程式碼,這是駭客們去對方網站上掛木馬所用的常見招數。這個指令碼會從一個指定的伺服器上自動下載木馬,使用者點開被掛木馬的網頁以後,指令碼就會自動在後臺執行將木馬下載。
心語將這段指令碼程式碼刪除,不過卻記下了那個伺服器的IP,心想***竟然欺負到老子頭上來了,老子不打了個滿臉桃花開你就不知道花兒為什麼這樣紅!
還沒有心語笑出聲來,心語自己這才發現自己又一次的掉進了破壞的陷阱裡了,看來真的要想和破壞決一勝負還真的不是那樣容易。
(本章完)