-
-
[旧帖]
[求助]NtOpenProcess函数代码。
0.00雪花
-
发表于:
2009-3-23 19:32
3263
-
[旧帖] [求助]NtOpenProcess函数代码。
0.00雪花
NTSTATUS MyOpenProcess(ULONG PID, PHANDLE pHandle)
{
NTSTATUS status;
PEPROCESS EProcess = NULL;
HANDLE handle = NULL;
UNICODE_STRING y;
PULONG PsProcessType;
status = PsLookupProcessByProcessId(PID, &EProcess);
if (NT_SUCCESS(status))
{
handle = 0;
RtlInitUnicodeString(&y, L"PsProcessType");
PsProcessType = MmGetSystemRoutineAddress(&y);
if (PsProcessType)
{
status = ObOpenObjectByPointer(EProcess, 0, 0, PROCESS_ALL_ACCESS, (PVOID)*PsProcessType, UserMode, &handle);
if (NT_SUCCESS(status))
{
*pHandle = handle;
}
}
ObfDereferenceObject(EProcess);
}
return status;
}
这是模拟NtOpenProcess的代码。。。可是不完整。没办法替代NtOpenProcess
有没哪位有完整的?
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)