Protection Plus V4.X 脫殼――SoftwareKey V1.1 主程式
Protection Plus V4.X 脫殼――SoftwareKey V1.1 主程式
下載地址: http://www.softwarekey.com/downloads/TrialCreator/TrialCreatorSetup.exe
軟體大小: 5.5 M
【軟體簡介】:Trial Creator, Protection PLUS, and Instant SOLO provide you with a full suite of tools to demo, protect, sell and manage your software products.
【作者宣告】:只是感興趣,沒有其他目的。失誤之處敬請諸位大俠賜教!
【除錯環境】:WinXP、Ollydbg、PEiD、LordPE、ImportREC
―――――――――――――――――――――――――――――――――
【脫殼過程】:
剛才收到Concept Software公司的宣傳信“From SoftwareKey.com: Create 30 day trial software at no cost to you”,呵呵,於是下載一個SoftwareKey看看。
TrialCreator.exe 用PEiD看是“Protection Plus 4.x->Concept Software”,不常見,姑且脫之吧。
感覺和PC Guard、Visual Protect等殼相似,脫殼難度:易
―――――――――――――――――――――――――――――――――
一、Magic Jump,避開IAT加密
設定Ollydbg忽略除了“INT3中斷”之外的所有其它異常選項。
005C3030 50 push eax//進入OD後停在這
005C3031 60 pushad
005C3032 29C0 sub eax,eax
005C3034 64:FF30 push dword ptr fs:[eax]
005C3037 E8 00000000 call TrialCre.005C303C
F9 執行,程式中斷在INT3異常處
00C62A51 CC int3
00C62A52 66:3D 0400 cmp ax,4
00C62A56 74 25 je short 00C62A7D
現在下斷:BP GetModuleHandleA Shift+F9執行,斷下。取消斷點,返回程式
00C6106C FF15 0410C700 call dword ptr ds:[C71004]; kernel32.GetModuleHandleA
00C61072 85C0 test eax,eax//返回這裡
00C61074 894424 14 mov dword ptr ss:[esp+14],eax
00C61078 75 13 jnz short 00C6108D
00C6107A 56 push esi
00C6107B FF15 9C10C700 call dword ptr ds:[C7109C]
00C61081 85C0 test eax,eax
00C61083 894424 14 mov dword ptr ss:[esp+14],eax
00C61087 0F84 92000000 je 00C6111F
00C6108D 8B4424 18 mov eax,dword ptr ss:[esp+18]
00C61091 8B7D 08 mov edi,dword ptr ss:[ebp+8]
00C61094 C74424 1C 00000000 mov dword ptr ss:[esp+1C],0
00C6109C 8B08 mov ecx,dword ptr ds:[eax]
00C6109E 8B45 00 mov eax,dword ptr ss:[ebp]
00C610A1 03F9 add edi,ecx
00C610A3 85C0 test eax,eax
00C610A5 76 49 jbe short 00C610F0
00C610A7 8D75 0C lea esi,dword ptr ss:[ebp+C]
00C610AA 8B06 mov eax,dword ptr ds:[esi]
00C610AC 3D 00000080 cmp eax,80000000
00C610B1 73 04 jnb short 00C610B7
00C610B3 03D8 add ebx,eax
00C610B5 EB 06 jmp short 00C610BD
00C610B7 8D98 00000080 lea ebx,dword ptr ds:[eax+80000000]
00C610BD 8A4E 04 mov cl,byte ptr ds:[esi+4]
00C610C0 8B5424 14 mov edx,dword ptr ss:[esp+14]
00C610C4 51 push ecx
00C610C5 8B4C24 1C mov ecx,dword ptr ss:[esp+1C]
00C610C9 53 push ebx
00C610CA 52 push edx
00C610CB E8 A0000000 call 00C61170//進入!★
00C610D0 85C0 test eax,eax
00C610D2 74 67 je short 00C6113B
00C610D4 8B5C24 24 mov ebx,dword ptr ss:[esp+24]
00C610D8 8907 mov dword ptr ds:[edi],eax//正確的函式寫入
00C610DA 8B4424 1C mov eax,dword ptr ss:[esp+1C]
00C610DE 8B4D 00 mov ecx,dword ptr ss:[ebp]
00C610E1 83C7 04 add edi,4
00C610E4 40 inc eax
00C610E5 83C6 05 add esi,5
00C610E8 3BC1 cmp eax,ecx
00C610EA 894424 1C mov dword ptr ss:[esp+1C],eax
00C610EE 72 BA jb short 00C610AA
00C610F0 8B45 00 mov eax,dword ptr ss:[ebp]
00C610F3 8B7C24 10 mov edi,dword ptr ss:[esp+10]
00C610F7 8D0C28 lea ecx,dword ptr ds:[eax+ebp]
00C610FA 8D6C81 0C lea ebp,dword ptr ds:[ecx+eax*4+C]
00C610FE 8B4D 04 mov ecx,dword ptr ss:[ebp+4]
00C61101 85C9 test ecx,ecx
00C61103 8D45 04 lea eax,dword ptr ss:[ebp+4]
00C61106 0F85 5BFFFFFF jnz 00C61067//迴圈
00C6110C 57 push edi
00C6110D E8 F38C0000 call 00C69E05
00C61112 83C4 04 add esp,4
00C61115 5F pop edi
00C61116 5E pop esi
00C61117 5D pop ebp
00C61118 5B pop ebx
00C61119 83C4 10 add esp,10
00C6111C C2 0400 retn 4
――――――――――――――――――――――――
進入00C610CB call 00C61170
00C61170 8B4424 08 mov eax,dword ptr ss:[esp+8]
00C61174 8B4C24 04 mov ecx,dword ptr ss:[esp+4]
00C61178 56 push esi
00C61179 50 push eax
00C6117A 51 push ecx
00C6117B FF15 0810C700 call dword ptr ds:[C71008]; kernel32.GetProcAddress
00C61181 8B5424 10 mov edx,dword ptr ss:[esp+10]
00C61185 8BF0 mov esi,eax
00C61187 81E2 FF000000 and edx,0FF
00C6118D 8D42 FF lea eax,dword ptr ds:[edx-1]
00C61190 83F8 03 cmp eax,3
00C61193 77 73 ja short 00C61208//Magic Jump 改為JMP ★
把00C61193處改為JMP就能得到未被破壞的輸入表了。這個殼不加密VB的msvbvm50.dll和msvbvm60.dll函式。
另外:用ImportREC的追蹤層次3也能得到輸入表。
―――――――――――――――――――――――――――――――――
二、走至OEP、Dump,完成脫殼
這個殼沒有自校驗。改好Magic Jump之後就可以Ctrl+F在當前位置下搜尋命令:xchg dword ptr ss:[esp],eax
在00C62F12處,下斷,F9執行,斷下。
00C62F00 8B4424 04 mov eax,dword ptr ss:[esp+4]
00C62F04 8B6424 08 mov esp,dword ptr ss:[esp+8]
00C62F08 894424 20 mov dword ptr ss:[esp+20],eax
00C62F0C 29C0 sub eax,eax
00C62F0E 64:8F00 pop dword ptr fs:[eax]
00C62F11 61 popad
00C62F12 870424 xchg dword ptr ss:[esp],eax; TrialCre.0047F07B
00C62F15 C3 retn//飛向光明之巔!:-)
―――――――――――――――――――――――
0047F07B 55 push ebp//用LordPE糾正ImageSize後完全DUMP這個程式
0047F07C 8BEC mov ebp,esp
0047F07E 6A FF push -1
0047F080 68 300D5300 push TrialCre.00530D30
0047F085 68 00294800 push TrialCre.00482900
0047F08A 64:A1 00000000 mov eax,dword ptr fs:[0]
0047F090 50 push eax
0047F091 64:8925 00000000 mov dword ptr fs:[0],esp
0047F098 83EC 58 sub esp,58
0047F09B 53 push ebx
0047F09C 56 push esi
0047F09D 57 push edi
0047F09E 8965 E8 mov dword ptr ss:[ebp-18],esp
0047F0A1 FF15 20435200 call dword ptr ds:[524320]; kernel32.GetVersion
得到dumped.exe後發現程式圖示不見了,如果就這樣修復輸入表則程式是無法執行的,提示不是有效的程式。
用LordPE開啟dumped.exe,看見最後1個區段的虛擬大小和物理大小都是0,參考原程式把其全部改為00042000
執行ImportREC,選擇這個程式。把OEP改為0007F07B,點“IAT AutoSearch”,點“Get Import”。
FixDump,再用LordPE重建PE簡單最佳化一下。正常執行!
―――――――――――――――――――――――――――――――――
, _/
/| _.-~/ \_ , 青春都一晌
( /~ / \~-._ |\
`\\ _/ \ ~\ ) 忍把浮名
_-~~~-.) )__/;;,. \_ //'
/'_,\ --~ \ ~~~- ,;;\___( (.-~~~-. 換了破解輕狂
`~ _( ,_..--\ ( ,;'' / ~-- /._`\
/~~//' /' `~\ ) /--.._, )_ `~
" `~" " `" /~'`\ `\\~~\
" " "~' ""
UnPacked By 巢水工作坊――fly [OCN][FCG][NUKE][DCM]
2004-05-05 17:30 立夏
相關文章
- 對Crunch v1.1主程式檔案的脫殼方法 ---ljtt2000-11-30
- SoftDefender主程式脫殼2015-11-15
- ☆Steel
Box☆脫殼――taos的New Protection2004-12-13
- International CueClub主程式脫殼(Softwrap殼)2004-09-12
- ExeStealth 常用脫殼方法 + ExeStealth V2.72主程式脫殼2015-11-15
- Armadillo 3.6主程式脫殼2015-11-15
- EncryptPE
2003.5.18 主程式脫殼2004-06-19
- 壹次脫殼法――Armadillo 雙程式標準殼 快速脫殼2015-11-15
- Alex
Protector V1.0 脫殼――alexprot.exe 主程式2004-10-17
- XcR V0.11 脫殼――XcR.ExE 主程式2015-11-15
- DAEMON Protect 0.6.7脫殼――protect beta-last.exe主程式2015-11-15AST
- 用Ollydbg快速手脫Krypton 0.5加殼程式――Krypton主程式
等2015-11-15
- 對Crunch v1.1加殼程式的手動脫殼及反跟蹤程式碼的一點分析
(15千字)2000-10-02
- Lock98主程式脫殼筆記 (1千字)2015-11-15筆記
- PeX V0.99b脫殼――PeX.exe主程式2015-11-15
- VGCrypt PE Encryptor V0.75脫殼――Vgcrypt.exe
主程式2015-11-15GC
- ACProtect V1.1主程式2015-11-15
- 用Arm3.75加殼的cc
版+iat亂序主程式的脫殼 (1)2004-10-02
- 幻影 V2.33 脫殼+修復――dbpe.exe主程式2015-11-15
- 偽 SVK Protector 1.32 脫殼+修復――SVK Protector
DEMO 1.32 主程式2015-11-15
- Visual Protect V3.54 脫殼 ―― VisualProtect.exe
主程式2015-11-15
- 脫殼----對用pecompact加殼的程式進行手動脫殼
(1千字)2000-07-30
- 殼的工作原理脫殼2013-04-10
- [翻譯]利用程式碼注入脫殼2015-11-15
- VBExplorer.exe脫殼教程
附脫殼指令碼2015-11-15指令碼
- 國慶節大家好!送個小甜餅給大家 ----- 有關Crunch v1.1加殼程式的ProcDump脫殼Script
(1千字)2000-10-02
- XDos v1.1~Dos的外殼程式 (9千字)2015-11-15
- ACProtect 1.21專業版主程式的脫殼2015-11-15
- 明月幾時有――ASProtect
V1.31 build 06.14主程式 脫殼2004-10-01UI
- PC Guard for Win32 V5.0 DEMO 脫殼 ――
PCGWIN32.EXE 主程式2015-11-15Win32
- ASProtect 1.23 SDK之 Aspack2.12r 主程式脫殼去暗樁2015-11-15
- 以殼解殼--SourceRescuer脫殼手記破解分析2004-11-16
- Krypton
0.5加殼程式脫殼及輸入表修復記2004-10-06
- Armadillo V3.6雙程式標準殼 ------神速脫殼大法2015-11-15
- 脫殼----對用Petite2.2加殼的程式進行手動脫殼的一點分析
(5千字)2000-07-27
- 脫殼基本知識2015-11-15
- 脫中國遊戲中心大廳程式的殼2000-10-08遊戲
- 流放一文。 對Asprotect v1.1的手動脫殼的一點分析 (9千字)2000-10-27