(编辑:jimmy 日期: 2024/11/20 浏览:2)
在Windows XP系统里,能够交互式登录的账户,除了我们后期自己建立的账户外,还有两个系统内置的账户:一个是管理员账户Administrator,另一个就是来宾账户Guest。我们可以在CMD环境使用net user命令查看账户信息,如下图:
我们还可以在net user命令后面跟上账户的名字以查看该账户的具体信息,如下图:
账户是可以被禁用的,也可以被删除(系统内置账户除外),使用net user命令也是可以禁用账户的,用法:net user 账户名 /active:no。注意有空格和斜杠,如下图:
相反,你要启用一个账户的话,把no改成yes就可以了。 好了,系统内置的账户是不能被删掉了,但它却是可以被禁用的,包括你当前登录的账户,也是可以被禁用的,换句话说,就可以把系统里所有可以交互式登录的账户禁用掉。如果谁搞个恶作剧或者是恶搞类的病毒就这么做了,后果会是怎么样呢?很显然,当你重启之后,系统就会变成这样的:
登录界面上没有任何用户,因为全部被禁用了。按住Ctrl+Alt+两次Del键切换到经典登录模式,输入账户名和密码也不能登录,如下图:
那该怎么办呢?所有账户都没有办法登录,难道只能重装系统吗?当然不是,下面就跟着我一步一步去解决这个问题。
首先,你可能会想到安全模式或者是使用最后一次正确配置,但遗憾的是这都没有用,读者如果感兴趣的话,可以自行实验(推荐在虚拟机中完成)。那怎么办呢?我们应该知道,Windows的东西全部是保存在注册表中的,包括账户的信息,那么能不能通过直接修改注册表的方式来实现启用一个账户呢?因为只要能找到关于账户是否被禁用在注册表中对应的位置,就能够通过修改注册表来启用这个账户。
在讲注册表的时候就提到过,账户的一些信息存储在HKLM/SAM项下面,现在的问题就是操作系统无法登录,我又如何去编辑注册表呢?这个时候就不得不请出大名鼎鼎的ERD Commander了,这是一套紧急修复磁盘,用它可以引导你硬盘上无法启动的操作系统,从而进行一些维护,功能超级强!所以我们最终的思路就是用ERD系统引导硬盘上无法启动的系统,修改它的注册表去实现启用账户。思路有了,接下来就是实验:
首先用ERD Commander引导计算机(ERD Commander的iso文件可以在网上下载到)
然后用刻录软件刻录到光盘上或者做成U盘启动盘就可以用来启动计算机了,进入ERD系统的登录界面:
在这个登录界面上,会列出它所检测到的在这个硬盘上安装的所有操作系统,选择你要引导的那个系统,然后点“OK”。
ERD就开始去引导你硬盘上的操作系统了。操作系统启动完成后,从“开始”菜单启动RED系统注册表编辑器(必须是ERD系统的注册表编辑器),如下图:
那么,现在打开的这个注册表就是原来本地硬盘的注册表了,现在我们就可以开始修改注册表了。在注册表编辑器中定位到:HKLM/SAM/SAM/Domain/users/Names,下面以启用Administrator这个账户为例讲解。选中项Names下面的账户名,右面就会显示出一个默认的键值,如下图:
图中,管理员账户Administrator的值是0x1F4。然后再在user项的上面找一下哪个项的值是000001F4,选中该项,右面会出现两个键值,一个叫F,另一个叫V,如下图:
双击那个名为“F”的,需要修改它的值,这是一个二进制的数据类型,将他的第39个字节由11改成10,11代表该账户被禁用,10代表启用(guest账户的为15和14)。修改完成后点击“OK”,关闭ERD注册表编辑器,重启系统,问题解决!