⑴ 怎麼脫E語言程序的VMP殼
想要脫VMP的殼,首要工作當然是要找一個強OD。至於是什麼版本的OD自己多試驗幾個,網上有很多,一般來說只要載入了你想脫的VMP加殼程序不關閉都可以。
其次,就是StrongOD.dll這個插件了,現在用的比較多的就是海風月影。下載回來後復制到你的OD程序所在的文件夾裡面的plugin里。StrongOD的設置選項搞不懂就全部打鉤。
接下來要做的工作就是搞清楚我們要脫殼的程序編程的語言了,可以用PEID或者fastscanner查看,如果在這里看不到也可以在OD載入以後通過裡面的字元串判斷了。例如VB的程序會出現MSVB----/VC的會出現MSVC---等等。這些都是程序運行所需要的windows鏈接文件。
做完這些預備工作接下來當然是用OD載入文件。文件載入後在反匯編窗口CTRL+G搜索VirtualProtect(注意V跟P要大寫,至於為什麼要搜索這個別問我)。一般來說搜索的結果會出現以下的類似:
7C801AE3 E8 75FFFFFF call kernel32.VirtualProtectEx
我們在這里下F2斷點。然後F9運行到我們下的這個斷點。接下來我們就要注意觀察堆棧窗口了。一般來說當我們F9運行到我們上面下的斷點的時候在堆棧窗口會出現以下類似:
0012F66C 00401000|Address = TradeCen.00401000
0012F670 000280D1|Size = 280D1 (164049.)
0012F674 00000004|NewProtect = PAGE_READWRITE
0012F678 0012FF98pOldProtect = 0012FF98
我們要注意觀察的就是在接下來我們F9運行的時候,ADDRESS和NEWPROTECT這兩行的變化。按F9-速度別太快,直到NewProtect項變為PAGE_READONLY,這時候程序就釋放完畢了。
0012F66C 0042A000|Address = TradeCen.0042A000
0012F670 000069DE|Size = 69DE (27102.)
0012F674 00000002|NewProtect = PAGE_READONLY
0012F678 0012FF98pOldProtect = 0012FF98
現在可以取消剛才我們下的斷點了。接下來就是找OEP了。找OEP的時候我個人的一個經驗就是OEP一般就在接近上面的ADDRESS地址的附近。例如上面的地址是0042A000,我一般就在這個基礎上減到420000搜索程序的特徵段,當然我們也可以直接跳到401000開始搜索。雖然我們搜索的范圍比較大,但是因為我們搜索的是命令序列,所以工作量還不是很大。
CTRL+G--上面的地址,然後CTRL+S 查找命令序列。命令序列的內容就是我們用查到的編程語言的特徵段。我們可以在特徵段裡面選擇兩三句固定不變的命令查找。例如VC++6.0的特徵段是:
0046C07B U>55 push ebp
0046C07C 8BEC mov ebp,esp
0046C07E 6A FF push -1
0046C080 68 18064C00 push UltraSna.004C0618
0046C085 68 F8364700 push UltraSna.004736F8
0046C08A 64:A1 00000000 mov eax,dword ptr fs:[0]
0046C090 50 push eax
0046C091 64:8925 00000000mov dword ptr fs:[0],esp
0046C098 83EC 58 sub esp,58
0046C09B 53 push ebx
0046C09C 56 push esi
0046C09D 57 push edi
我們可以只搜索前三條命令。找到符合前三條命令的,我們在對照接下來的命令。只要命令相符那這個地址八九不離十就是OEP了。如果在ADDRESS地址附近找不到OEP,那就只好用笨辦法,從401000開始找吧。
找到OEP地址後,我們在OEP處點滑鼠右鍵《此處為新EIP》。接下來就可以mp啦。通常選擇OD的mp插件脫殼要好點,用loadpe脫殼後要麼程序不運行要麼乾脆沒脫。用OD的mp插件脫殼的時候,脫殼窗口下面的(重建輸入表)項前面的勾一定要去掉。
⑵ vmp加殼這個怎麼用呢。我是給易語言編譯的EXE加殼。該怎麼家 。有看到VMP模塊。。不知道怎麼用能詳細解答
VMP模塊我沒記錯的話應該是寫的子程序開頭寫上模塊的VMP保護標記開始命令,子程序的結尾寫上VMP保護標記結尾...如圖
以前看人家輔助的源碼,每一個子程序都有這命令.....
至於脫殼的問題你自己試試吧。我沒有試過VMP模塊能不能用軟體自動脫殼
⑶ 易語言VMP SDK保護代碼模塊怎麼用
你可以在程序編譯好以後,用VMP加殼工具加殼。。。