ACProtect Professional 1.3C 主程序脫殼(1)(圖)
發(fā)布日期:2022-01-18 08:50 | 文章來源:CSDN
脫殼過程感覺與Unpacking Saga的那個(gè)UnpackMe沒有太大的不同。最明顯的一點(diǎn)是,其中的異常多了很多。大部分是固定模式的int 3解碼。因?yàn)橐婚_始打算全程跟,所以一邊跟一邊修改去除junk code的IDC script,寫OllyScript腳本,并用WinHex把解出的代碼貼到ACProtect_Fixed.exe,在IDA中用Load File|Reload the input file加載后對(duì)照。
如果在OllyDbg110C下忽略所有異常,運(yùn)行時(shí)報(bào):
1. 關(guān)于int 3解碼
殼中有大量的int 3解碼,一邊執(zhí)行一邊解。具有相同的調(diào)用模式:
在int 3的SHE中(下面的div 0異常也是同一個(gè)SEH),當(dāng)exception code為0x80000003時(shí),在Dr0-Dr3中設(shè)置了新的值,即設(shè)置了4個(gè)硬件執(zhí)行斷點(diǎn),就在緊臨int 3下面的位置。這樣執(zhí)行到這4句,會(huì)觸發(fā)4次異常。如果在這里F7過,SHE不會(huì)執(zhí)行。
當(dāng)由上面的4個(gè)斷點(diǎn)引發(fā)異常時(shí):
每次異常,會(huì)設(shè)置某個(gè)寄存器。4次異常處理必須執(zhí)行,否則寄存器中沒有正確值,下面的解碼會(huì)失敗。這樣又順便清除cracker的斷點(diǎn),是個(gè)不錯(cuò)的主意J。
結(jié)束異常處理后,開始解碼。格式是一樣的,用的register不同。這里可以得到起始地址(。
在jnz下面的地址F4,然后查看前面用于尋址的寄存器的值,減1就是解碼結(jié)束地址。
解完后跟著一個(gè)div 0異常。只有anti-debug作用,直接跳過即可。
2. 避開IAT加密
在第16個(gè)int 3的解碼過程中,隱藏了IAT加密。其實(shí)在OllyDbg的狀態(tài)欄可以看到這附近有不少dll被加載了。
有4處檢查,決定是否特殊處理。在用GetProcAddress得到API的地址后,開始檢查。是否為特殊的API?
如果在OllyDbg110C下忽略所有異常,運(yùn)行時(shí)報(bào):

1. 關(guān)于int 3解碼
殼中有大量的int 3解碼,一邊執(zhí)行一邊解。具有相同的調(diào)用模式:

在int 3的SHE中(下面的div 0異常也是同一個(gè)SEH),當(dāng)exception code為0x80000003時(shí),在Dr0-Dr3中設(shè)置了新的值,即設(shè)置了4個(gè)硬件執(zhí)行斷點(diǎn),就在緊臨int 3下面的位置。這樣執(zhí)行到這4句,會(huì)觸發(fā)4次異常。如果在這里F7過,SHE不會(huì)執(zhí)行。

當(dāng)由上面的4個(gè)斷點(diǎn)引發(fā)異常時(shí):

每次異常,會(huì)設(shè)置某個(gè)寄存器。4次異常處理必須執(zhí)行,否則寄存器中沒有正確值,下面的解碼會(huì)失敗。這樣又順便清除cracker的斷點(diǎn),是個(gè)不錯(cuò)的主意J。

結(jié)束異常處理后,開始解碼。格式是一樣的,用的register不同。這里可以得到起始地址(。

在jnz下面的地址F4,然后查看前面用于尋址的寄存器的值,減1就是解碼結(jié)束地址。

解完后跟著一個(gè)div 0異常。只有anti-debug作用,直接跳過即可。
2. 避開IAT加密
在第16個(gè)int 3的解碼過程中,隱藏了IAT加密。其實(shí)在OllyDbg的狀態(tài)欄可以看到這附近有不少dll被加載了。

有4處檢查,決定是否特殊處理。在用GetProcAddress得到API的地址后,開始檢查。是否為特殊的API?

上一頁12 3 下一頁 閱讀全文
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。
相關(guān)文章