ACProtect ——脱壳
這個程序是自己手動寫的一個小程序,然后用ACProtect加殼工具手動加科之后再脫的,之前在網上看過一些資料,在脫ACProtect’殼的時候,需要忽略異常什么的,但是我在脫這個殼的時候并沒有碰到異常的情況,接下來就介紹一下脫殼過程。
0x00 查殼
0x01程序運行
0x02調試脫殼
此次脫殼使用的方法是內存鏡像法,首先在數據段下斷點,運行之后斷下來,之后在text段下斷點之后再運行(把數據段的斷點取消),段下來之后就來到OEP:
到達OEP之后,可以先檢查一下IAT表是否正常,當然檢查IAT表是否正常這一步操作,也可以在修正轉儲的時候進行,這里就行查看主要是檢查IAT表是否正常(有沒有被加密)
可以很清晰的看出,這個時候的IAT表是異常的,也就是說IAT表是被加密過的,所以現在的問題就是修復IAT表,也就是相當于在與加密殼戰斗,結合之前的幾篇帖子的經驗,在加密殼的脫殼過程中有三個地址是必要的:
1:獲取源IAT表的地址
2:修改IAT表的地址
3:OEP
OEP我們已經找到,現在的任務就是查找剩下的兩個地址,還是老辦法,在IAT表里邊下硬件寫入斷點:
也就是說現在我們已經找到修改IAT表的地址,接下來的任務就是找源IAT地址,根據之前的經驗可以知道,獲取源IAT的地址應該就在附近,我們產生嘗試調試一下:
所以 現在獲取源函數地址的地址也已經找到,所以下一步就是寫腳本脫殼了:
到了OEP之后,直接dump,脫殼就好了.
總結
以上是生活随笔為你收集整理的ACProtect ——脱壳的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 用MySQL后电脑频繁蓝屏_电脑容易蓝屏
- 下一篇: 丁磊简历(图)