阅读:2447回复:5
“瑞星”2000/NT下的filesystem hook是如何做的?完美的 hooker。
我发现安装“瑞星”后无须重启系统文件钩子即可生效,并且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] |
|
最新喜欢:ljmmar... |
沙发#
发布于:2002-10-12 23:48
呵呵!这个我倒是没有研究过,不过按照你的说法,没有使用过
IoAttachDevice、IoAttachDeviceByPointer、IoAttachDeviceToDeviceStack,那么就很有可能是我以前说过的一种方法!获得文件对象或者设备对象的驱动对象!把他们的请求函数处理表里面的函数入口全部替换掉! |
|
板凳#
发布于:2002-10-14 21:19
呵呵!这个我倒是没有研究过,不过按照你的说法,没有使用过 那种方法你实现了吗? |
|
地板#
发布于:2002-10-14 22:06
呵呵!原理我都说的很清楚了啊!在以前我已经在水园里面讲过的啊
|
|
地下室#
发布于:2002-11-01 14:09
想再详细的听听,教育网我上不去,可有链连或下载?
|
|
|
5楼#
发布于:2002-11-01 17:13
什么意思啊?这个只要你跟踪一下iofcalldriver就知道了!
|
|