句柄表结构
1.这一块共计两个字节,低字节保留为0,高位字节是给SetHandleInformation这个函数用的,比如写成SetHandleInformation(Handle,HANDLE_FLAG_PROTECT_FROM_CLOSE,HANDLE_FLAG_PROTECT_FROM_CLOSE),那么这个位置将被写入0x02;
HANDLE_FLAG_PROTECT_FROM_CLOSE 宏的值为0x00000002,取最低字节,最终1这块是0x0200,
2.这块是访问掩码,是给OpenProcess 这个函数用的OpenProcess(dwDesiredAcess,bInheritHandle,dwProcessId);具体的存的就是这个函数的第一个参数的值
3和4这两块共四个字节,其中bit0-bit2 存的是这个句柄的属性,其中bit2 bit0默认为0,1;bit1 表示的函数是该句柄是否可继承;OpenProcess的第二个参数与bit1有关;
bit31-bit3则是存放的该内核对象在内核中的具体的地址