PspCidTable 完全解读 by sysdog 2009.5.1 Whu ------------------------------------------------------------------------------- 一、句柄 句柄:HADNLE 在winnt.h 定义如下: typedef void *HANDLE; 是一个 32 位无类型指针,充
转载
精选
2013-12-07 17:01:00
1770阅读
一、PspCidTable概述 PspCidTable也是一个句柄表,其格式与普通的句柄表是完全一样的,但它与每个进程私有的句柄表有以下不同: 1.PspCidTable中存放的对象是系统中所有的进程线程对象,其索引就是PID和TID。 2.PspCidTable中存放的直接是对象体(EPROCES
转载
2021-07-20 16:44:13
1298阅读
介绍 PspCidTable 是一个内核句柄表,存放进程和线程的内核对象(EPROCESS 和 ETHREAD),并通过 PID 和...
原创
2022-07-21 08:38:43
198阅读
PspCidTable表里。索引值总之4的倍数。也就是说 PID/4 才是PspCidTable索引。*8 才是PsPCidTable+偏移。获取进程对应的 _HANDLE_TABLE_ENTRY 结构 查找 Object_Header 地址 = Object对象地址-0x18 TypeIndex
原创
2021-07-20 15:39:14
113阅读
内核枚举进程使用PspCidTable 这个未公开的函数,它能最大的好处是能得到进程的EPROCESS
原创
2023-07-06 10:47:09
94阅读
原来进程Id和线程Id都是基于全局的句柄表PspCidTable生成,也就是句柄表的索引号。句柄表除了作为对象引用的容器以外,还有另一个用法:作为分配进程和线程的唯一ID 的有效手段。进程有一个唯一ID,称为UniqueProcessId;线程有一个CLIENT_ID 成员Cid,其中包含了所属进程的唯一ID 和线程自身的唯一ID。这些唯一ID 是怎么生成的呢?它们是通过调用ExCreateH