惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

G
Google Developers Blog
F
Fortinet All Blogs
Microsoft Azure Blog
Microsoft Azure Blog
腾讯CDC
Vercel News
Vercel News
Recent Announcements
Recent Announcements
博客园 - Franky
小众软件
小众软件
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
The Cloudflare Blog
宝玉的分享
宝玉的分享
I
InfoQ
博客园 - 聂微东
Jina AI
Jina AI
J
Java Code Geeks
V
V2EX
U
Unit 42
Stack Overflow Blog
Stack Overflow Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
阮一峰的网络日志
阮一峰的网络日志
L
LangChain Blog
T
The Blog of Author Tim Ferriss
量子位

博客园 - jasonM

真是郁闷,团队中居然出了这样的骗子!! C++反汇编揭秘1 – 一个简单C++程序反汇编解析 函数调用堆栈变化分析 - jasonM - 博客园 为什么要下断bpSend,原理分析。 做挂第一步:如何找基址(以热血传奇为例) 一步步学外挂(二).CALL的原理。 - jasonM - 博客园 开发企业直销软件需求分析 开发旺旺群发软件,难点及重要技术点分析(一) 正则表达式系列文章整理 群发软件开发原理分析 通俗解释socket(并附上注释Socket源代码) CMainFrame::PreCreateWindow这个函数执行了两次 .net调用vc++写的dll 一步步学破解-sdk用实例讲解GDI映射机制 一步步学破解-sdk用实例讲解GDI(含各个消息的调用时机) 一步步学破解-sdk进程间传递信息 一步步学破解-在已有的主窗口上创建按钮(三) 一步步学破解-windows消息循环原理实例总结(二) 一步步学破解-函数调用堆栈变化分析 (一)
老王最新壳试脱时遇到的问题,详细表述如下
jasonM · 2009-04-21 · via 博客园 - jasonM

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

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时就出现了:

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

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