2011年8月21日星期日

VProtect 調試記錄

近段時間調試了VProtect 2.06,基本上該找的都找到了,就是修復難,正好看見Unpack論壇有人發出一些訊息,如此我也把我的調試記錄發出來了.

VProtect 2.06的OEP查找不用那麼困難,只要一個函數GetSystemTimeAsFileTime,就行了
Found intermodular calls, item 510
Address=010070F1
Disassembly=CALL DWORD PTR DS:[<&KERNEL32.GetSystemTimeAsFileTime>]
Destination=kernel32.GetSystemTimeAsFileTime
010070F1 E8 B9570500 CALL NOTEPAD_.0105C8AF

之後再在code段下內存訪問斷點,執行幾下就到OEP了,

這個殼難度不是在找OEP,而是修復輸出表,他是把代碼放在一個動態分配的內存段中,其中有一個地方

010296F0 FF15 5C800101 CALL DWORD PTR DS:[<&KERNEL32.GetProcAddress>] ; kernel32.GetProcAddress

這個殼找OEP是不難滴,硬件HOOK是浮雲,修復IAT和暗樁才是重點

没有评论:

发表评论