近日无聊,打开在vmware下搞了个win7 sp1捣鼓一番。按照习惯先查看pspcidtable,发现NextHandleNeedingPool是0x1000,也就是说已经有1级表了。由于这个win7是纯净版的,新装状态下就已经有这么多的cid了,在干净xp和2003上,几乎都是只有0级表的,故顿时感觉win7真是耗不少的资源。
随便找个进程看看,用!process确定了explorer.exe的EPROCESS地址,从pspcidtable依次查找过去,老的查表方法依然成功,没有发现多大的变化。继续探索,想找到OBJECT_TYPE_INITIALIZER看看一些OpenProcedure,CloseProcedure之类的过程有没有什么不同。把得到的EPROCESS地址8718b4c8减去0x18,即8718b4b0,直接以dt _object_header 8718b4b0观察之,居然发现,ObjectType的指针居然没有了!!