首页
社区
课程
招聘
分享一个任意点hook的inlinehook库(同时支持用户和内核)
发表于: 2018-4-10 22:44 21098

分享一个任意点hook的inlinehook库(同时支持用户和内核)

2018-4-10 22:44
21098
收藏
免费 7
支持
分享
最新回复 (53)
雪    币: 5188
活跃值: (5349)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
26
麻烦楼主出一个x64的
2018-4-12 22:05
0
雪    币: 267
活跃值: (864)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
27
__asm  码是用在XP内核层嗎,Win7  x32  老是  BSOD。
什么时候出一个内核层的例子库的代码。 
2018-4-13 07:29
0
雪    币: 348
活跃值: (481)
能力值: ( LV2,RANK:140 )
在线值:
发帖
回帖
粉丝
28
WinDos2K __asm 码是用在XP内核层嗎,Win7 x32 老是 BSOD。 什么时候出一个内核层的例子库的代码。
我写了个简单的游戏保护,这几天会开源,里面有详细的使用方式范例代码,直接抄就好了
最后于 2018-4-13 09:27 被又出bug了编辑 ,原因:
2018-4-13 09:26
0
雪    币: 267
活跃值: (864)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
29
谢楼主分享
2018-4-13 11:09
0
雪    币: 348
活跃值: (481)
能力值: ( LV2,RANK:140 )
在线值:
发帖
回帖
粉丝
30
WinDos2K 谢楼主分享[em_13]
https://bbs.pediy.com/thread-226005.htm
我的这个帖子里面有使用的示例代码
最后于 2018-4-14 00:55 被又出bug了编辑 ,原因:
2018-4-14 00:55
0
雪    币: 267
活跃值: (864)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
31
阅读中,谢谢。
2018-4-14 03:38
0
雪    币: 204
活跃值: (911)
能力值: (RANK:1324 )
在线值:
发帖
回帖
粉丝
32
感谢分享
2018-4-14 06:48
0
雪    币: 267
活跃值: (864)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
33
BSOD已经搅定,  简单游戏保护里面找不到怎样修改寄存器参数。
2018-4-15 14:25
0
雪    币: 348
活跃值: (481)
能力值: ( LV2,RANK:140 )
在线值:
发帖
回帖
粉丝
34
因为没用上,直接给你写个例子吧,接口应该封装的够精简:

===
大神说这个hook没有处理掉挂起其他的cpu,的确欠缺考虑
最近忙着面试暂时没时间搞,等过了这段时间,准备处理下,准备加两个功能,到时候写好在帖子中通知:
1. hook时候挂起其他cpu,降低挂钩高频函数蓝屏问题(已经更新了)
2. hook处自动内存隐藏
最后于 2018-4-16 17:59 被又出bug了编辑 ,原因:
2018-4-15 17:19
0
雪    币: 768
活跃值: (585)
能力值: ( LV13,RANK:460 )
在线值:
发帖
回帖
粉丝
35
试用效果很棒,期待楼主的更新。
最后于 2018-4-16 08:50 被FishSeeWater编辑 ,原因:
2018-4-16 08:45
0
雪    币: 267
活跃值: (864)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
36
同样的代码,  使用InitInlineHook()没有问题,  使用InitInlineHookFunction(),  Bugcheck  :  ATTEMPTED_EXECUTE_OF_NOEXECUTE_MEMORY  (fc),  很奇怪。
最后于 2018-4-16 12:49 被WinDos2K编辑 ,原因:
2018-4-16 12:48
0
雪    币: 290
活跃值: (37)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
37
感谢分享
2018-4-16 14:40
0
雪    币: 348
活跃值: (481)
能力值: ( LV2,RANK:140 )
在线值:
发帖
回帖
粉丝
38
WinDos2K 同样的代码,  使用InitInlineHook()没有问题,  使用InitInlineHookFunction(),  Bugcheck&am ...
最后于 2018-4-18 18:57 被又出bug了编辑 ,原因:
2018-4-16 18:00
0
雪    币: 267
活跃值: (864)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
39
问题已经找到,是被hook接口返回总是零(NULL)。
有没有碰过同样的bug?
2018-4-18 12:04
0
雪    币: 45
活跃值: (48)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
40
感谢分享
2018-4-20 13:59
0
雪    币: 267
活跃值: (864)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
41
NonPagedPoolExecute是Win8或以上专用,Win7上没有。
改NonPagedPool没有作用,改PagedPool会蓝屏。
2018-4-21 00:43
0
雪    币: 348
活跃值: (481)
能力值: ( LV2,RANK:140 )
在线值:
发帖
回帖
粉丝
42
WinDos2K NonPagedPoolExecute是Win8或以上专用,Win7上没有。 改NonPagedPool没有作用,改PagedPool会蓝屏。
抱歉哈,最近时间比较少,没什么时间看  看雪。
我用的环境是wdk8.1+vs2013+win7  32位sp1
没有你说的问题,你看下你的wdk的版本是多少?
最后于 2018-4-21 21:49 被又出bug了编辑 ,原因:
2018-4-21 21:05
0
雪    币: 267
活跃值: (864)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
43
NonPagedPoolExecute改用NonPagedPool没问题。
已经解决所有问题,工作正常了。
最后于 2018-4-22 15:22 被WinDos2K编辑 ,原因:
2018-4-22 14:46
0
雪    币: 267
活跃值: (864)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
44
有一点不了解,寄存器参数(HookContex)是谁或什么时候被填写的?
2018-4-24 11:17
0
雪    币: 197
活跃值: (1418)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
45
我是菜鸟,想问下GetSSDTFuncAddrByName()是要自己实现吗
2018-7-19 16:36
0
雪    币: 13
活跃值: (1162)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
46

图片描述
这里判断不是明显的错误吗?

2018-12-16 14:56
0
雪    币: 1726
活跃值: (744)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
47
感谢分享!
2019-4-13 00:00
0
雪    币: 210
活跃值: (623)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
48
感谢分享,学习了
2019-10-11 15:13
0
雪    币: 144
活跃值: (718)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
49
以前做过对函数某一点得hook,但不是通用得。这种任意点hook第一步就是保存寄存器和返回地址。和写壳差不多,都是一堆push操作
2019-10-11 15:56
0
雪    币: 3038
活跃值: (161334)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
50
感谢分享
2020-8-3 02:28
0
游客
登录 | 注册 方可回帖
返回