super9
驱动牛犊
驱动牛犊
  • 注册日期2008-08-06
  • 最后登录2009-04-29
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望99点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1936回复:0

SSDT中hook zwcreatfile的疑惑,希望大虾们指教!

楼主#
更多 发布于:2008-10-12 19:25
本人是菜鸟,刚学习rootkit,决定做个SSDT中hook zwcreatfile的重定向程序。
在Hook了zwcreatfile后保留原地址old_zwcreatfile,并用新地址hook_zwcreatfile覆盖,当需要重定向的源文件A和目的文件B的路径长度不一样时,构造新的OBJECT_ATTRIBUTES结构,并使原始传入参数指向新的结构,可是运行系统错误。细查大虾们的帖子,发现是usermode和kernelmode的问题,可是自己又不会改变这些,于是采用WQXNETQIQI 大虾介绍的其中一个简单方法,当出现需要HOOK的文件A时,重新调用zwcreatfile并将路径改为B(重入?),这样就成功了。小弟不知道具体的原因,看大虾们说是什么线程模式的切换也看得云里雾里,自我感觉是因为调用zwcreatfile系统不需检查usermode和kernelmode的问题,而Ntcreatfile就要检查usermode和kernelmode的问题,不知是不是?请大虾赐教!
游客

返回顶部