002 PECompact 1.84
文章目錄
- 查殼
- 單步跟蹤到OEP
- 修復(fù)導(dǎo)入表
查殼
今天來脫一下PECompact 1.84這個殼,脫這個殼的目的是為了了解一個技巧——當(dāng)遇到無法向下跟隨的時候,可以找到附近沒有實現(xiàn)的大跳轉(zhuǎn),下斷點繼續(xù)跟蹤。
單步跟蹤到OEP
接下來OD載入這個程序,采用單步跟蹤的方法脫掉這個壓縮殼。
當(dāng)程序執(zhí)行到這個位置的時候,這里有一個jmp是往上跳的,按照常規(guī)的單步跟蹤脫殼的方法,我們應(yīng)該直接在下一條命令處F4,讓他執(zhí)行到下一條命令。但是當(dāng)你在下一條命令直接F4的時候,程序會直接跑飛。
這個時候就要用到剛才的技巧了,在附近尋找一個沒有實現(xiàn)的大跳轉(zhuǎn),一般是在上面。一直往上拉,
在程序上面我們看到一個je,后面的OpCode的offset代表這是一個大跳轉(zhuǎn),而且是沒有實現(xiàn)的。
那么我們就可以直接跟進(jìn)去,下斷點,讓程序斷下,然后繼續(xù)單步跟蹤。
這里也是一個大跳轉(zhuǎn),按照剛才的方法,回車跟進(jìn)去下斷點,F9跑起來,就到了這里。繼續(xù)往下跟
跟到這里的時候,同樣,回車跟進(jìn)去下斷點F9
這里還是一樣的套路,繼續(xù)跟
當(dāng)跟到這里的時候,可以知道馬上就到了OEP了,和大部分殼的套路一樣,會push一個地址,然后返回回去。
接著就來到了熟悉的OEP。
修復(fù)導(dǎo)入表
然后在OD里dump文件,然后修復(fù)導(dǎo)入表,輸入OEP,自動查找IAT,獲取輸入表,轉(zhuǎn)儲文件。
脫殼后的程序正常運(yùn)行,這個殼也就完成了。當(dāng)然了,這個殼用ESP定律也是可以秒脫的,我這里純粹是為了練習(xí)這個技巧而已。
需要相關(guān)文件可以到我的Github下載:https://github.com/TonyChen56/Unpack-Practice
總結(jié)
以上是生活随笔為你收集整理的002 PECompact 1.84的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 001 FSG 1.33变形壳
- 下一篇: 003 PECompact 2.55