拒绝受限轻松访问受权限保护的注册表键值_权限_键值_账户

出于安全考虑,注册表的一些重要键值默认受到系统的权限保护,即使我们以管理员身份运行“注册表编辑器”也没有访问的权限。那么该如何更方便地对这些键值进行访问呢?下面笔者介绍一些实用的方法。

文|俞木发

一、注册表权限备份和恢复

因为要对这些特殊键值进行访问,主要的方法就是对其键值权限进行更改,所以为了避免更改权限后造成不可预知的错误,在操作之前要对这些键值进行备份。

1.查看权限

对于受保护的键值,实际上是只有系统内置的SYSTEM账户有完全控制的权限,比如[HKEY_LOCAL_MACHINESAMSAM](保存本地账户信息键值),右击该键值选择“权限”,在组和用户列表中可以看到,Administrators组账户没有权限,只有SYSTEM账户有完全控制权限(图1)。

2.设置备份命令

既然只有SYSTEM账户才有权限访问,因此键值的备份也需要使用SYSTEM账户来进行操作。我们可以使用创建任务计划的方式实现备份。以管理员身份启动命令提示符,输入并执行命令“schtasks/create/sc minute/mo 60/tn"backup"/tr"reg export HKEY_LOCAL_MACHINESAMSAM X:SAM.reg"/ru SYSTEM/RL HIGHEST”,这样会创建一个名为“backup”的任务(图2)。

展开全文

3.运行备份任务

打开任务计划窗口,在任务列表中就可以看到创建的“back”任务。双击打开其属性窗口,可以看到它运行的账户是SYSTEM(通过schtasks命令行参数“/ru SYSTEM”配置),并且“使用最高权限运行”(通过schtasks参数“/RL HIGHEST”配置)(图3)。大家也可以使用类似方法来创建自己需要的命令行。

在任务列表右击“backup”并选择“运行”,这样完成任务的执行后就可以在X:看到备份好的sam.reg,打开后即可看到其中键值的内容(图4)。

4.导入恢复

如果在修改键值后出现错误,那么只要将图2中的“reg export”更改为“reg import”,同上在计划任务中运行指定的任务即可完成导入了。不要直接运行命令行或者双击reg文件,因为没有导入权限。

二、修改键值访问权限

如前言所述,一些特殊键值受到系统的权限保护,在完成上述的备份操作后就可以通过编辑权限的方法实现访问。比如需要打开[HKEY_LOCAL_MACHINESAMSAM]下面的子健,查看系统内置的账户信息,我们就可以使用下面的方法。

方法1:直接修改权限

在图1所示的界面中,选择Administrators组,然后勾选“完全控制”权限,点击“确定”后退出。按F5键刷新,现在再次展开上述键值就可以看到下面子健的内容了,按提示展开需要的键值查看账户信息即可(图5)。

方法2:regini命令行编辑权限

如果需要对远程电脑操作,或者自动完成对这类注册表权限的更改,还可以借助命令行。还是以上述键值的操作为例。

先启动记事本程序并输入“HKEY_LOCAL_MACHINESAMSAM[1]”(“1”表示完全控制权限),保存为1.ini,放置在“X:”下备用。接着再以管理员身份启动命令提示符,输入并执行命令“regini x:1.ini”,完成后就可以授予Administrators组账户对1.ini中指定键值有完全控制的权限了。如果需要编辑其他权限,可以执行命令“regini/?”查看其他数字的含义(图6)。

方法3:直接以SYSTEM身份运行regedit.exe

在Windows 10/11中,权限是可以继承的,既然只有SYSTEM账户有完全控制的权限,那么我们就可以使用SYSTEM身份运行regedit.exe,这样就可以拥有查看和修改键值的权限了。

先将下载的psexec.exe放置在D:备用,接着以管理员身份启动命令提示符,输入并执行命令“psexec-s-i regedit.exe”,启动的regedit.exe运行身份即为SYSTEM账户,可以打开任务管理器查看到(图7)。这样我们无需更改权限设置就可以访问任何受保护的键值了。 CF

原文刊登于2022 年 12月1 日出版《电脑爱好者》第 23 期

END

更多精彩,敬请期待……

特别声明

本文仅代表作者观点,不代表本站立场,本站仅提供信息存储服务。

分享:

扫一扫在手机阅读、分享本文