hook修改vmp机器码(部分)与vmp反内存补丁
本帖最后由 白影33 于 2020-3-18 16:41 编辑确认论坛没人发过vmp反内存补丁的内容觉得可以发一下
我也看过很多vmp保护关于内存相关的,
大概是vmp会读取自己的代码,计算是否被修改,
但我的补丁是打在系统领空,vmp除了会对部分函数头进行cc断点检测,
不会对系统领空进行全面检测,这导致我一直认为是代码问题,
多次检查代码后,觉得是vmp导致的,调试过程略去(就是一步步更,哪里爆了就进去看,很无聊)
调试后确定是VirtualProtect函数被vmp修改
注意 77710260 >- E9 AAFD4A8A jmp 01BC000F
这个指令是被修改的
原来是77710260 >B8 50000000 mov eax,0x50(这是win10被修改的位置,win7不一样,VirtualProtect跟进去也能找到)
对应的办法很简单,在用VirtualProtect前使用WriteProcessMemory把它写回来
然后再对其他代码进行修改,
代码和相关软件我就直接发上来,不一点点的讲解了,
看不懂就去学学hook(讲hook的书很多,我觉得没他们讲的好就不浪费时间了)
最后上个效果图,上面的是原来的,下面的是被修改的,hook修改的部分用红线划出来了,
这个是hook GetVolumeInformationW,其他的hook过程差不多,关键是找hook点,
全部hook后也能达到破解vmp授权的效果
链接: https://pan.baidu.com/s/1ujaNgcYT9qR3nfrFSWx8cA 提取码: d28f
本帖最后由 白影33 于 2020-3-18 09:58 编辑
漏了个软件,把它和hook1.dll,MFCmyTest.vmp.exe放在一个目录下,它会挂起方式创建MFCmyTest.vmp.exe进程,注入hook1.dll,来hook,hook完再恢复进程
还要在同目录下新建一个serial.txt文件是给vmp读取注册码的
里面填上下面这个注册码
Wp27zW5NihsOVcfVBliZoSg3gRvpNvHvcQhSHoxCMz2+XWlXmPxqf4ZceFsZNE8AFAUTofk4JIAQ
Y4Q3jIcnVXtbpvEr6AHMBfdXOy6pw93M8QrU7q6iuSa4HSX/9I2drurDWm7YlvC6Nh4ukyiZqXw2
9+6QBlUgtPlHucoqd3BAKm7b1GI1dyX+0wjHa7+FcVgAdsBQevtyuGbpGdqjAP/HDK7pMKbRBNsi
4B53S1wVaGlbEbh7+2gFNX4zKMkW+43A9Nu7SGcQ3PkqtZ22Imf8QY4ff/Ee9PT5OQikmB+xN8xg
1A48hFMy1Sjm4GtLtU32C0MhSBf0SHT5M/ICPg==
你这是外部使用WriteProcessMemory是吧.....
VMP是程序跑起来后才HOOK的
DLL已经注入进去了,你还得等程序跑起来你在外部程序用WriteProcessMemory修改
一些程序在你WriteProcessMemory前就已经把该做的操作做完了,我一般都是在DLL内VirtualProtect,而且绕过他的ZwProtectVirtualMemory HOOK也很简单,全系统通用,你这只能针对自己的系统 谢谢分享 谢谢分享 试验一下。 下载用看看再说! 感谢分享1024 你与明日 发表于 2020-3-17 18:57
你这是外部使用WriteProcessMemory是吧.....
VMP是程序跑起来后才HOOK的
感谢你的思路,有啥好资源分享一下 {:1_921:}直接hook破解
谢谢分享