在win32用户代码中挂钩OpenProcess()或ReadVirtualMemory()
Hooking OpenProcess() or ReadVirtualMemory() in win32 userland code
是否有钩子/绕道OpenProcess()
或ReadProcessMemory()
函数调用到我自己的自定义函数?
- 内核驱动程序在Zw/NtOpenProcess,需要rootkit漏洞或部署驱动程序签名
- 在每个进程中注入.dll,浪费资源警报多防病毒
我试图阻止其他进程获得HANDLE
或读取pid矢量的内存。
如果不在内核模式下全局挂接调用,则必须进入每个目标进程。一个dll是最简单的解决方案,但是你可以做更多的黑客和繁琐的东西。
使用OpenProcess和ReadProcessMemory(多么巧合!)和WriteProcessMemory来修改每个目标进程。钩住想要的函数,并在你想要的功能中加入一个过滤器函数。
注意,如果有人知道你在做什么,想要阻止它,你无能为力。他可以重新修补你的代码,或者使用一些直接的asm调用来调用api (sycall)。
相关文章:
- [WIN API]为什么共享相同的 WriteFile(sync) 和 ReadFile(sync) 句柄会导致 Rea
- 如何在没有 OPENPROCESS 的情况下向句柄授予 RPM/WPM 权限?
- WinAPI:OpenProcess()返回错误5,并为主机进程启用SeDebugPrivilege
- 获取错误 - 启用权限后,OpenProcess() 中的访问被拒绝
- OpenProcess在c++中每次都返回NULL
- 是否可以使用带有错误代码的OpenProcess ERROR_ACCESS_DENIED来了解进程是否存在
- 某些用户的 OpenProcess 访问被拒绝
- 检测任何使用OpenProcess的程序
- 在win32用户代码中挂钩OpenProcess()或ReadVirtualMemory()
- WinApi OpenProcess error 87
- OpenProcess Failure (SeDebugPrivilege?)
- Win32 c++ openprocess应该返回null,如果用户已经退出应用程序,但没有
- OpenProcess()返回0,如果不是从VS启动
- OpenProcess/ReadProcessMemory/WriteProcessMemory/CloseHandle
- OpenProcess函数返回无效句柄
- OpenProcess vs CreateProcess
- C++在没有OpenProcess()的情况下从进程获取句柄