首页
社区
课程
招聘
[求助]一个VMP_CRC奇怪的问题
发表于: 2012-2-22 08:12 7517

[求助]一个VMP_CRC奇怪的问题

2012-2-22 08:12
7517
OD附加VMP过的程序,断virtualprotect,等VM代码段解码好,随便在CODE断某处下硬件访问断点,断到

1186FECC    F9              stc
1186FECD    09C8            or      eax, ecx
1186FECF    F8              clc
1186FED0    F5              cmc
1186FED1    F5              cmc
1186FED2    3202            xor     al, byte ptr [edx]  //这个edx就是代码地址

我HOOK地址0x1186FECF处,jmp到自己hook函数。。判断edx如果是自己要改变的就让其al和原始异或。

并且判断edx == 1186FECF 时, xor al, 0xf8
edx == 1186FED0 时, xor al, 0xf5
...
...
...

发现一样VMP检测得到我的补丁。。

所以我直接OD在0x1186FECF处下硬件访问断点,发现断不下来。。。这就奇怪了
难道新版本VMP加了啥新技术? 求大牛解答。。

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (10)
雪    币: 375
活跃值: (12)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
2
汗一个。
lz应该注意几点:
1. 注意handler里可能有不同的分支,除了你监视的这里可能还有别的地方。
2. 你在这里patch不如去计算完的那里patch,把原始值填进去。
3. 或者彻底一点,替换掉校验的的表或者让校验的循环结束。就行了。
2012-2-22 09:14
0
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
3
就如楼上大侠说的,我也 汗一个 ,楼主判断效验的方式与众不同哦 ??
2012-2-22 10:56
0
雪    币: 111
活跃值: (60)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
问题是我奇怪

1186FED2    3202            xor     al, byte ptr [edx]

这句如果我改了,VMP就发现我了提示File corrupted! ...

但我在这条指令下硬件访问断点,却断不下来...

这个就让我很无解, ?
2012-2-22 12:00
0
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
5
你改它干嘛 ? 2 楼告诉你了,要不就结束循环标志,要不就记录 hash_data 做 patch 之用

你修改这个指令,后面的 nor(d,c_d) 没法东西比较了,能不弹框框 ???????????

有空多利用搜索引擎。。。。。。。。。。。。。。。。。。。。。
2012-2-22 12:58
0
雪    币: 111
活跃值: (60)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
yingyue谢谢你的回答,
昨天我搞了一夜没睡觉,中午才睡,现在起来才看到回复你,回复很晚请见谅

"你修改这个指令,后面的 nor(d,c_d) 没法东西比较了,能不弹框框"

这句我没听懂? 特别是nor(d, c_d)是什么意思,我新手,刚接触这门,请问这句能详细解释下吗,在线等. 谢谢了
2012-2-22 19:07
0
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
7
其实我完全不懂,你可以去搜索一下

vmprotect的文件校验方法  ( unpack hc 版主写的 )
2012-2-22 19:34
0
雪    币: 111
活跃值: (60)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
你说的这文章我早看过了.
http://www.unpack.cn/thread-71059-1-1.html

但是他没提到nor(d,c_d)有关的东西,我求解nor(d,c_d)与他判断有什么关系。
2012-2-22 20:57
0
雪    币: 111
活跃值: (60)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
谢谢楼上各位,校验过了,是我代码写错了一行。
2012-2-23 05:44
0
雪    币: 107
活跃值: (399)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
貌似有80%以上提问的人.都是自己的代码错了,或者自己看错了...

能不能详细描述一下如何错误的??给其他朋友参考下噻...
2012-2-23 09:07
0
雪    币: 1644
活跃值: (53)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
学习。。。。
2012-2-26 23:34
0
游客
登录 | 注册 方可回帖
返回
//