轻松手动脱壳ASPack 2.12 Alexey Solodovnikov

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
0045212F 74 2E je short 0045215F
00452131 78 2C js short 0045215F
00452133 AC lods byte ptr [esi]
00452334 |3985 45050000 cmp [ebp+545], eax
0045233A |75 24 jnz short 00452360
0045233C |57 push edi
【详细过程】
脱壳前先用PEID查壳,得出为ASPack 2.12 -> Alexey Solodovnikov加壳类型。使用OD脱壳可增强手动脱能力
00452001 > 60 pushad ; pushhad关键字 F8跳过
00452134 3C E8 cmp al, 0E8
00452136 74 0A je short 00452142
00452138 EB 00 jmp short 0045213A
00452152 8906 mov [esi], eax
00452154 83C3 05 add ebx, 5
00452157 83C6 04 add esi, 4
0045215A 83E9 05 sub ecx, 5
0045215D ^ EB CE jmp short 0045212D ; 不能让他朝回跳到0045212D,要在下一句处下断按F4
0045215F 5B pop ebx ; 按F4
00452160 5E pop esi
00452177 8BB5 52010000 mov esi, [ebp+152]
0045217D C1F9 02 sar ecx, 2
00452180 F3:A5 rep movs dword ptr es:[edi], dword p>
文章标题】: 轻松手动脱壳ASPack 2.12 -> Alexey Solodovnikov
【文章作者】: cnstars
【作者邮箱】: cnstars@
【作者QQ号】: 8202655
【软件名称】: *******投票机
【软件大小】: 0.835M
【下载地址】: 自己搜索下载
00452182 8BC8 mov ecx, eax
00452184 83E1 03 and ecx, 3
00452187 F3:A4 rep movs byte ptr es:[edi], byte ptr>
2、向未执行过的代码跳的语句按F8,往已执行过的代码跳的语句在下一句处按F4。脱壳过程中一定不能让它往执行过的代码区跳,想办法跳出循环圈,在回跳语句的下一句处按F4跳出。
--------------------------------------------------------------------------------
00452189 5E pop esi
0045218A 68 00800000 push 8000
0045218F 6A 00 push 0
00452191 FFB5 52010000 push dword ptr [ebp+152]
00452161 59 pop ecx
00452162 58 pop eax
00452163 EB 08 jmp short 0045216D
………………………进JMP后一路F8下来……………………
0045214B 24 00 and al, 0 ; 按F4
0045214D C1C0 18 rol eax, 18
00452150 2BC3 sub eax, ebx
0045200B 45 inc ebp
0045200C 55 push ebp
0045200D C3 retn ;第一次返回时,跳转到00452008
0045200E E8 01000000 call 00452014 ;只有00452002和此处是关键CALL按F7进入,其他F8跳过
………………………进CALL后一路F8下来……………………
0045212D 0BC9 or ecx, ecx
0045233D |8BD3 mov edx, ebx
0045233F |4A dec edx
0045230F |57 push edi
00452310 |8B46 0C mov eax, [esi+C] ቤተ መጻሕፍቲ ባይዱ
00452313 |0385 22040000 add eax, [ebp+422]
00452319 |50 push eax
00452197 FF95 51050000 call [ebp+551]
0045219D 83C6 08 add esi, 8
004521A0 833E 00 cmp dword ptr [esi], 0
00452002 E8 03000000 call 0045200A ; 关键CALL F7进入
00452007 - E9 EB045D45 jmp 45A224F7
0045200C 55 push ebp
0045231A |53 push ebx
0045231B |8D85 75040000 lea eax, [ebp+475]
00452321 |50 push eax
00452322 |57 push edi
00452323 |E9 98000000 jmp 004523C0
00452328 |81E3 FFFFFF7F and ebx, 7FFFFFFF
0045232E |8B85 26040000 mov eax, [ebp+426]
0045200D C3 retn
=====进入call 0045200A代码区=====
00452008 /EB 04 jmp short 0045200E
0045200A 5D pop ebp ; fjsdmp-1.00452007(按F8,向前跳的按F8,往后跳的在下一句按F4)
0045216D 8BC8 mov ecx, eax
0045216F 8B3E mov edi, [esi]
00452171 03BD 22040000 add edi, [ebp+422]
00452144 EB 00 jmp short 00452146
00452146 803E 05 cmp byte ptr [esi], 5
00452149 ^ 75 F3 jnz short 0045213E ; 不能让他朝回跳到0045213E,要在下一句处下断按F4
………………………进PUSH后一路F8下来……………………
00452305 /75 6F jnz short 00452376
00452307 |F7C3 00000080 test ebx, 80000000
0045230D |75 19 jnz short 00452328
004521A3 ^ 0F85 1EFFFFFF jnz 004520C7 ; 不能让他朝回跳到004520C7,要在下一句处下断按F4
004521A9 68 00800000 push 8000 ; 按F4下断
00452140 ^ EB EB jmp short 0045212D ; 不能让他朝回跳到0045212D,要在下一句处下断按F4
00452142 8B06 mov eax, [esi] ; 按F4
【加壳方式】: ASPack 2.12 -> Alexey Solodovnikov
【保护方式】: ASPack 2.12 -> Alexey Solodovnikov
【编写语言】: VB
【使用工具】: OD、PEID
【操作平台】: WINXP+ SP2
【软件介绍】: *******投票机软件
0045213A 3C E9 cmp al, 0E9
0045213C 74 04 je short 00452142
0045213E 43 inc ebx
0045213F 49 dec ecx
【作者声明】: 只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!
【方法介绍】: 通常采用ASPACK自动脱壳机和OLLYDBG手动脱壳
【经验总结】: 动态调试时找到大的跳转即为OEP,然后DUMP,用ImportREC v1.6F修复输入表IAT即可。
1、在ASPACK中PUSGAD 与POPAD 成对,找到POPAD即离OEP 很近。
相关文档
最新文档