-
-
[求助]给植物大战僵尸加个NtOpenProcess的保护,找不到进程,帮我看看啊 大牛
-
2012-6-7 08:53
4416
-
[求助]给植物大战僵尸加个NtOpenProcess的保护,找不到进程,帮我看看啊 大牛
//新的NtOpenProcess
NTSTATUS __stdcall MyNtOpenProcess(OUT PHANDLE ProcessHandle,
IN ACCESS_MASK AccessMask,
IN POBJECT_ATTRIBUTES ObjectAttributes,
IN PCLIENT_ID ClientId)
{
NTSTATUS status;
ULONG notepadId;
CHAR *TerminateName = "PlantsVsZombies.exe"; //如果是notepad.exe就可以保护起来 ,植物大战僵尸的进程就不行,这是为什么?
int isEqul;
//首先调用原始函数获取信息做比对
status = (NTSTATUS)(NTOPENPROCESS)RealNtOpenProcess(ProcessHandle,AccessMask,ObjectAttributes,ClientId);
if(ClientId != NULL)
{
isEqul = strcmp(GetCurrentProcessName(ClientId),TerminateName);
if(isEqul == 0)
{
//正在试图NtOpenProcess notepad.exe ,让进程句柄为null 防止对其操作
DbgPrint("find game!");
ProcessHandle = NULL;
status= STATUS_ACCESS_DENIED;
}
}
return status;
}
//获取NtOpenProcess当前打开的进程的名称
CHAR *GetCurrentProcessName(PCLIENT_ID ClientId)
{
NTSTATUS status;
PEPROCESS process;
status = PsLookupProcessByProcessId(ClientId->UniqueProcess,&process);
return PsGetProcessImageFileName(process);
}
[培训]《安卓高级研修班(网课)》月薪三万计划,掌
握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法