首页
社区
课程
招聘
[求助]TMD壳的虚拟机环境检测问题
发表于: 2014-11-27 17:03 5203

[求助]TMD壳的虚拟机环境检测问题

2014-11-27 17:03
5203
mov eax, 0x564D5868
mov ecx, 0x14
mov dx, 0x5658
in eax, dx

这几行是TMD壳的一段检测当前是否虚拟机环境的代码。

我在mov dx, 0x5658处下硬件执行断点,OD载入后F9运行断在此处。

1、按网上的破文,此时要把EAX清零,同时把mov dx, 0x5658这句改成mov dx, 0x0,然后按shift+f9。我照着做,可以实现过检测的目的。

2、那么问题又来了,我断在mov dx, 0x5658时,按一下F8步过,然后在OD窗口右上角的寄存器窗口中手工将dx改为0,然后再shift+f9运行,此时却弹出了虚拟机环境不允许运行的提示。

按理说,1和2操作是等价的,都是将dx将零,并没有执行额外的指令,mov指令也不会影响标志位寄存器,为什么得出的结果是不一样的呢?求各位大虾指点一二。

[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 60
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
可能执行了很多次呗。你只修改了一次。
2014-11-27 18:30
0
雪    币: 144
活跃值: (335)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
mark一下,,
2014-11-27 23:11
0
雪    币: 5
活跃值: (421)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
4
我在那行下了硬件执行断点,如果执行多次的话会再次断下的,事实上没有
2014-11-28 10:02
0
游客
登录 | 注册 方可回帖
返回
//