能力值:
( LV8,RANK:120 )
|
-
-
2 楼
莫非想过XXX的父进程检测大法??
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
http://www.cr173.com/html/11519_1.html
不过vista以上才能用这个方法
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
能详细讲讲吗?
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
|
能力值:
( LV12,RANK:210 )
|
-
-
6 楼
XP SP3 kernel32.dll里面
CreateProcessW调用CreateProcessInternalW,在CreateProcessInternalW里面调用ntdll!NtCreateProcessEx创建进程。如下
.text:7C8192AD push [ebp+var_8E4]
.text:7C8192B3 push ebx
.text:7C8192B4 push [ebp+var_8D0]
.text:7C8192BA push [ebp+var_670]
.text:7C8192C0 push [ebp+var_804]
.text:7C8192C6 or esi, 0FFFFFFFFh
.text:7C8192C9 push esi //父进程句柄
.text:7C8192CA push [ebp+var_838]
.text:7C8192D0 push 1F0FFFh
.text:7C8192D5 lea eax, [ebp+ProcessHandle]
.text:7C8192DB push eax
.text:7C8192DC call ds:__imp__NtCreateProcessEx@36
可以看到父进程句柄只能是0FFFFFFFFh。所以要改父进程句柄的话,只能HOOK ntdll.dll里面的NtCreateProcessEx函数。VirtualProtect修改ntdll!NtCreateProcessEx为可写,然后跳到自定义函数,再去改父进程。
|
|
|