我们可以通过WriteProcessMemory函数直接修改其他进程的内存从而实现内存补丁或者游戏修改之类的功能,但是,有个问题,并不是所有的程序都是能够被写内存的,这从前面的日志 通过CreateToolhelp32Snapshot函数获得系统中当前运行的进程信息2 可以看出来,好多程序的打开状态是失败的。所以,提升当前进程的权限非常非常必要。程序实现的代码如下:
;
}

这段代码就是在 通过CreateToolhelp32Snapshot函数获得系统中当前运行的进程信息2 基础上做了修改,在检测当前进程的权限之前加上了提升当前进程权限的过程,权限提升之前进程权限如下所示:


PROCESS_ALL_ACCESS权限: 成功
PROCESS_CREATE_PROCESS权限: 成功
PROCESS_CREATE_THREAD权限: 成功
PROCESS_DUP_HANDLE权限: 成功
PROCESS_QUERY_INFORMATION权限: 成功
PROCESS_SET_INFORMATION权限: 成功
PROCESS_TERMINATE权限: 成功
PROCESS_VM_OPERATION权限: 成功
PROCESS_VM_READ权限: 成功
PROCESS_VM_WRITE权限: 成功

魔兽争霸3的进程竟然什么权限都没有,郁闷啊,在提升了当前进程的权限以后,结果如下:


PROCESS_ALL_ACCESS权限: 成功
PROCESS_CREATE_PROCESS权限: 成功
PROCESS_CREATE_THREAD权限: 成功
PROCESS_DUP_HANDLE权限: 成功
PROCESS_QUERY_INFORMATION权限: 成功
PROCESS_SET_INFORMATION权限: 成功
PROCESS_TERMINATE权限: 成功
PROCESS_VM_OPERATION权限: 成功
PROCESS_VM_READ权限: 成功
PROCESS_VM_WRITE权限: 成功

全部都成功了,哈哈!如果没有钩子或者保护程序存在的话,下面就可以直接修改魔兽争霸了,哈哈哈!!

 

相关文章: