在win32用户态代码中挂钩OpenProcess()或ReadVirtualMemory()

时间:2013-06-03 06:20:38

标签: c++ windows winapi dll

是否有将OpenProcess()ReadProcessMemory()函数调用挂钩/绕过我自己的自定义函数?

  1. Zw / NtOpenProcess上的内核驱动程序,需要rootkit漏洞利用或 驱动程序签署部署
  2. 在每个进程中注入.dll,垃圾邮件浪费资源和垃圾邮件 提醒许多防病毒软件
  3. 我试图阻止其他进程获取HANDLE或读取PID向量的内存。

1 个答案:

答案 0 :(得分:1)

如果你没有在kernelmode上挂钩全局调用,你必须进入每个目标进程。一个DLL将是最简单的解决方案,但你可以做更多的hacky和乏味的东西。

使用OpenProcess和ReadProcessMemory(巧合!)和WriteProcessMemory来修改每个目标进程。使用过滤功能挂钩所需的功能并修补所需的功能。

请注意,如果有人知道你在做什么并且想要阻止它,那么你无能为力。他可以重新修补你的代码或使用一些直接的asm调用来调用API(SYSCALL)。