首页
社区
课程
招聘
[求助][讨论]setwindowshookex 注入dll,如何判断是否是指定进程
发表于: 2009-2-26 09:09 9326

[求助][讨论]setwindowshookex 注入dll,如何判断是否是指定进程

2009-2-26 09:09
9326
用setwindowshookex设置全局钩子后,所有有消息处理的程序都被关联进来了。
那如何判断关联进来的是否是我想要的target
(目的是用该方法实现dll注入,当满足我回调函数的程序关联进来的时候我如何去判断是否是指定的目标程序)

[课程]Android-CTF解题方法汇总!

收藏
免费 0
支持
分享
最新回复 (10)
雪    币: 7651
活跃值: (523)
能力值: ( LV9,RANK:610 )
在线值:
发帖
回帖
粉丝
2
根据进程名字吧,DllMain里GetModuleFileName一下然后做个判断。至于什么是符合你条件的程序,你自己还没有个判断标准吗?
2009-2-26 09:24
0
雪    币: 219
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
我的意思想表达
在消息回调函数怎么判断这个消息来自于哪个程序
比如a.exe b.exe c.exe
当这三个都被关联进来的时候,在回调函数里如何判断这消息来自于a b c中的哪个程序
2009-2-26 12:43
0
雪    币: 7651
活跃值: (523)
能力值: ( LV9,RANK:610 )
在线值:
发帖
回帖
粉丝
4
你加载的时候向判断一下不就行了?不是目标程序就拒绝加载,就不会有后面的事了。另外,回调函数执行时依然是在目标进程空间,所以用GetModuleFile判断进程名还是可行的
2009-2-26 14:25
0
雪    币: 7651
活跃值: (523)
能力值: ( LV9,RANK:610 )
在线值:
发帖
回帖
粉丝
5
钩子是全局的,但钩子回调函数执行时必定还是在某一具体的进程中的嘛
2009-2-26 14:28
0
雪    币: 210
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
回调函数在一个DLL中
当回调函数执行的时候该DLL会被映射到相应的进程空间
2009-2-26 16:21
0
雪    币: 0
活跃值: (954)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
7
得到某应用程序的句柄

然后传给DLL,挂钩

给你个例子

DLL
function InstallHook(SWindow: LongWORD; memo: tmemo): Boolean; stdcall;
var
  ThreadID          : LongWORD;
begin
  Result := False;
  DLLData^.Hook := 0;
  ThreadID := GetWindowThreadProcessId(SWindow, nil);
  //给指定窗口挂上钩子
  DLLData^.Hook := SetWindowsHookEx(WH_GETMESSAGE, @HookProc, Hinstance, ThreadID);
  if DLLData^.Hook > 0 then
    Result := True                      //是否成功HOOK
  else
    exit;
end;

EXE

FindWindow(nil, '');

InstallHook(xxxx,xxxx);
2009-2-26 17:58
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
lby
8
在回调函数里GetCurrentProcessId()得到当前进程ID,再获取系统进程快照,比对一下不就可以获取当前进程的进程名了。
2009-3-4 10:34
0
雪    币: 424
活跃值: (10)
能力值: ( LV9,RANK:850 )
在线值:
发帖
回帖
粉丝
9
GetModuleHandle判断主程序模块
GetModuleHandle("a.exe"); //返回非0,则在a程序中
2009-3-4 10:38
0
雪    币: 247
活跃值: (187)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
晕!当前DLL 只是对自己所在的 EXE 进行相应的消息处理啊!难不成  在a.exe 中的 dll 还要处理 b.exe的消息吧!那样可要用到进程间通信或者其他的了哦!呵呵
2009-3-4 22:51
0
雪    币: 0
活跃值: (954)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
11
参考判断父类进程,楼主要学会变通啊!
2009-3-6 10:10
0
游客
登录 | 注册 方可回帖
返回
//