首页
社区
课程
招聘
做补丁的一个问题!
发表于: 2005-10-10 19:59 5625

做补丁的一个问题!

2005-10-10 19:59
5625
我用vc++做了一个补丁,也就是往一个exe文件中的90空间(nop)动态写了机器码,
但是每次该程序都出现异常退出。
该程是一款游戏,名为“祖玛”,是用upx加的壳,我已经去掉了壳。
怀疑是可能是内存页属性问题, 可以使用 VirtualProtectEx()  修改内存页属性为可写。用VirtualProtectEx(nOK, (void*)write, 4, PAGE_READWRITE, &Writeed);修改后还是不行,请指教。

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 47147
活跃值: (20380)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
2
不是内存页属性问题。壳的代码段一般是可写的。
2005-10-10 21:19
0
雪    币: 224
活跃值: (32)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
可我已经把壳去掉了啊
2005-10-11 17:57
0
雪    币: 1223
活跃值: (469)
能力值: (RANK:460 )
在线值:
发帖
回帖
粉丝
4
发生了什么异常?
2005-10-11 18:50
0
雪    币: 224
活跃值: (32)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
程序弹出自己的出错对话框,并终止
2005-10-11 18:59
0
雪    币: 1852
活跃值: (504)
能力值: (RANK:1010 )
在线值:
发帖
回帖
粉丝
6
VC,可以调试的
设断点之类,同时打开MEMORY窗口,观察内存目标地址是否已经改写
基本的调试技术,多练习下就OK了
还有,VirtualProtectEx之后是否有检测这个函数是否执行成功。。。
2005-10-13 09:52
0
游客
登录 | 注册 方可回帖
返回
//