[转载]一种快速过VMP3.x调试器虚拟机检测的方法
VMP3.x 以上的版本的壳代码引入了一个标志位数值 Flags, 根据这个Flags值的位执行对应的事情。比如:
and 2 = 2 表示检测用户层调试器
and 4 = 4 表示检测内核调试器
and 10 = 10 表示检测虚拟机
只要将这个值修改为0,调试器和虚拟机检测甚至内存校验,文件校验都直接bypass.( ps: 写了这么多壳代码就这么简单就过了:)
那么现在的问题是如何快速定位到这个值。这里介绍一种比较简单快速的方法,测试了几个程序都有效。
如下图:
https://bbs.pediy.com/upload/attach/201804/191670_YZS7UYD79Q6EGZ6.png
1. 首先下断点到LocalAlloc
2. 中断下来后,在数据窗口CTRL+G输入ESP, 然后从这个地址开始搜索 当前模块加载基地址 如这里的 011C0000
不过这里为了保险,防止搜索到多个结果,应该搜索 模块默认加载基地址 + 模块当前加载基地址 组合起来的8个字节
如图中的: 00400000 + 011C0000
3. 找到后修改下面的那个值为0即可, 如图中箭头所指。
转载于:看雪论坛 https://bbs.pediy.com/thread-225937.htm
不知道违不违规,如有违规请恒大大删帖。
恒大大快点审核喔
沙发沙发!!1多谢分享 这个简单易懂 帖子里的图片 没有了重新上传一下! 通俗易懂,效果不错,就是重新加载都要这样,有没有大神写一个插件,造福一方 多谢分享,顶一个 感谢分享{:5_116:} 怎么看不到图片呢 还是没看懂 怎么下断能详细点吗啊? 感谢分享,学习学习!