今天给大家用一软件打包了CCDebuger 的 OllyDBG 入门系列教程,便下了个打包软件,由于有时间和功能限制,便想破解它,于是便准备工具了,
PEID载入显示UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus & Laszlo [Overlay],心里想简单,便手动脱壳,修复
PEID再次载入是Borland Delphi 6.0 - 7.0
奇怪的是运行出错,我以为自己手脱错了,便拿脱壳机脱,结果一样,
把脱后的文件载入OD提示有压缩代码。。。我搞不定请大家帮忙!
以下是我的手脱过程。
00655FD0 > 60 pushad ; OD载入停在这
00655FD1 BE 00105900 mov esi, 00591000
00655FD6 8DBE 0000E7FF lea edi, [esi+FFE70000]
00655FDC 57 push edi
00655FDD 83CD FF or ebp, FFFFFFFF ; 下ESP硬件断
00655FE0 EB 10 jmp short 00655FF2
00655FE2 90 nop
下断后F9到这里
006560B7 89F7 mov edi, esi ; 停在这里了,先删除硬件断点,以下按F8过
006560B9 B9 589E0000 mov ecx, 9E58
006560BE 8A07 mov al, [edi]
006560C0 47 inc edi
006560C1 2C E8 sub al, 0E8
006560C3 3C 01 cmp al, 1
006560C5 ^ 77 F7 ja short 006560BE ; 跳转已实现,要往回跳
006560C7 803F 24 cmp byte ptr [edi], 24 ; F4
006560CA ^ 75 F2 jnz short 006560BE
006560CC 8B07 mov eax, [edi]
006560CE 8A5F 04 mov bl, [edi+4]
006560D1 66:C1E8 08 shr ax, 8
006560D5 C1C0 10 rol eax, 10
006560D8 86C4 xchg ah, al
006560DA 29F8 sub eax, edi
006560DC 80EB E8 sub bl, 0E8
006560DF 01F0 add eax, esi
006560E1 8907 mov [edi], eax
006560E3 83C7 05 add edi, 5
006560E6 89D8 mov eax, ebx
006560E8 ^ E2 D9 loopd short 006560C3 ; 循环已实现,要往回跳
006560EA 8DBE 00102500 lea edi, [esi+251000] ; F4
006560F0 8B07 mov eax, [edi]
006560F2 09C0 or eax, eax
006560F4 74 3C je short 00656132
006560F6 8B5F 04 mov ebx, [edi+4]
006560F9 8D8430 9CA62500 lea eax, [eax+esi+25A69C]
00656100 01F3 add ebx, esi
00656102 50 push eax
00656103 83C7 08 add edi, 8
00656106 FF96 B4A72500 call [esi+25A7B4]
0065610C 95 xchg eax, ebp
0065610D 8A07 mov al, [edi]
0065610F 47 inc edi
00656110 08C0 or al, al
00656112 ^ 74 DC je short 006560F0
00656114 89F9 mov ecx, edi
00656116 57 push edi
00656117 48 dec eax
00656118 F2:AE repne scas byte ptr es:[edi]
0065611A 55 push ebp
0065611B FF96 B8A72500 call [esi+25A7B8]
00656121 09C0 or eax, eax
00656123 74 07 je short 0065612C
00656125 8903 mov [ebx], eax
00656127 83C3 04 add ebx, 4
0065612A ^ EB E1 jmp short 0065610D ; 要往回跳
0065612C FF96 BCA72500 call [esi+25A7BC] ; F4
00656132 61 popad ; 出口要接近了
00656133 - E9 C418EFFF jmp 005479FC ; 看见这里没?按道理这里跳出去的就是OEP了
00656138 50 push eax
00656139 61 popad ; 奇怪的是这里也有一个,我没有管这个
0065613A 65:0060 61 add gs:[eax+61], ah
0065613E 65:0010 add gs:[eax], dl
00656141 F75400 00 not dword ptr [eax+eax]
上面的跳转来到这里
005479FC 55 push ebp ;在这里我DUMP之
005479FD 8BEC mov ebp, esp
005479FF 83C4 F0 add esp, -10
00547A02 B8 AC725400 mov eax, 005472AC
00547A07 E8 3CF6EBFF call 00407048
00547A0C EB 04 jmp short 00547A12
00547A0E 55 push ebp
00547A0F 03A7 4433C9B2 add esp, [edi+B2C93344]
00547A15 01A1 7C615300 add [ecx+53617C], esp
00547A1B E8 14F3F2FF call 00476D34
00547A20 8B15 B8E75400 mov edx, [54E7B8] ; EasyCHM.00550CA0
00547A26 8902 mov [edx], eax
00547A28 EB 04 jmp short 00547A2E
00547A2A 75 13 jnz short 00547A3F
00547A2C A2 14A1B8E7 mov [E7B8A114], al
00547A31 54 push esp
00547A32 008B 00E83A35 add [ebx+353AE800], cl
00547A38 F3: prefix rep:
00547A39 FFEB jmp far ebx ; 非法使用寄存器
00547A3B 06 push es
00547A3C 55 push ebp
00547A3D 44 inc esp
00547A3E 55 push ebp
00547A3F 03A8 09A1B8E7 add ebp, [eax+E7B8A109]
00547A45 54 push esp
00547A46 008B 008B10FF add [ebx+FF108B00], cl
00547A4C 92 xchg eax, edx
00547A4D 8800 mov [eax], al
00547A4F 0000 add [eax], al
00547A51 EB 04 jmp short 00547A57
00547A53 55 push ebp
00547A54 03A7 44E810F1 add esp, [edi+F110E844]
00547A5A FFFF ??? ; 未知命令
00547A5C EB 04 jmp short 00547A62
00547A5E 75 13 jnz short 00547A73
00547A60 A2 14E8714B mov [4B71E814], al
00547A65 EF out dx, eax
00547A66 FFEB jmp far ebx ; 非法使用寄存器
00547A68 06 push es
00547A69 55 push ebp
00547A6A 44 inc esp
00547A6B 55 push ebp
00547A6C 03A8 09A140E9 add ebp, [eax+E940A109]
00547A72 54 push esp
00547A73 008B 00E8C56A add [ebx+6AC5E800], cl
00547A79 F3: prefix rep:
00547A7A FFEB jmp far ebx ; 非法使用寄存器
00547A7C 04 55 add al, 55
00547A7E 03A7 44A140E9 add esp, [edi+E940A144]
00547A84 54 push esp
00547A85 008B 00BAE87A add [ebx+7AE8BA00], cl
.......................省略
最后IMPORTREC修复
刚学脱壳,大家不要鸡蛋我啊,慢慢学先
软件下载地址
http://www.qwerks.com/download/7297/echmsetup.exe ,随便提供给那些问我打包工具那里下载的朋友
[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法