首页
社区
课程
招聘
win10 x64 explorer.exe进程创建hook的问题
999 2022-4-20 1315

我在win10 x64下将dll注入进explorer进程去hook shellexecute函数,为什么只能拦截到通过任务栏创建的进程,而通过双击桌面图标或直接从文件管理器里双击打开的进程拦截不到,如果要拦截应该去hook哪个函数?在任务栏创建进程是通过explorer!CTray::command去调用shellexecuteExW,如果在桌面或者资源管理器中创建进程会调用explorer中的哪个函数?

收藏
1条回答
xwh9315 2022-4-21

shellexecute是最上层的动作,他的入参可以支持很多种,例如一个文件名,一个目录,或者一个pe文件等等,你如果想拦截进程创建,本质上也应该再往更深的位置hook,createprocess相关的,这才是真正创建进程前的动作。
还有一个,不知道你的需求是什么,是只需要拦截explore的子进程么,如果是的话,你确实只需要hook explore,如果不是的话,光挂钩explore肯定不够,你也可以在r0层,例如通过监听processcreatenotify这种,然后拦截你想拦截的进程创建动作。

回复