-
-
[求助]关于HOOK ZwTerminateThread 的问题
-
发表于:
2008-7-28 21:50
12245
-
[求助]关于HOOK ZwTerminateThread 的问题
在HOOK SSDT 中的 ZwTerminateThread 的时候遇到了问题
我对 ZwTerminateThread 做如下处理
运行以后用IS看SSDT HOOK 成功了,但是再过几秒就BSOD了````
不知道是不是下面的代码的问题
NTSTATUS HookZwTerminateThread(
IN PHANDLE ThreadHandle,
IN NTSTATUS ExitStatus)
{
NTSTATUS ntstatus;
PETHREAD eThreadBKill;
DWORD ThreadProcess;
ntstatus = ObReferenceObjectByHandle(ThreadHandle,GENERIC_READ,NULL,KernelMode,&eThreadBKill,0);
if(!NT_SUCCESS(ntstatus))
return STATUS_ACCESS_DENIED;
ThreadProcess = *((DWORD *)((DWORD)eThreadBKill + 0x220));
if (ThreadProcess == (DWORD)eprocBProtect) //eprocBProtect 是传进来的被保护的进程的 EPROCESS
ntstatus = STATUS_ACCESS_DENIED;
else
ntstatus = ((ZWTERMINATETHREAD)(OrgZwTerminateThread))(
ThreadHandle,
ExitStatus);
return ntstatus;
}
驱动其他代码应该没有问题,因为之前做过 ZwTerminateProcess 也没见出现问题
[课程]Android-CTF解题方法汇总!