ASPRTECT1.2X加殼的Delphi Application Peeper Pro 2.3.1.9 脫殼(簡單) (3千字)

看雪資料發表於2002-04-06

ASPRTECT1.2X加殼的Delphi Application Peeper Pro 2.3.1.9 脫殼(簡單)
crack by fwnl
原版下載:
http://www.devrace.de/files/dap_pro.zip
程式簡介:
Delphi Application Peeper 可以幫助你除錯Delphi 或 CBuilder 寫的程式,它可以在執行時得到元件的物件資料.聽Sam.com大哥說這個東西對破解有用.
破解工具:
trw2000, superbpm,Import REConstructor v1.4.2+ ,UltraEdit32, prodump

  程式是用Aspr1.22(FI 249查的,很有可能版本更高)加殼,所以caspr不能脫此殼,於是就只有手動來脫了。
一.找入口點

    由於是delphi程式,所以利用快速尋找aspr入口的方法:

    執行DAP_Pro.exe,用prodump選dump(full)脫殼,存為dump.exe。接著用UltraEdit32開啟dump.exe,ALT+F3,填runtime,選中查詢ASCⅡ,執行搜尋,搜到後,向上查詢離runtime最近的機器碼為55 8B EC的地方就是程式的oep,而在DAP_Pro.exe裡這個位置在offset:00088730處,用peditor的flc功能將它轉換為virtual address就是00489130----oep。

二.用trw2000初步脫殼

  下面要在入口處脫殼,開啟SuperBPM,點erase,用trw載入DAP_Pro.exe,下g 489130,接著下pedump脫出程式.

三.修復import table

  開啟原加殼程式,在Import REConstructor v1.4.2+ 的 Attach to an Active Process 視窗中選取DAP_Pro.exe的程式,然後在下方的oep處填入00089130,點IAI AutoSearch,再點Get Imports 然後點Show Invalid,在Imported Functions Found視窗裡的無效地址上點滑鼠右鍵,選Trace Leve11(disasm),再點show invaids,發現還有幾個沒有修復,再次在那幾個沒有修復的地址上點滑鼠右鍵.
  選中Plugin Tracer(Asprotect 1.2X Emul),再點show invaids應發現所有的dll顯示 valid:Yes了。然後點Fix Dump,選中你用trw2000 pedump出的檔案修復.
  這樣修復後的程式在啟動時還會出現一個出錯對話方塊.於是我們要看程式在那裡出錯,然後再用原版的對比看.


四.修復脫殼後的程式
用trw2000載入脫出的程式,下bpx messageboxexa ,然後F5返回程式將被斷下,下PMODULE返回程式可見如下:
0167:0044E580 84C0            TEST    AL,AL
0167:0044E582 7406            JZ      0044E58A          //改成7423跳過出錯對話方塊
0167:0044E584 81CB00001000    OR      EBX,00100000
0167:0044E58A 33C9            XOR      ECX,ECX
0167:0044E58C 55              PUSH    EBP
0167:0044E58D 6809E64400      PUSH    DWORD 0044E609
0167:0044E592 64FF31          PUSH    DWORD [FS:ECX]
0167:0044E595 648921          MOV      [FS:ECX],ESP
0167:0044E598 53              PUSH    EBX
0167:0044E599 57              PUSH    EDI
0167:0044E59A 56              PUSH    ESI
0167:0044E59B 8B45FC          MOV      EAX,[EBP-04]
0167:0044E59E 8B4024          MOV      EAX,[EAX+24]
0167:0044E5A1 50              PUSH    EAX
0167:0044E5A2 E86589FBFF      CALL    `USER32!MessageBoxA` //出錯對話方塊
0167:0044E5A7 8945F8          MOV      [EBP-08],EAX


最後我這樣改不知是否正確,我隨便試了一下,好像沒發現什麼不對,因我不會用這個軟體,所以就不知是不是真的改好了,請大家測試一下,脫了殼的程式下載:http://wind.prohosting.com/fwnl/fwnl/fwnl.rar
用最新的WINRAR解壓縮,

後記:我寫文章的目的是想幫助初學脫ASPR朋友,因為我剛學脫ASPR時真的太幸苦了,其實ASPR的真正的難點在RSA1024上,而不是如何脫殼。希望有大客能想出好辦法.
最後我要忠心的謝謝zombieys大哥,沒有他的幫助我是不可能學會脫ASPR的.
祝各位朋友開心快樂.
                                                                            fwnl
                                                                  Beginner's Cracking Group                                                                    The Free Cracking Group Of China
                                                                          2002.4.6
                                                                            長沙

相關文章