chengliuwen
驱动牛犊
驱动牛犊
  • 注册日期2002-10-06
  • 最后登录2004-01-15
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:2398回复:5

“瑞星”2000/NT下的filesystem hook是如何做的?完美的 hooker。

楼主#
更多 发布于:2002-10-07 19:27
我发现安装“瑞星”后无须重启系统文件钩子即可生效,并且hook A盘时没有读盘动作,非常完美。研究了一下它的.sys二进制代码,发现它程序中引用了\\FileSystem\\Ntfs、\\FileSystem\\Fastfat、\\FileSystem\\Rdr、\\FileSystem\\MRxSmb、\\FileSystem\\Cdfs,使用这些东西有什么用途呢??并且同时也未找到它引用了IoAttachDevice、IoAttachDeviceByPointer、IoAttachDeviceToDeviceStack这些hook时用的函数,真不知它是如何做的??

再进一步研究发现:它试图hook \"\\DosDevices\\a:\"...\"\\DosDevices\\z:\",这一点与filemon不同,filemon 用的是\"\\DosDevices\\a:\\\",这样不会出现“读盘”动作,但又如何做到拦截文件操作呢?

小弟刚入门,有很多问题想不通,肯请哪位大侠赐教:如何做出象瑞星这样的filesystem hook?或有其它比filemon更好的办法。先谢过了!!!

[编辑 -  10/7/02 by  chengliuwen]

最新喜欢:

ljmmaryljmmar...
guardee
驱动巨牛
驱动巨牛
  • 注册日期2002-11-08
  • 最后登录2010-05-29
  • 粉丝2
  • 关注1
  • 积分2分
  • 威望34点
  • 贡献值0点
  • 好评度6点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-10-12 23:48
呵呵!这个我倒是没有研究过,不过按照你的说法,没有使用过
IoAttachDevice、IoAttachDeviceByPointer、IoAttachDeviceToDeviceStack,那么就很有可能是我以前说过的一种方法!获得文件对象或者设备对象的驱动对象!把他们的请求函数处理表里面的函数入口全部替换掉!
fracker
驱动太牛
驱动太牛
  • 注册日期2001-06-28
  • 最后登录2021-03-30
  • 粉丝0
  • 关注0
  • 积分219分
  • 威望81点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分1分
  • 社区居民
板凳#
发布于:2002-10-14 21:19
呵呵!这个我倒是没有研究过,不过按照你的说法,没有使用过
IoAttachDevice、IoAttachDeviceByPointer、IoAttachDeviceToDeviceStack,那么就很有可能是我以前说过的一种方法!获得文件对象或者设备对象的驱动对象!把他们的请求函数处理表里面的函数入口全部替换掉!


那种方法你实现了吗?
guardee
驱动巨牛
驱动巨牛
  • 注册日期2002-11-08
  • 最后登录2010-05-29
  • 粉丝2
  • 关注1
  • 积分2分
  • 威望34点
  • 贡献值0点
  • 好评度6点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-10-14 22:06
呵呵!原理我都说的很清楚了啊!在以前我已经在水园里面讲过的啊
minsoft
驱动小牛
驱动小牛
  • 注册日期2001-07-30
  • 最后登录2007-03-06
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-11-01 14:09
想再详细的听听,教育网我上不去,可有链连或下载?
少了e,就少了全部
guardee
驱动巨牛
驱动巨牛
  • 注册日期2002-11-08
  • 最后登录2010-05-29
  • 粉丝2
  • 关注1
  • 积分2分
  • 威望34点
  • 贡献值0点
  • 好评度6点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2002-11-01 17:13
什么意思啊?这个只要你跟踪一下iofcalldriver就知道了!
游客

返回顶部