专业丰富的破解论坛技术交流,提供软件安全,病毒分析,脱壳破解,安卓破解,加密解密等,由无数热衷于软件爱好者共同维护
 
发新帖
楼主: 零五零八
查看: 1186|回复: 0

[脱壳破解] vmp分析还原插件

[复制链接]
零五零八 发表于 2020-11-17 19:46:07 | 显示全部楼层
本帖最后由 零五零八 于 2020-11-17 20:02 编辑

我们看个vm代码的实例,使用最新版本加密


下面为一段正常的汇编代码,


1.png


我们把这个函数,代码块用vm加密,会变成下面这样
               
2.png


第一行jmp跳转到了一个地址 0045985d
我们看下这个地址的代码


3.png


指令1和指令2为标准的vm(虚拟代码)入口
我们跟进指令2 (call 0047b181)


4.png


这时我们看到的代码就是原代码的虚拟化代码,这时我们就可以使用插件分析了,
我们使eip停留在 0047b181、或者上一层的 0045985d(push指令)、00459862(call指令) ,


选择插件命令xx_vm => 初始化日志,会在od主目录下生成程序名称和日期的日志文件,必须操作


5.png


选择插件命令xx_vm => 开始分析,插件会自动分析vm代码,此时我们不用做任何操作,直到插件停止
此时eip会停留在一条 retn 指令上,这是退出虚拟化代码的最后一条指令,我们使用od的单步命令,
         这时我们就完全跳出了vm代码


开始还原vm代码
打开od目录下的日志文件,日志文件有相应的程序名称和日期,打开后,我们看到了这样的代码


6.png


我们通过分析,成功的还原出原代码了。

快速回复 返回顶部 返回列表