能力值:
(RANK:385 )
|
-
-
2 楼
感谢整理.掌握了之后. 你就是HOOK小王子.
|
能力值:
( LV1,RANK:0 )
|
-
-
3 楼
nice
|
能力值:
( LV5,RANK:75 )
|
-
-
4 楼
感谢分享,666
|
能力值:
( LV4,RANK:50 )
|
-
-
5 楼
感谢分享,总结得很全。
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
感谢分享,深受教育。
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
是的要对抗这种检查,只有未来intel自己出手引入新机制对抗ept hook。
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
感谢分享
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
AI写的吧有:GetWindowsHookEx 枚举当前安装的全局钩子这个函数吗?
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
厉害,收藏+学习了
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
学习了。
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
hook拦截新版wechat pc
|
能力值:
( LV1,RANK:0 )
|
-
-
14 楼
|
能力值:
( LV1,RANK:0 )
|
-
-
15 楼
|
能力值:
( LV2,RANK:10 )
|
-
-
16 楼
|
能力值:
( LV2,RANK:10 )
|
-
-
17 楼
很强,点赞,收藏
|
能力值:
(RANK:10 )
|
-
-
18 楼
IAT HOOK中GetProtectedPid怎么实现的
|
能力值:
( LV1,RANK:0 )
|
-
-
19 楼
nb
|
能力值:
( LV4,RANK:50 )
|
-
-
20 楼
新气象
AI写的吧有:GetWindowsHookEx 枚举当前安装的全局钩子这个函数吗?
GetWindowsHookEx 确实不存在,这是笔误,改一下。但这条想表达的检测思路没问题:全局钩子(SetWindowsHookEx 装的非 _LL 钩子)一定会把 DLL 强行注入到所有带消息循环的进程里,所以理论上应该能"反查"系统里当前有没有异常的全局钩子存在——这个检测方向是对的,只是表达成了一个不存在的 API 调用,而实际上 Windows 没有提供这种官方查询接口,得靠读 user32 内部未导出的共享内存表(gSharedInfo.aheList,过滤 bType==TYPE_HOOK)去间接实现,这个我改成准确表述。顺带说一句:这条检测方法排第一,但实际最好用的是第2条"检查进程是否加载了非预期 DLL"——因为全局钩子必然导致 DLL 出现在所有进程里,这个特征比查钩子表本身更直观、更容易稳定命中
最后于 2026-7-12 15:39
被kyx_san编辑
,原因:
|
能力值:
( LV4,RANK:50 )
|
-
-
21 楼
KoreK
IAT HOOK中GetProtectedPid怎么实现的
GetCurrentProcessId()——这套 Hook 通常是注入到自己想保护的进程内部做自我防护(比如挡 Cheat Engine 对自身开 OpenProcess 权限),这种场景下"被保护的PID"就是当前进程自己。如果是要保护别的进程(比如launcher保护它拉起来的游戏进程),那就要在启动阶段把 CreateProcess 返回的 PID 缓存成全局变量,或者用 CreateToolhelp32Snapshot 按进程名动态查,GetProtectedPid() 直接读这个值即可
|
能力值:
( LV4,RANK:50 )
|
-
-
22 楼
学习了
|
能力值:
( LV3,RANK:20 )
|
-
-
23 楼
mark
|
|
|