老王最新壳试脱时遇到的问题,详细表述如下:

1.        peid查看壳时,显示区段为EPE1。怀疑是老王的壳。提示为:什么都没有。

2.        importREC查看dll时,发现只有一个系统kernel.dll,说明是加过壳的。

3.        用十六进制编辑工具打开,可以看到确实是老王的壳,并且已经提示了版本,如下:

   EPE: EncryptPE V2.2008.6.18

4.        用老王的加壳工具给十个相同的记事本加壳时发现,加壳后用od载入,其壳的入口都是不一样的。

5.        在网上查找资料,发现了一篇讲述如何脱EPE: EncryptPE V2.2008.6.18的资料,于是按照下面的思路脱壳:

   好,进入主题,怎么跳过注册框,OD载入目标程序,新版本的好象入口点方式有所改变,我们先Shift+F9直接运行起来,这时候用F12暂停,然后看堆栈

调用堆栈:     主线程3, 条目 3
地址=0012FBD0
堆栈=7116E874
函数过程 / 参数=V2200806.71171958
调用来自=V2200806.7116E86F
结构=0012FC20

点进去

7116E8B2    6A 00           push    0

我们直接在这下断,然后F9运行,点取消,断下来后F8单步走

71207989    FF92 E8000000   call    dword ptr [edx+E8]               ; 这个地方就是注册对话框了!

我们回朔到上面,从开始跟~也可以查看字符串确定位置

71207531   /0F84 B9020000   je      712077F0
71207537   |8B45 FC         mov     eax, dword ptr [ebp-4]
7120753A   |83B8 F8030000 0>cmp     dword ptr [eax+3F8], 0
71207541   |0F8E A9020000   jle     712077F0
71207547   |8B45 FC         mov     eax, dword ptr [ebp-4]
7120754A   |8B80 34030000   mov     eax, dword ptr [eax+334]
71207550   |8B90 80000000   mov     edx, dword ptr [eax+80]
71207556   |8D85 68FEFFFF   lea     eax, dword ptr [ebp-198]
7120755C   |B9 407E2071     mov     ecx, 71207E40                    ; .key

我们就找这个.key上面的那个71207531跳转地方下断吧,记得是硬件断点,直接在命令行打he 71207531,重新来F9,断下来后F8单步走

71207A54 ^\0F84 C1FEFFFF   je      7120791B                         ; 1
71207A5A    8B55 FC         mov     edx, dword ptr [ebp-4]
71207A5D    8B92 F0020000   mov     edx, dword ptr [edx+2F0]
71207A63    837A 30 64      cmp     dword ptr [edx+30], 64
71207A67 ^ 0F84 AEFEFFFF   je      7120791B                         ; 2

2个地方不跳就过注册了,刚发现有很多种改法,这个是其中一种,剩下大家自己揣摩下,看看效果吧,直接改下标志位就可以过注册了

71207A2F   /75 05           jnz     short 71207A36
71207A31   |E8 F2CBFEFF     call    711F4628                         ;
这个应该是结束程序了
71207A36   \8B45 FC         mov     eax, dword ptr [ebp-4]
71207A39    8B80 04030000   mov     eax, dword ptr [eax+304]
71207A3F    8378 0C 00      cmp     dword ptr [eax+C], 0
71207A43    74 28           je      short 71207A6D                   ;
这个应该是注册成功的话就跳向注册
71207A45    8B45 FC         mov     eax, dword ptr [ebp-4]
71207A48    8B80 04030000   mov     eax, dword ptr [eax+304]
71207A4E    8B40 0C         mov     eax, dword ptr [eax+C]
71207A51    83F8 01         cmp     eax, 1
71207A54 ^ 0F84 C1FEFFFF   je      7120791B                         ; 1
71207A5A    8B55 FC         mov     edx, dword ptr [ebp-4]
71207A5D    8B92 F0020000   mov     edx, dword ptr [edx+2F0]
71207A63    837A 30 64      cmp     dword ptr [edx+30], 64
71207A67 ^ 0F84 AEFEFFFF   je      7120791B                         ; 2

问题出来了,我用类似的原理脱另一个程序时,就出现了问题:

这个程序提供如下:

试脱老王最新壳软件下载

备注:我用了二十个相同的记事本,同时使用老王最新加壳工具加的壳,其中有一种入口刚好与这个程序相同,壳入口特征如下:

00409673 >  E8 01000000     call 老王最新.00409679

00409678    5E              pop esi

00409679    870C24          xchg dword ptr ss:[esp],ecx

0040967C    8D89 E8040000   lea ecx,dword ptr ds:[ecx+4E8]

00409682    870C24          xchg dword ptr ss:[esp],ecx

00409685    E9 61040000     jmp 老王最新.00409AEB

 

问题描述:当第一次shift+F9时就出现了:

软件无法运行于被调试状态,如需使用本软件请关闭后再运行。

急盼高手指点,如何脱掉这个壳的方法,谢谢,因为是新手,所以描述不当之处敬请提出疑点

 

  

 

posted on 2009-04-21 11:37  jasonM  阅读(855)  评论(0编辑  收藏  举报