修改进程的内存数据
著名的金山游侠,Cheat Engine 都能修改单机游戏中的数据。俗称“金手指”。
Windows
windows 有提供一系列 API 来操作指定进程的内存, 比如这个 ReadProcessMemory,第一个参数就是指定进程的句柄。但需要具有 PROCESS_VM_READ
权限。
通过 OpenProcess 来获取目标进程的句柄,同时指定访问权限。
进程访问控制模型看这个
- https://docs.microsoft.com/en-us/windows/win32/secauthz/access-control
- https://docs.microsoft.com/en-us/windows/win32/procthread/process-security-and-access-rights
Linux
gdb 这类 debug、trace 工具也类似。