阅读:4026回复:24
注册表键值的隐藏问题
经过一个月的奋斗,我现在已经可以在win2k/winxp/win2003下成功的实现文件、文件夹、进程、服务端口的隐藏了。
但有一个奇怪的问题,在win2k下进行注册表键值的隐藏一点问题没有,但在winxp和win2003下却不行。 现在我已经把上面的功能包装成一个程序了,用户可以通过设置配置文件来决定隐藏哪些东西。操作上还比较方便。 有兴趣的可以交流一下。 |
|
最新喜欢:threeb... |
沙发#
发布于:2004-09-13 10:59
除了HOOK SERVICETABLE里的函数.你还用了什么方法???
|
|
|
板凳#
发布于:2004-09-13 21:22
经过一个月的奋斗,我现在已经可以在win2k/winxp/win2003下成功的实现文件、文件夹、进程、服务端口的隐藏了。 把你的思路给大伙透露一点吧, :) :) :) :) |
|
|
地板#
发布于:2004-09-14 08:41
我只利用了HOOK SERVICETABLE,这是我写得第一个内核驱动,所以在实现上是简单了点。
这个程序是配合我的一些其它程序使用的,我把实现功能放在第一位了,对技术倒没有新的创意。用最简单的技术实现自己想要的功能是我的目标。只有搞不定了,我才会去看一些更难的技术。还是要结合自己的工作实际做好一点。 高手不要见笑。呵呵。 |
|
地下室#
发布于:2004-09-14 08:46
以前我发贴询问win2k+win2kddk下写的这个驱动到winxp下为什么死机。后来发现是机器的原因换了其它没装ddk的winxp和win2003,程序没有做任何修改就可以正常使用了,基本上做到了二进制程序兼容,这也算是我的一点收获吧。
|
|
5楼#
发布于:2004-09-14 10:05
谢谢了!
HOOK SERVICETABLE 我没有用过,试试。 |
|
|
6楼#
发布于:2004-09-14 10:38
用工具Win2K/XP SDT Restore可以很简单的还原通过HOOK SERVICETABLE实现的功能。
用HOOK SERVICETABLE和File System Filter哪个更可取呢,高手指点一下吧。 |
|
|
7楼#
发布于:2004-09-14 14:00
File System Filter在文件隐藏中更好些。。。。。
|
|
|
8楼#
发布于:2004-09-14 14:01
基本上ROOTKIT都有这些功能了。。。。。
|
|
|
9楼#
发布于:2004-09-14 17:36
友情提示一下楼主:通过Hook Service来隐藏文件/文件夹是不可靠的。
用户可以先启动网络共享功能(也就是打开Server服务),然后这样做: \\\\127.0.0.1\\< Drive Letter >$\\< Share Name > 如果你不做一些特别处理的话,这时候你的驱动是起不了作用的。 当然,最可靠的方法就是使用IFS Filter来做。 |
|
10楼#
发布于:2004-09-15 09:21
是HOOK SERVICETABLE里的函数,不是Hoook service,另外这个程序我已经连续运行一个月了,没有出现问题。
|
|
11楼#
发布于:2004-09-15 09:24
多谢了。
|
|
12楼#
发布于:2004-10-13 15:49
刚来 顶
|
|
13楼#
发布于:2004-10-15 09:33
我也正在做这方面的学习,隐藏注册表好像老是有问题,我查了有资料的注册表函数大概有这么2个,一个是ZwEnumerateValueKey一个是ZwQueryValueKey这2个函数我都实现了Hook,但是有以下的一些问题:
1、ZwEnumerateValueKey函数只有一个Index的参数来标识某一键下的第几个键值,没法指定隐藏某一个键值,我能做的就是判断当Index等于多少的时候就隐藏,问题是这样会导致所有其后的注册表键值通通看不到了。。。而且这样会造成所有注册表键的键值都隐藏不能达到我希望的隐藏某一个表项的键值(比如Run下面),另外如何才能指定隐藏某一个键下面的键值呢?输入的关于Key的参数不过是一个Handle通过他怎么知道当前是要取哪一个键下的键值呢? 2、ZwQueryValueKey这个函数是有ValueName参数了,可以实现“指哪儿打哪儿了”不过即使拦截了他,在注册表中照样可以浏览到键值,只不过在双击打开进行查看修改键值的时候说无法打开,不知道为何? 3、对于一些管理注册表的软件好像隐藏就比较麻烦了,拦截ZwEnumerateValueKey也没办法,因为好像实现遍历注册表的流程是先取出某一个Key的所有键值的数目然后逐个用ZwQueryValueKey来进行取值,这样的话如果拦截ZwEnumerateValueKey返回不成功来实现隐藏就会搞笑的情况,比如当Index=3时候隐藏,那么执行后看到的就是第二项和第三项是完全一样的,但是这样还是没有实现隐藏啊,不过是将注册表搞乱了而已,别人感觉不爽,Delete.... |
|
14楼#
发布于:2004-10-15 10:27
是HOOK SERVICETABLE里的函数,不是Hoook service,另外这个程序我已经连续运行一个月了,没有出现问题。 哪有这方面的资料或者sample?推荐一下,多谢! |
|
15楼#
发布于:2004-10-21 08:45
楼主详细介绍一下嘛!
|
|
16楼#
发布于:2004-11-04 16:35
我也遇到了与楼主同样的问题。在Hook ZwEnumerateValueKey后对缓冲区数据处理后,发现XP就是不行!如果动了Datalength则根本无法读取成功,如果不动,则数据根本不变,很奇怪。一起讨论一下!
另外有个问题,2003下文件隐藏的兼容性是怎样做到的呢? 我的email:coffee_qiqi@hotmail.com 讨论讨论 |
|
17楼#
发布于:2004-11-09 14:55
一起学习
|
|
18楼#
发布于:2007-08-18 11:02
引用第0楼redhand于2004-09-12 20:39发表的 注册表键值的隐藏问题 : 楼主好:我也做了个隐藏进程,文件,文件夹和注册表键值的驱动程序,同时做了个用户态程序和动态加载程序,从用户态下输入要隐藏的相应的文件,进程。。。 不知道楼主在一次动态加载后能够同时隐藏多少个进程,文件,或是注册表键值?我 做的程序恰好在隐藏多个键值的时候,有点问题,目前还没想到思路,可以把你的想法和我们分享一下吗?谢谢! |
|
19楼#
发布于:2007-08-18 20:26
object级别隐藏起来比较方便~
哈哈~ |
|
|
上一页
下一页