因为我hook了以下函数
MyNtCreateThreadEx(
OUT PHANDLE ThreadHandle,
IN ACCESS_MASK DesiredAccess,
IN PVOID ObjectAttributes OPTIONAL,
IN HANDLE ProcessHandle,
IN PVOID lpStartAddress,//这个!!!
IN PVOID StartContext,//StartContext
IN BOOL CreateSuspended,
IN ULONG StackZeroBits,
IN SIZE_T SizeOfStackCommit,
IN SIZE_T SizeOfStackReserve,
OUT PVOID lpBytesBuffer)
{
}
一个线程的lpStartAddress,要去找它属于ProcessHandle所在进程的哪个BaseAddress和(BaseAddress+SizeOfImage)之间
我该去遍历那三个链表中的哪一个链表呢?
MyNtCreateThreadEx(
OUT PHANDLE ThreadHandle,
IN ACCESS_MASK DesiredAccess,
IN PVOID ObjectAttributes OPTIONAL,
IN HANDLE ProcessHandle,//该线程属于此ProcessHandle
IN PVOID lpStartAddress,//这个!!!
IN PVOID StartContext,//StartContext
IN BOOL CreateSuspended,
IN ULONG StackZeroBits,
IN SIZE_T SizeOfStackCommit,
IN SIZE_T SizeOfStackReserve,
OUT PVOID lpBytesBuffer)
{
}