手動脫Mole Box殼實戰總結

2021-07-03 21:15:28 字數 2460 閱讀 5054

這個程式是吾愛破解脫殼練習第8

期的加殼程式,該程式的殼是

molebox v2.6.5

殼,這些都是廣告,可以直接無視了。前面的部落格

手動脫mole box v2.6.5

殼實戰中已經給出了一種比較笨的脫殼的方法,在進行脫殼程式的iat

表的修復的時,採用的是手動記錄系統

api的位址然後手動的去恢復被加密的系統

api的方法,很挫。下面就來講一講稍微好點的修復

iat表的方法。

回顧一下前面找加殼程式原oep

的步驟。

使用esp定律進行該加殼程式的脫殼,在硬體寫入斷點斷下來以後,單步f7到位址

0046997b3

處,發現

call eax

指令中的

eax儲存是加殼程式真實oep

的va位址

被加殼程式的真實oep

被找到了,但是使用

od的外掛程式

ollydump

或者load pe+importrec

或者是scylla_x86

進行程式的脫殼,然後執行程式,發現脫殼後的程式執行出錯。

隨後找到原因,原來是有部分函式的api

位址被加密處理

了,具體的被加密的函式如圖所示。很顯然,位址00455170處儲存的系統api

的函式位址是第乙個被加密處理(具體的怎麼找

iat表的方法,看前面的部落格)。

ctrl+f2再次動態除錯分析程式,為要找到iat表中的函式是怎麼被加密處理的,需要在位址

00455170處下dword

型的硬體寫入斷點,4次

f9後位址00455170處被加密的系統api

的函式的位址顯示出來了,如圖。通過呼叫

getprocaddress

函式獲取到的系統

api函式的位址儲存到了

ds:[ecx]中,值得注意。

f8單步除錯程式走幾步,發現位址

00470f42

處呼叫的

函式00471620

使用來給iat

表中系統

api進行加密處理的。

f7單步跟進

函式00471620

進行分析發現,通過置換的方式將ds:[ecx]處的函式位址給修改了。

ok,程式在呼叫被加密處理的

iat表中函式時,最終函式呼叫的還是系統的

api也就是說只是給系統的

api增加了呼叫的**函式。既然是這樣,那就將修改

iat表中系統

api函式的**給

path

掉也就是

nop掉。

將修改iat表中函式呼叫位址的彙編**

mov dword ptr ds:[ecx], eax修改為兩條nop指令,然後f8

單步執行程式,沒什麼問題。

f9執行程式,由於根據

esp定律下的硬體寫入斷點還在,因此程式會斷在設定的硬體寫入斷點處,

f8單步幾步即可找到程式真實

oep,如圖。

很顯然,加殼程式的真實oep的

va位址為

0045159c,f7

跟進到oep

處。工具搞起,使用

load pe

結合importrec

或者scylla_x86

(剪下掉無效的函式指標)對加殼程式進行完美的脫殼。

執行一下脫殼後的程式,驗證脫殼成功。

手動脫Mole Box殼實戰總結

這個程式是吾愛破解脫殼練習第8 期的加殼程式,該程式的殼是 molebox v2.6.5 殼,這些都是廣告,能夠直接無視了。前面的部落格 手動脫mole box v2.6.5 殼實戰中已經給出了一種比較笨的脫殼的方法。在進行脫殼程式的iat 表的修復的時,採用的是手動記錄系統 api的位址然後手動的...

手動脫WinUpack 殼實戰

吾愛破解培訓第一課選修作業第6 個練習示例程式。不得不重複那句話,沒見過這種殼,該殼是壓縮殼的一種,相對於壓縮殼,加密殼的難度要大一些,特別是 iat表的修復問題上。首先分別使用die 和exeinfo pe 對該加殼程式進行查殼的處理。od載入加 winupack 殼的程式進行動態除錯分析,加殼程...

手動脫UPX 殼實戰

windows平台的加殼軟體還是比較多的,因此有非常多人對於 pc軟體的脫殼樂此不彼,本人菜鳥一枚,也學習一下 pc的脫殼。要對軟體進行脫殼。首先第一步就是 查殼。然後才是 脫殼。pe detective exeinfo pe die 工具。須要脫殼的程式是吾愛破解論壇的windows 逆向破解培訓...