首页
社区
课程
招聘
[求助]r3下hook CreateProcessA正常但hook CreateProcessW会出错,上源码
2013-8-13 03:10 5203

[求助]r3下hook CreateProcessA正常但hook CreateProcessW会出错,上源码

2013-8-13 03:10
5203
这是我根据看雪上的一篇文章改的,如果是HOOK CreateProcessA是正常的,但是HOOK CreateProcessW会出现
自己弄了一个晚上搞不定希望大家帮下忙,指点一下!
源码在这 dll.rar

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

上传的附件:
收藏
点赞0
打赏
分享
最新回复 (6)
雪    币: 93
活跃值: (40)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
BlackSnake 1 2013-8-13 07:13
2
0
新手求文章出处
雪    币: 2571
活跃值: (2945)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
Snark 1 2013-8-13 08:06
3
0
貌似这里有一篇
http://bbs.pediy.com/showthread.php?t=126226
雪    币: 93
活跃值: (40)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
BlackSnake 1 2013-8-13 13:55
4
0
非常感谢
雪    币: 293
活跃值: (232)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
瀚海云烟 1 2013-8-13 14:25
5
0
我并没有调试你的程序,不过根据你的代码猜你hook  CreateProcessA也是不成功的,只是此程序并没用调用CreateProcessA而程序没有崩溃而已。
你new出来的代码没有设置可运行权限,这个在win7上会出问题(不可执行错误,xp是没问题的)。
再者VirtualProtect最后一个参数的问题,
If this parameter is NULL or does not point to a valid variable, the function fails.
MSDN上明确的说了,最后一个参数不能为NULL,否者程序直接错误返回。最后调用应该是
::VirtualProtect((LPVOID)TargetProc, bytescopy, dwOldProtect, &dwOldProtect); // 随便给他一个变量的地址
雪    币: 297
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
mijianjun 2013-8-13 15:17
6
0
5楼吧,不然检查下文件编码吧
雪    币: 116
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
boainfall 2013-8-13 15:22
7
0
你可以把代码写到exe工程里,调试通过了,再移植到dll里,这样好调试些。
游客
登录 | 注册 方可回帖
返回