簡體中文 | 繁體中文

駭客傳說-----第174章 子程式呼叫


我愛上了美女上司 護花神相 至上仙醫 花開美利 給我一支菸 重生之花開芳菲 大地武士 戰國風雲之韓國再起 破天傳說 來自異界的修煉者 問道仙緣 飄花令 鳳繪江山之浴血嫡女 許你一世梨花香 天煞神相 緋聞 重生之異獸獵人 重生之相守 回到舊石器時 楚漢嬌顏
第174章 子程式呼叫

“小毅,你怎麼可以輕易放棄這局呢!”鄭潔有些“恨鐵不成鋼”,她一個勁的在幫他爭取,卻沒想到他自己倒大方地放棄了。

蘇蘭上前拉住鄭潔的手,安慰道:“別生氣了,接著看下去吧,小顏不會輸的。”

第二題還是解密題,不過不再是那種加了密碼型殼的加密,而是直接給出一個加密檔案,機密者將該檔案還原出來。

在Wind中,有一種非常重要的檔案格式──PE檔案格式,這是WindNT3.1中引入的一種新的可執行檔案格式,Wind系統中的所有可執行檔案都是PE檔案格式的。要在Wind下研究加密解密,這種格式是必須掌握的。雖然PE檔案格式的規範包含了DN的CD中,但是那些文件非常的晦澀,而且這些文件並沒有提供足夠的資訊,所以有時候連開發者們往往都無法很好地弄懂這一格式。

Wind下的加密和解密說白了就是針對PE檔案格式結構的相關操作,所以掌握這種格式是每個破解者的必備技能。

第二場比試開始,這次的題目很顯然大大難於上一個,兩人有條不紊地開始進行破解。

這個難度比較大,所以允許他們從網路上下載一些常用的破解軟體,當然,如果他們自己有工具的話,也允許用自己的工具。

許毅從網路上的一臺肉雞中下載了幾個小軟體,有用來檢測殼的,也有用來除錯跟蹤的。其中大部分功能和網路上流傳的那些工具差不多,不過經過了他的一些相應修改,功能更為強大。例如如果其中有反跟蹤程式碼,可能那些工具有影響,但他的工具可以無視等。

許毅用一個檢測殼的小軟體將那個要破解的檔案載入進去,想看看,是否能夠看出到底是加了什麼型別的殼。

“殼”是一種很形象的說法,意思就是對軟體進行保護的那一層程式碼。說起來,殼和病*毒在某些方面比較類似。即殼和病*毒都需要比原程式程式碼更早地獲得控制權,這一功能可以透過在原程式的程式碼執行前加入自己地一段程式碼來實現。在檔案執行的時候,殼修改了原程式的執行檔案的組織結構,從而達到殼的程式碼能夠比原程式的程式碼提前獲得控制權的目的,並且還不會影響原程式地正常執行,從這點上來說,殼和病*毒是很類似的。

許毅編寫的這個軟體是根據一些殼的特徵程式碼來識別到底是什麼殼的,肅然,識別的準確度也有可能不準確,因為這些特徵程式碼也是可以偽造的。許毅看了一下,軟體中顯示,“殼”是VC++的,於是許毅用另一外一個脫殼工具試了一下,發現脫出來地檔案是損壞的檔案,也就是說,這個殼並沒有這麼簡單。他再經過一番努力,發現這個殼根本就是偽造的,工具脫殼並行不通,看來只有手動脫殼了。

詹姆斯的進展就比許毅慢多了,他發現,這種加密方式自己很陌生,以前根本沒有接觸過,腦門的汗漸漸冒了出來,看來,上帝並不是每次都這麼照顧他。詹姆斯現在正被那個具有欺騙性質的殼弄得頭昏腦漲,他現在還在相信這個殼是VC++的,所以正朝這方面努力著。

米歇爾教授一直在後面觀察著他們兩個的情況,看到詹姆斯有些手忙腳亂的樣子,他微微地搖頭,他和許毅相比,差得實在是太遠了。光從心態上來看,他就已經輸了。破解的時候,最忌諱的就是心浮氣躁。破解是一個非常需要耐性的活,冷靜的頭腦是必不可少的,越心急進展就會越慢。反觀許毅,他一步一個腳印,心平氣和,井井有條。

不過米歇爾教授心中並不擔心。因為這個題目的難度遠遠超乎大家的意料,在幾周之前,他自己也肯定不能夠在短時間內將其搞定,這可是他最近才研究出來的新地加密方式。米歇爾教授是想讓他們都破解不出來,這樣他們就又成了平局。

