您现在的位置: > 首页 > 软件应用 > 系统安全
>> 最新教程
>> 热门教程
>> 最新游戏资讯
>> 热门游戏资讯
ObjectType HOOK干涉注册表操作
作者:本站                来自:安迪教程网                 加入时间:08-07-03                进入论坛讨论

  来看ObOpenObjectByName,它会调用ObpLookupObjectByName来打开一个对象。

  对象头(object_header)有一个object type结构,object type结构里有一个TypeInfo,结构是OBJECT_TYPE_INITIALIZER

   typedefstruct_OBJECT_TYPE_INITIALIZER{
  USHORTLength;
  BOOLEANUseDefaultObject;
  BOOLEANCaseInsensitive;
  ULONGInvalidAttributes;
  GENERIC_MAPPINGGenericMapping;
  ULONGValidAccessMask;
  BOOLEANSecurityRequired;
  BOOLEANMaintainHandleCount;
  BOOLEANMaintainTypeList;
  POOL_TYPEPoolType;
  ULONGDefaultPagedPoolCharge;
  ULONGDefaultNonPagedPoolCharge;
  PVOIDDumpProcedure;
  PVOIDOpenProcedure;
  PVOIDCloseProcedure;
  PVOIDDeleteProcedure;
  PVOIDParseProcedure;
  PVOIDSecurityProcedure;
  PVOIDQueryNameProcedure;
  PVOIDOkayToCloseProcedure;
  }OBJECT_TYPE_INITIALIZER,*POBJECT_TYPE_INITIALIZER;

  OBJECT_TYPE_INITIALIZER 结构中一个指针ParseProcedure就是用来实现这类对象的打开的

  OBJECT_TYPE_INITIALIZER 中类似的有:

DumpProcedure;OpenProcedure;CloseProcedure;DeleteProcedure;ParseProcedure;SecurityProcedure;QueryNameProcedure;OkayToCloseProcedure;

  分别对应着对象的删除、lookup、获取名字等的例程,一般对象不是所有的routine都有。

  这些都是在ObCreateObjectType(系统启动时)填充的。

  例如KeyObject的TypeInfo:

<<< << < 1 2 3 > >> >>>
联系方式:QQ:6084884 email:agwcn@126.com 粤ICP备05055782号
本网站中发布的文章只代表发表人的个人观点,不代表安迪教程网网站的立场
copyright© 2000-2004 安迪教程网 All rights reserved agwcn.com