手脫 ASPack 2.12 -> Alexey Solodovnikov

   今天在學習脫殼, 下載了幾個軟件都脫殼不成功,沒辦法重新學過。

看了手脫教程,決定整個軟件下來練習一下

就拿系統自帶的“記事本”來練習一下吧, 用ASPack加下殼, 用PEid 查詢, 顯示爲ASPack 2.12 -> Alexey Solodovnikov

好了, 不廢話了, 第一篇. 脫殼, 高手見笑了...

 

/********************************

脫殼目標: notepad.exe 記事本

加殼類型: ASPack 2.12 - Alexey Solodovnikov

/********************************

  

1. 使用Peid 查殼, 顯示爲 ASPack 2.12 -> Alexey Solodovnikov

 

2. OD載入, 停在

01013001 note>  60                  pushad

01013002        E8 03000000         call notepad.0101300A //查看ESP值

01013007      - E9 EB045D45         jmp 465E34F7

0101300C        55                  push ebp 

3. 按F8步進到 01013002,  查看寄存器中的ESP值, 值爲0007ffa4

(這算不算是使用ESP定律呢? 不太清楚, 有空再複習下.)

 

4. 將0007ffa4 設置爲訪問中斷, 如在命令中輸入 hr 7ffa4, 在調試->硬件斷點可以查看到

(也可以 dd 7ff4, 斷點 -> 硬件訪問斷點 -> Word 字) 

5. F9 運行, 運行到這裏被中斷

010133B0       /75 08               jnz short notepad.010133BA //斷在這裏了

010133B2       |B8 01000000         mov eax,1

010133B7       |C2 0C00             retn 0C

010133BA       /68 A5730001         push notepad.010073A5

010133BF        C3                  retn 

6. 清除硬件斷點. F8步過. 直到retn 過後, 就是入口點了(push 70)

010073A5        6A 70               push 70 //入口點

010073A7        68 B0180001         push notepad.010018B0

010073AC        E8 E3010000         call notepad.01007594

 

查出, 入口點爲73A5

 

7. LoadPe 脫殼

 

8. Import Re 修復輸入表(在OEP 輸入剛找到的入口點73A5->自動搜索IAT->獲取輸入表->顯示無效函數-> 全部有效 ->修復轉存文件)

9. 看看脫殼成功了沒有, 查殼顯示爲Microsoft Visual C++ 7.0 Method2 [調試] 

10. 運行正常, 脫殼成功!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章