锁定注册表与注册表解锁

本文介绍了多种锁定和解锁注册表的方法,包括通过修改HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Policies/System分支设置DWORD值,使用Word宏、修改Regedit.exe文件、INF文件以及使用JScript和VBScript脚本来解锁。这些技巧揭示了注册表编辑器禁用与解锁的原理。

锁定注册表与注册表解锁

 

HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVerssion/Policies/System 分支下,新建DWORD值“Disableregistrytools”,并设键值为“1”。这样,当有人运行注册表编辑器时就会出现“注册编辑已被管理员所禁止”的对话框,这样就可以达到限制别人使用注册表编辑器的目的。给注册表解锁的方法有很多,编辑REG文件导入注册表是最常用的。


用Word的宏来解锁

具体方法是:运行Word,然后编写如下面所示的这个“Unlock”宏,即可给注册表解锁:

Sub Unlock()

Dim RegPath As String

RegPath = “HKEY_CURRENT_USER/Software

/Microsoft/Windows/CurrentVersion/Policies/System”

System.PrivateProfileString(FileName:=“”,Section:=RegPath,Key:=“Disableregistrytools”)=“OK!”

End Sub

其实,这个方法一点都不神秘,只是利用了注册表的一个特性,即在同一注册表项下,不能有相同名字的字符串值和DWORD值,如果先前有一个DWORD值存在,则后建立的同名的字符串值会将其覆盖,这也就间接的删除了原值。在本例中就是DWORD值Disableregistrytools被同名的字符串值所覆盖删除。

修改Regedit.exe文件

修改Regedit.exe文件也可以给注册表解锁,前提条件是手头上要有十六进制文件编辑软件如UltraEdit或WinHex等。我们以UltraEdit为例,用Ultraedit打开注册表编辑器Regedit.exe。点击“搜索”菜单下的“查找”,在弹出的对话框中的“查找ASCII字符”前面打上“√”,在“查找什么”栏中输入:Disableregistrytools,点击“确定”开始查找。会找到仅有的一处结果,改成别的字符就可以了。不过长度一定要一样(20个英文字母),这样就可以解除对注册表编辑器的禁用。


使注册表编辑器无法被禁用

给注册表编辑器Regedit.exe做个小手术,使之对注册表禁用功能具有“免疫力”,可以打造一个锁不住的注册表编辑器。这对防范恶意网页对注册表的禁用非常有好处。用十六进制文件编辑器Ultraedit打开Regedit.exe,查找74 1B 6A 10 A1 00,找到后,把74改为EB即可。现在,你就有了一个锁不住的注册表编辑器了。下次既使注册表被禁用也不用害怕了,只管运行之,保管恶意网页的修改无效。


用INF文件解锁


INF文件是由各个小节(Section) 组成。小节的名字从中括号中起,且在此文件中必须是惟一的。小节的名字是它的入口点。后面是小节内容,形式上是“键名称=键值”。在文件中可以添加注释,由分号完成,分号后的内容不被解释执行。让我们开始行动,用记事本编辑如下内容的文件:

用INF文件解锁

[Version]

Signature=“$CHICAGO$”

[DefaultInstall]

DelReg=del

[del]

HKCU,Software/Microsoft/Windows/CurrentVersion/Policies/

System,Disableregistrytools,

1,00,00,00,00

将上面的内容存为del.inf,使用时用右键点击它,在弹出菜单中选择“安装”即可给注册表解锁。

用JScript解锁

用记事本编辑如下内容的文件,保存为以 .js 为后缀名的任意文件,使用时双击就可以了。

VAR WSHShell=WSCRIPT.CREA-TOBJEt(“WSCRIPT.SHELL”);

WSHShell.Popup(“为你解锁注册表”);

WSHShell.RegWrite(“HKCU//Software//Microsoft//

Windows//CurrentVersion//Policies//

system//DisableRegistryTools”, 0,“reg_dword”);

可以看出用JS对键值进行操作时要用两斜杠“//”,并且要用“;”表示结束。一般只要能注意这两点,就没有问题了。


用VBScript解锁

用记事本编辑如下内容:

DIM WSH

SET WSH=WSCRIPT.CreateObject(“WSCRIPT.SHELL”)

WSH.POPUP(“为你解锁注册表!”)

WSH.Regwrite“HKCU/Software/Microsoft/Windows/

CurrentVersion/Policies/System/DisableRegistryTools”,0,“REG_DWORD”

WSH.POPUP(“注册表解锁成功!”)

将以上内容保存为以 .vbs 为扩展名的任意文件,使用时双击即可。

声明:资源均由网络收集而来,本人不对此负任何责任,使用前请三思!
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值