首页
社区
课程
招聘
脱ASPack 2.12+Crunch/PE Heuristic双层壳
发表于: 2005-5-10 21:08 4993

脱ASPack 2.12+Crunch/PE Heuristic双层壳

2005-5-10 21:08
4993
【脱文标题】:ESP定律 - 脱ASPack 2.12+Crunch/PE Heuristic双层壳一锅端

【破文作者】:KuNgBiM[DFCG]

【作者邮箱】:gb_1227@163.com

【软件名称】:VBEXEObfuscator 1.0.0.272

【软件大小】:183KB

【使用平台】:Win9x/Me/NT/2000/XP

【发布公司】:http://www.joryanick.com/

【程序简介】:Jory's VB EXE Obfuscator,Obfuscator for Visual Basic Executables Protection Tool.

【调试环境】:WinXP、Ollydbg、PEiD

【作者声明】:初学Crack,只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!

―――――――――――――――――――――――――――――――――
【脱壳过程】:

*************************************
第一层:
ASPack 2.12 -> Alexey Solodovnikov

第二层:
Crunch/PE Heuristic -> Bit-Arts
*************************************

按照以往设置,OD载入,忽略一切异常:

004B2001 >  60              pushad                         //停在这里
004B2002    E8 03000000     call VBEXEObf.004B200A         //F8一次,查看寄存器ESP值
004B2007  - E9 EB045D45     jmp 45A824F7
004B200C    55              push ebp
004B200D    C3              retn

=============寄存器==============

EAX 00000000
ECX 0012FFB0
EDX 7C92EB94 ntdll.KiFastSystemCallRet
EBX 7FFDF000
ESP 0012FFA4                             //ESP=0012FFA4
EBP 0012FFF0
ESI FFFFFFFF
EDI 7C930738 ntdll.7C930738
EIP 004B2002 VBEXEObf.004B2002

=================================

OD命令下断 hr 0012ffa4 回车,F9运行一次

004B23AF    61              popad
004B23B0    75 08           jnz short VBEXEObf.004B23BA    //断在这里,第一层壳解压完毕,F8跳!
004B23B2    B8 01000000     mov eax,1
004B23B7    C2 0C00         retn 0C
004B23BA    68 00404900     push VBEXEObf.00494000         //跳在这里,到达第2层壳入口,继续F8一次
004B23BF    C3              retn                           //再次查看寄存器ESP值

=============寄存器==============

EAX 00000000
ECX 0012FFB0
EDX 7C92EB94 ntdll.KiFastSystemCallRet
EBX 7FFDF000
ESP 0012FFC0                             //ESP=0012FFC0
EBP 0012FFF0
ESI FFFFFFFF
EDI 7C930738 ntdll.7C930738
EIP 004B23BF VBEXEObf.004B23BF

=================================

取消第一层壳内存断点 hd 0012ffa4 回车,接着下 hr 0012ffc0 回车,F9运行3次,Shift+F9一次,这时程序到达第2层壳解压尾部:

004940C4    61              popad
004940C5    5D              pop ebp
004940C6    8B85 8F220000   mov eax,dword ptr ss:[ebp+228F]
004940CC    5D              pop ebp
004940CD  - FFE0            jmp eax               ; VBEXEObf.00402660     //停在这里,00402660所指向OEP,F8一次让它跳!
004940CF    BE 8F220000     mov esi,228F
004940D4    03F5            add esi,ebp
004940D6    32C9            xor cl,cl

.................................

00402660    68 14354200     push VBEXEObf.00423514         //跳向这里,看着程序类似于VB一样的程序入口,赶快Dump整个进程!
00402665    E8 EEFFFFFF     call VBEXEObf.00402658
0040266A    0000            add byte ptr ds:[eax],al
0040266C    0000            add byte ptr ds:[eax],al
0040266E    0000            add byte ptr ds:[eax],al
00402670    3000            xor byte ptr ds:[eax],al
00402672    0000            add byte ptr ds:[eax],al
00402674    58              pop eax
00402675    0000            add byte ptr ds:[eax],al
00402677    0040 00         add byte ptr ds:[eax],al
0040267A    0000            add byte ptr ds:[eax],al
0040267C    0C BB           or al,0BB
0040267E    DB              ???                                        ; 未知命令
0040267F    0B29            or ebp,dword ptr ds:[ecx]
00402681    50              push eax
00402682    7B 44           jpo short VBEXEObf.004026C8

脱壳修复:

运行ImportREC,找到“VBEXEObfuscator.exe”进程,OEP栏填上 00002660 ,自动搜索IAT,获取输入表(函数全部为真),修复抓取文件,
运行脱壳后的程序,成功,Fix Dump~~

程序为Microsoft Visual Basic 5.0 / 6.0编译

〓本文完〓

==========================

Unpacked by KuNgBiM[DFCG]

      2005-05-10

==========================

文章相关:
附件:VBEXEObfuscator.rar

[课程]Linux pwn 探索篇!

收藏
免费 0
支持
分享
最新回复 (9)
雪    币: 898
活跃值: (4039)
能力值: ( LV9,RANK:3410 )
在线值:
发帖
回帖
粉丝
2
鼓励一下
2005-5-10 21:58
0
雪    币: 356
活跃值: (51)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
好看。学习
2005-5-10 22:05
0
雪    币: 93908
活跃值: (200199)
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
4
学习
2005-5-10 22:12
0
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
模仿一次 呵呵
2005-5-10 22:22
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
模仿都不行, 呵呵
到这里:
“取消第一层壳内存断点 hd 0012ffa4 回车,接着下 hr 0012ffc0 回车,F9运行3次,Shift+F9一次,这时程序到达第2层壳解压尾部”

我机上
第2次F9运行后就终止了,是不是其它有暗桩
2005-5-11 08:44
0
雪    币: 222
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
最初由 twklzw 发布
模仿都不行, 呵呵
到这里:
“取消第一层壳内存断点 hd 0012ffa4 回车,接着下 hr 0012ffc0 回车,F9运行3次,Shift+F9一次,这时程序到达第2层壳解压尾部”

我机上
........


因为某插件原因致使用 OD 调试过程中在处理 Stamin32.DLL 函数块时出现错误,你可试着将插件减至最少再用 OD 下断 bp LoadLibraryA 数次的 F9 将可看到可以顺利处理 Stamin32.DLL 函数块直到最后的 "MSVBVM60.DLL" 函数块,我是这样做到的.至于是哪一个插件出现这样的冲突,有兴趣的朋友可以一个个查找,
2005-5-11 16:17
0
雪    币: 603
活跃值: (617)
能力值: ( LV12,RANK:660 )
在线值:
发帖
回帖
粉丝
8
恩,找到了,是IsDebug.dll这个插件。
2005-5-11 17:47
0
雪    币: 2074
活跃值: (262)
能力值: ( LV9,RANK:220 )
在线值:
发帖
回帖
粉丝
9
厉害厉害
2005-5-11 19:08
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
学习!!!
2005-5-11 22:00
0
游客
登录 | 注册 方可回帖
返回
//