阅读:1742回复:7
老话题新想法:“瑞星”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更好的办法。先谢过了!!! |
|
最新喜欢:![]() |
沙发#
发布于:2002-10-07 22:24
那好好研究吧!祝你好运!
|
|
板凳#
发布于:2002-10-08 01:10
最简单的就是修改ServiceTable
截ZwCreateFile ZwOpenFile就行了 没有任何问题 |
|
|
地板#
发布于:2002-10-08 09:45
最简单的就是修改ServiceTable 这个有问题的。特别是修改ZwOpenFile,他会让你死的不明不白。 |
|
|
地下室#
发布于:2002-10-08 10:05
没有任何问题
如果是经常死机说明你的程序有问题 |
|
|
5楼#
发布于:2002-10-08 12:13
可惜小弟还很菜,只会用记事本看.sys中的东西(看不懂汇编),所以无法从根本上了解瑞星的工作过程。
怎样修改“ServiceTable”??如何做?能否再详细一些??谢谢。 |
|
6楼#
发布于:2002-10-08 14:46
发一个瑞星的驱动来看看。fracker@yeah.net
|
|
7楼#
发布于:2002-10-08 15:32
大侠们能否帮着研究一下,附件是瑞星的驱动,看能否有些头绪。
|
|
|