首页
社区
课程
招聘
[旧帖] [求助]NtOpenProcess函数代码。 0.00雪花
发表于: 2009-3-23 19:32 3259

[旧帖] [求助]NtOpenProcess函数代码。 0.00雪花

2009-3-23 19:32
3259
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
有没哪位有完整的?

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 419
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
告诉你,这过不了TX
2009-3-23 19:36
0
雪    币: 41
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
为何呢?

既然无法进行还原。那么绕过去!
2009-3-23 19:39
0
雪    币: 419
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
ObOpenObjectByPointer
2009-3-23 20:46
0
游客
登录 | 注册 方可回帖
返回
//