bladellz
驱动小牛
驱动小牛
  • 注册日期2006-03-20
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望121点
  • 贡献值0点
  • 好评度120点
  • 原创分0分
  • 专家分0分
阅读:1109回复:2

NtOpenProcess

楼主#
更多 发布于:2007-05-08 13:50
  HOOK NtOpenProcess后,

NTSTATUS
MyNtOpenProcess(  //参数省略
                    POBJECT_ATTRIBUTES ObjectAttributes)
{
    NTSTAUTS status;
   status=OldNtOpenProcess(...
                     POBJECT_ATTRIBUTES ObjectAttributes);


  //此处死机,WINDBG显示是ACCESS_VIOLATION,而且ObjectAttributes的值为0x0
   DbgPrint("%wZ\n",ObjectAttributes->ObjectName);  
}

高手给点建议
zh002008
驱动牛犊
驱动牛犊
  • 注册日期2004-08-22
  • 最后登录2013-09-06
  • 粉丝1
  • 关注1
  • 积分545分
  • 威望155点
  • 贡献值0点
  • 好评度51点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-05-16 16:27
换个取得函数地址的方法吧,让上层传下来吧
zqw2006
驱动牛犊
驱动牛犊
  • 注册日期2006-07-07
  • 最后登录2009-02-02
  • 粉丝0
  • 关注0
  • 积分430分
  • 威望44点
  • 贡献值0点
  • 好评度43点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-05-16 16:41
ObjectAttributes是输入参数,你需要判断输入参数的合法性。
应该是:
if (ObjectAttributes!=NULL)
  DbgPrint("%wZ\n",ObjectAttributes->ObjectName);
游客

返回顶部