原创 注册表知识1

2006-10-15 19:02 3463 12 12 分类: 消费电子

注册表是Windows操作系统的核心。它实质上是一个庞大的数据库,存放有计算机硬件和全部配置信息、系统和应用软件的初始化信息、应用软件和文档文件的关联关系、硬件设备说明以及各种网络状态信息和数据。可以说计算机上所有针对硬件、软件、网络的操作都是源于注册表的。


  本文详细罗列出各种注册表的修改实例,并明确标注其适应的范围,以利于读者速查。(我们已经讲了上半部份《Windows注册表修改实例完全手册(上)》,今天我们讲下半部份)。


  三、加强Windows系统安全


  在目前这个病毒泛滥,"黑客横行"的网络时代,我们必须有备无患,加强计算机系统的安全。而注册表作为Windows操作系统的核心部分,往往成为病毒和黑客利用的工具。如果使用者缺乏注册表的相关知识,将无法找到病毒的"发源地",而无法将之清除。另一方面,注册表也起着积极的作用。通过注册表,我们可以进一步加强Windows系统的安全,防止各种非授权的使用,以防止病毒和黑客的入侵。


  1.保护个人信息


  如果你是和别人合用一台计算机,或者你有比较私人的内容需要保护,那么你可以通过注册表来加强对这些私人信息的保护。


  (1)清除本机访问信息


  一般情况下,Windows为了方便使用者,总是将使用者最近访问过的文档、运行过的程序等信息保存下来,我们需要去除掉Windows提供的这种方便。


  下表中的值项,位于注册表项HKEY_CURRENT_USER\Software\Microsoft\ Windows\CurrentVersion\Policies\Explorer中。


  (2)清除操作信息


  在我们使用Windows操作系统的过程中,很多操作内容都被存放到了注册表中。例如通过"开始"菜单的"运行"项运行过的程序名称、访问过"网上邻居"中的计算机、访问过计算机上的文件夹等。通过注册表,我们可以手工清除这些信息。


  (3)加密个人文件夹


  上面讨论的都是清除用户适用计算机时留下的信息。下面我们利用注册表知识,来加密我们的存放了个人信息的文件夹。


  我们知道,如果想隐藏你的文件夹,通过将文件夹的属性设置为"隐藏"是没有用的。用户只需要在资源管理器的"工具"→"文件夹选项"→"查看"对话框中,选择"显示所有的文件和文件夹"项,就可以看到所有隐藏属性的文件夹和文件。有一个小技巧,可以有效的保护你的文件夹。这个技巧就是,用类标识符作为文件夹名的文件扩展名。例如我们想保护文件夹C:\mydata。


  首先在注册表项HKEY_CLASSES_ROOT中找到某个文件类型的CLSID,如MIDI文件的CLSID是{00022603-0000-0000-C000-000000000046}。将文件夹mydata的名称加上{00022603-0000-0000-C000-000000000046}这个文件扩展名,即将C:\mydata的名称修改为"C:\mydata.{00022603-0000-0000-C000-000000000046}"。这时C:\mydata的图标就从文件夹的图标变成了MIDI文件的图标。


  在资源管理器中双击该图标,系统会报告该MIDI文件内容错误,无法播放(系统将文件夹当作MIDI文件处理了),因此用户无法进入C:\mydata,也就无法查看该文件夹下的内容。这样做的好处是,我们可以成功的将我们的私人文件夹伪装成一个普通的MIDI文件。


  惟一能够查看文件夹内容的方法是:在DOS窗口中,使用CD命令进入到该文件夹。


  你可能会说,用户只要将该文件夹的文件扩展名去除,不就可以将保护的文件夹恢复出来了吗?不用担心,用户做不到这一步。即使用户在资源管理器的"工具"→"文件夹选项"→"查看"对话框中,去除对"隐藏已知文件类型的扩展名"选项的选择,使所有的文件都显示出扩展名。在资源管理器中,C:\mydata也不会出现扩展名。这样,用户就无法去除或者更改C:\mydata. {00022603-0000-0000-C000-000000000046}的CLSID部分。


  如果想在资源管理器中正常地查看该文件夹里的内容,可以在DOS窗口中,将该文件夹重新改名为正确的名称。


  该方法结合下面的限制运行程序的方法(限制运行DOS窗口),可以很有效的保护你的文件夹。


  2.限制用户运行的程序(适用范围:Windows 9x/Me/NT/2000/XP)


  (1)禁止用户通过"运行"来运行应用程序


  通过"开始"菜单的"运行",用户可以输入命令来启动某个程序。对于那些不是EXE为扩展名的程序,也可以直接运行。如果不希望用户随意执行程序,可以将"开始"菜单中的"运行"项去除。


  进入到注册表项HKEY_CURRENT_USER\Software\Microsoft\ Windows\CurrentVersion\Policies\Explorer中,新建一个双字节值项NoRun,修改其值为1。


  提示:除了"运行"外,可以在DOS窗口中手工输入命令来启动某个程序。


  (2)禁止用户运行命令解释器和批处理文件(适用于Windows NT/2000/XP)


  通过修改注册表,可以禁止用户使用命令解释器(CMD.exe)和运行批处理文件(BAT文件)。


  进入到注册表项HKEY_CURRENT_USER\Software\Policies\ Microsoft\Windows\System\中,新建一个双字节值项DisableCMD,修改其值为2。则命令解释器和批处理文件都不能够被运行。如果只是禁止命令解释器的运行,而运行批处理文件的运行,则修改DisableCMD的值为1。


  (3)禁止运行指定的程序


  为了安全性起见,我们可能希望有些带有危险性的程序不让用户去运行。这可以通过注册表来实现。例如我们想禁止用户运行记事本(notepad.exe)和计算器(cal.Exe)。


  首先在注册表项HKEY_CURRENT_USER\Software\Microsoft \Windows\CurrentVersion\Policies\Explorer中,新建一个双字节值项DisallowRun,修改其值为1,以允许我们定义禁止允许的程序,然后新建一个注册表项HKEY_CURRENT_USER\Software\Microsoft\ Windows\Current Version\Policies\Explorer\DisallowRun,在其下新建两个字符串值项。第一个值项的名称为1,值为notepad.exe,第二个值项为2,值为calc.exe。如果想禁止更多的程序,可以依次建立名称为3、4等顺序往下排列的值项。修改注册表后立即生效。这时想通过"开始"菜单运行记事本和计算器程序,系统会提示不能进行此操作。


  注意:用户在Windows NT/2000/XP的命令解释器(CMD.exe)窗口中,仍然可以通过输入"notepad.exe"运行记事本。这是因为DisallowRun禁止的只是通过资源管理器Explorer运行的程序,记事本不是通过Explorer启动的,所以就无法禁止了。如果不希望用户可以通过命令解释器运行程序,应该在DisallowRun中将命令解释器(CMD.exe)禁止。另外,此方式还有一个不安全之处,就是如果用户将记事本程序"notepad.exe"更改名称,如改成"note.exe",用户就可以运行它了。


  (4)只允许运行指定的程序


  为了限制用户运行程序,我们可以指定用户只能运行某些必须的程序。这种方式可以避免用户运行自己携带来的程序,有效地防范病毒地传播。这可以通过注册表来实现。


  首先在注册表项HKEY_CURRENT_USER\Software\Microsoft \Windows\Current Version\Policies\Explorer下新建一个双字节值项RestrictRun ,修改其值为1,以允许我们指定可以运行的程序。


  然后新建一个注册表项HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\RestrictRun,在其下新建两个字符串值项。第一个值项的名称为1,值为notepad.exe,第二个值项为2,值为calc.exe。如果想允许更多的程序,可以依次建立名称为3、4等顺序往下排列的值项。修改注册表后立即生效。这时想通过"开始"菜单和资源管理器运行其他的程序,系统会提示不能进行此操作。


  提示:如果你没有允许注册表编辑器运行,你会发现你将无法恢复此方法所做的修改,因为无法用注册表编辑器来修改注册表了。在这种情况下,你可以将注册表编辑器程序的名称改变为你允许运行的某个程序的名称,这样你就可以运行起来注册表编辑器了。


  注意:由于此方法的限制性非常大,所以请小心使用,尤其是避免没有允许任何程序运行这种情况。如果出现了这种情况,你将无法将此方法做的设定改变回来,因为你无法修改注册表。惟一的方法就是恢复修改前的注册表备份。


 

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
我要评论
0
12
关闭 站长推荐上一条 /3 下一条