首页
社区
课程
招聘
[旧帖] [求助]DLL Hook 自身的问题 0.00雪花
发表于: 2007-11-28 20:28 5049

[旧帖] [求助]DLL Hook 自身的问题 0.00雪花

2007-11-28 20:28
5049
    有一个 A.dll, 其中有一函数 InstallHook(), 其作用是调用 SetWindowsHookEx() 来安装一个全局钩子, InstallHook() 函数在 A.dll 的 DllMain 入口中被调用, 使它在被加载时就执行. 使用另一个程序将其注入一个远程线程, 然后这个程序退出.
    问题是这样不起作用, 调试时 SetWindowsHookEx() 函数返回正确, 没有错误.
如果在其它程序中运行导出的 InstallHook() 函数, 可以正确的安装钩子, 钩子也达到预期的效果.可是如果这个程序退出, 钩子也会被释放.
    我想达到这样一种效果:
    使用远程注入技术将 A.dll 注入一个进程, 在这个远程进程中安装一个全局钩子, 然后注入者退出, 而钩子继续发挥作用.
    请问应该怎样做?

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 213
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
不太理解,能不能不用钩子,在A.dll中加个计时器,把A.dll挂上目标程序后,注入者就可以退出了,A.dll可以在计时循环中起作用.
2007-11-28 22:07
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
如果不用全局钩子, 你无法获取所有进程的特定事件, 只能取得被注入进程的事件.
2007-11-29 08:03
0
雪    币: 230
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
把 a.dll 注入到关键进程中,如 explorer.exe 中,explorer.exe 总不会随便退出吧。
如果你只是注入 到记事本这样的进程中,把记事本关了,当然也就无效了。不知是不是我理解的意思。
2007-11-29 11:44
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
搞木马?
2007-11-29 11:45
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
我说的关闭注入者进程指的是运行注入程序的进程, 而不是被注入的进程, 如果注入者进程退出, 不管钩子注入哪个进程, 都会退出, 各位是不是遇到这个情况.
2007-11-29 19:42
0
雪    币: 213
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
7
你试试在A.dll开个线程再向目标程序下钩
2007-11-29 19:54
0
雪    币: 219
活跃值: (19)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
遇到同样的问题..开线程再下沟依然不行..
2007-12-16 02:38
0
游客
登录 | 注册 方可回帖
返回
//