許毅原本對這次比試也沒怎麼在乎,可是現在,他改變了了自己的想法,他對這個檔案的加密方式感興趣起來,這正是許毅的性格,越難越能挑起他的鬥志。

PE格式檔案是按節區進行規劃組織的,不同地節區一般儲存的資料的作用也不相同,殼出於保護原程式程式碼和資料的目的,一般都會加密原程式檔案的各個節區,當然,既然是加密儲存的,但程式在執行的時候又不能也保持加密狀態,所以解密也是殼必做的工作之一。節區不只一個,如果殼是按節區加密的,那麼在解密時也按節區解密,並且要把解密的節區資料按照節區的定義放在合適的記憶體位置。

入口點節區基地址重定信鉤子函式。

如果加殼時用到了壓縮技術,那麼在解密之前還有一道工序,當然是解壓縮。

這也是一些殼的特色之一,比如說原來的育種檔案未加殼時1-2大小,加殼後反而只有幾百,這種瘦身技術當然會吸引了不少眼球。

時間一點一滴地過去,眾人靜靜地在那等著也有些無聊了,他們開始慢慢議論起來。單從表面上來看,許毅比詹姆斯要鎮定多了,至少他額頭還沒有冒汗,並且,許毅的手一直有事做,不像詹姆斯,他每隔一段時間就會發上一陣呆,簡直有些手足無措了。

比賽在這邊進行,而一些情況也早就傳到了網路上,LT論壇現在正針對已經進行的那場作廢的比賽進行激烈地討論著,許毅用WINRAR就簡單破解了一個密碼型殼的加密檔案,這太讓人驚訝了,從來沒有人想到過,這個軟體竟然還可以這麼用!大家紛紛拿出網路上很多加密軟體的加密結果進行試驗,結果發現,這個軟體竟然可以破解掉網路上流行的幾乎三分之一的加密軟體!

“這些加密軟體也太垃圾了!”眾人紛紛罵道。大家沒想到,原來值得信賴的加密軟體原來是如此的不堪一擊,大家紛意識到,以後加密檔案的時候,一定不能隨便選擇加密軟體,一定要選擇信得過的,質量有保證的,要不然自己的祕密就隨便可以被別人瀏覽了。

時間已經過去了兩個多小時,米歇爾覺得已經差不多了,可以宣佈停止比賽了,因為他相信,就算再延長几個小時,結果也還是會這樣。

“看來這次的題目我出得太難了,以至於他們兩個都沒能做出來,看來,只能宣佈……”

“終於搞定了!”這時,許毅突然感嘆一聲,打斷了米歇爾教授的話,“教授,這個加密方法還真是不錯呢!”

“什……什麼?你破解出來了?!”米歇爾教授徹底震驚了。

“沒想到,這個檔案不但是分節區進行加密,竟然還對其中的資料進行了壓縮處理,更為巧妙的是,在加殼的同時,還讓加殼後的程式呼叫了殼中的幾個子程式……,教育,這個加密方法可是第一次出現呢!”

許毅剛才就是把大量的時間花在最後一個“子程式”技術上,許毅進行脫殼處理之後,雖然將殼脫掉了,但是程式執行也還是不正常,因為在脫殼的同時也將這些子程式給脫掉了。

另外,這個加密技術中的壓縮處理技術也是一個亮點,原本有快2的程式檔案在加殼之後,竟然只剩下幾百了。

米歇爾剛開始還有些不相信許毅真的破解出來了,但是聽到許毅的話之後,他不得不信了。他跑到許毅的計算機前查看了一下,結果真的出來了。他能說什麼呢?只能承認自己的確老了,這個問題困擾了他幾個月的時間,自己將這個技術發明出來之後,竟然被許毅在幾個小時之內就給解決掉了。

米歇爾教授嘆了口氣,轉頭問詹姆斯:“詹姆斯,你做到哪了?”

詹姆斯猶豫了一下,說道:“解……解壓縮。”

“耶~太棒了,贏了,贏了!……”鄭潔歡呼起來,跑上場來強制性地給許毅來了一個熊抱。弄得許毅尷尬不已,連忙將其推開一段距離,還真受不了她的熱情。

肯看不過去,站了出來怪聲道:“先別高興得太早,詹姆斯還有機會扭轉戰局,別忘了,他現在才勝一場而已。”

推薦小說