標籤:nspack殼 脫殼 nspack脫殼 手動脫殼 吾愛破解脫殼
Fly2015
這裡脫殼的程式是吾愛破解培訓的作業2,相較於作業1稍微要強一點,但是只要掌握了脫殼的ESP定律,脫這個Nspack殼並不難,不過還是蠻有意思的。
1.使用查殼軟體對加殼的程式進行查殼。
使用PE Detective查殼的結果:
使用DIE查殼的結果:
2.OD載入程式進行脫殼操作
OD載入以後,被加殼程式的進入點的彙編代碼,。很顯然,加殼程式載入OD以後,發現有3個pushad指令,因此在進行程式脫殼的時候,根據ESP定律需要下3個硬體斷點。
根據該加殼程式載入OD的彙編的特點,根據ESP定律下3個硬體斷點,。
3次F9運行加殼程式,程式自然會斷在第3個硬體斷點處,。
F7跟進到地址0044C18D處,觀察後面的彙編指令的特點,經過分析以及結合反組譯碼的經驗,找到了下面這段彙編,。
很顯然,JMP指令後面的地址0041DDAC就是原來程式的真實OEP的地址。先刪除前面設定的3個硬體斷點,然後在地址0044C33C處F2下斷點,F4或者F9運行到該斷點處斷下。
刪除原來設定的硬體斷點:
運行到斷點0044C33C處,程式斷下來,。
F7跟進到真實OEP的地址0041DDAC處,。
令人煩惱的事情發生了,OD沒有正確的將記憶體資料轉換成彙編形式顯示出來,因此需要我們手動的將記憶體資料轉換成彙編指令顯示出來(選中沒有沒有正確顯示的記憶體資料-->右鍵-->分析-->分析代碼或者使用快速鍵Ctrl + A)。
Ok,上面的彙編代碼是不是很熟悉啊。現在,我們就可以使用OD的外掛程式OllyDump或者Load PE結合RECImport 工具,進行程式的脫殼了。運行脫殼後的程式,程式運行正常。
脫Nspack殼的文檔和脫殼後的程式的:http://download.csdn.net/detail/qq1084283172/8883869
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。
手動脫NsPacK殼實戰--吾愛破解培訓第一課作業2