VMP2.0版本带壳调试教程

本文介绍了如何带壳调试VMP2.0版本的程序,通过在VirtualProtect函数处设置断点,观察NewProtect值变化找到代码解密完成的时刻。接着,通过删除模块分析,搜索特定字节码来定位OEP,最终在0x4016C0处设置硬件断点,成功进入程序的入口点,实现带壳调试。
摘要由CSDN通过智能技术生成

样本MD5:297DE74CB20A975EFAF20CD88FDDF270

在逆向分析时遇到VMP壳总是令人头疼,因为要源文件完美地从VMP壳中脱出来非常的困难。相比于VMP完美脱壳,带壳调试要简单许多,而且已经能满足调试分析的需求了,VMP分1.0、2.0、3.0,2.0,现在市面上较多见的是2.0,调试方法也较简单,下面我们就来讲解下如何带壳调试VMP2.0。

使用查壳工具可以得知样本加的是VMP2.0.7版本的壳,小本版之间的脱壳方法都一样,以下方法v2.0.X都适用。
1
OD打开样本后,按下Ctrl+G跳转到VirtualProtect函数的位置。
2

在VirtualProtect的起始处(0x7C801AD4)下断点,然后开始按F9,程序会多次停在断点处,在此期间要注意观察右下方红框中的NewProtect的值。
3

当NewProtect的值变为PAG_READONLY时,样本的代码已经全部解密出来了,我们停止按F9。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值