VMProtect v.3.5.1 - 3.7.3脱壳 到OEP
本帖最后由 situhaonan 于 2023-8-5 10:12 编辑大家好,今天给大家分享下VMProtect v.3.5.1 - 3.7.3 脱壳到达OEP的经过。(只到OEP,修复我也没学会呢,有会的大佬希望指点一下。谢谢!)
也祝愿本论坛越办越好。我也是小白一个,有不对之处,还望大佬们指点。首先我们查壳。
载入OD,(论坛有过VMP检测的OD,请自行下载),CTRL+G 我们输入Virtualprotect
确定后来到如下地址。我们在这里F2下断点。然后F9运行程序。
程序被断下,(根据栈平衡)我们在栈区域往下找,找到如下地址(0018FF88),在HEX资源区里我们CTRL+G 输入这个地址(0018F88)下硬件访问断点。
下好硬件断点后,我们再下一个内存访问断点。如下图:
然后我们F9运行程序,经过N多次的F9运行,(中间过程中有遇到循环的就把内存访问断点取消后,运行,过了循环在设置上,继续F9,关注着寄存器里的值。尤其EAX)
来到下图
箭头所示就是OEP了。为什么,我们来看下图
此时,我们在OD中鼠标右键--此处为新的EIP
然后我们此处脱壳。
保存后我们再来查下壳。
已经脱壳完成了,但是现在程序还不能运行,需要修复; VMP的壳修复我也没学会呢。等我学会了再继续。
有会VMP3.5-3.7壳修复IAT的 ,希望指点 感谢!
本帖最后由 kadimah 于 2023-10-18 20:16 编辑
那个 0018FF88是如何确定的 ? bailemenmlbj 发表于 2023-8-7 13:14
还有比你更白的,请问,如何判定是这个“找到如下地址(0018FF88)”
栈里往下啦,拉到最下面 侃遍天下无二人 发表于 2023-8-5 10:19
Vmp不是全程在虚拟机上执行自定义的指令吗,你咋能把壳脱掉的,根本就不存在完全解密的脱壳点吧
脱壳只是把外面的那一层壳脱掉而已,虚拟机已经是嵌入进程序了。修复后脱了壳也不会妨碍虚拟机代码运行,可以过掉一下壳的反调试等 Vmp不是全程在虚拟机上执行自定义的指令吗,你咋能把壳脱掉的,根本就不存在完全解密的脱壳点吧 keya 发表于 2023-8-5 10:21
很多错, 赞一个
很不错还是很多错啊? 侃遍天下无二人 发表于 2023-8-5 10:19
Vmp不是全程在虚拟机上执行自定义的指令吗,你咋能把壳脱掉的,根本就不存在完全解密的脱壳点吧
应该只是脱外壳的加密把 内部加密应该是没脱 通达信就是VMP但是就很多破解。。。 谢谢非常详细,收藏 感谢楼主分享,已下载收藏