- 欢迎访问起航教学!
Windows 7密码重设盘的内部原理浅析
12-14 18:36:14 分类:Win7技巧 浏览次数: 927次
标签:Win7技巧大全,http://www.qihang56.com
Windows 7密码重设盘的内部原理浅析,
可能有兄弟觉得密码重设盘是雕虫小技,很简单,甚至是鸡肋,因为既然不怕麻烦特意创建一个密码重设盘,又怎么会那么粗心忘记密码呢?
其实它背后的原理还是很有意思的,这里试做简单分析。
在Windows XP时代,我们知道当用户创建密码重设盘时,Windows系 统会自动创建一对公钥和私钥,以及一张自签署的证书。接下来,将会用所得的公钥对用户帐户的密码进行加密,然后保存在注册表项 HKEY_LOCAL_MACHINE\SECURITY\Recovery\< SID>中,其中的< SID>就是指该用户的SID。而私钥则从计算机中删除,并且保存在软盘里。
到了Windows 7时代,我们知道私钥会以userkey.psw文件的形式保存在软盘或者USB闪存里。
但是如果我们尝试查看HKEY_LOCAL_MACHINE\SECURITY\Recovery注册表项,发现其下是空的,并没有什么用户SID。
那么用公钥加密的用户密码,到底存放在哪里了呢?很显然,如果光有私钥,而没有经过公钥加密的帐户密码副本,无法获取用户帐户的密码。
经过研究发现(盆盆是借用Process Monitor发现的,比较懒,不想写具体过程了,过程也简单),原来在创建密码重设盘的过程中,Windows安全子系统进程Lsass.exe会自动创建一个Recovery.dat注册表配置单元文件,保存在C:\Windows\System32 \Microsoft\Protect\Recovery文件夹中。而Lsass.exe进程会自动将其加载到注册表HKLM\C80ED86A- 0D28-40dc-B379-BB594E14EA1B中。C80ED86A-0D28-40dc-B379-BB594E14EA1B意义不 明,Google也没有结果,哪位老大知道,还请不吝指教。
由于密码重设盘创建完成后,Lsass.exe进程会自动卸载该注册表配置单元,所以我们无法查看HKLM\C80ED86A-0D28-40dc-B379-BB594E14EA1B下的内容。但是比较容易想到的是,可以借助以下方法进行查看:
用管理员权限打开命令提示符窗口,并且运行以下命令,以Local System身份启动注册表编辑器(Recovery.dat需要用Local System权限才能加载):
Psexec -s -i -d regedit
选中HKLM注册表根键,然后单击文件、加载配置单元,并定位到C:\Windows\System32\Microsoft\Protect\Recovery\Recovery.dat文件。
在接下来的对话框里任意指定一个项名称,例如可以是Test,然后展开其下的子项,可以看到当前登录帐户的SID,其右侧的默认键值,即保存了用公钥所加密的帐户密码副本
本文来自 http://www.qihang56.com 谢谢支持!
可能有兄弟觉得密码重设盘是雕虫小技,很简单,甚至是鸡肋,因为既然不怕麻烦特意创建一个密码重设盘,又怎么会那么粗心忘记密码呢?
其实它背后的原理还是很有意思的,这里试做简单分析。
在Windows XP时代,我们知道当用户创建密码重设盘时,Windows系 统会自动创建一对公钥和私钥,以及一张自签署的证书。接下来,将会用所得的公钥对用户帐户的密码进行加密,然后保存在注册表项 HKEY_LOCAL_MACHINE\SECURITY\Recovery\< SID>中,其中的< SID>就是指该用户的SID。而私钥则从计算机中删除,并且保存在软盘里。
到了Windows 7时代,我们知道私钥会以userkey.psw文件的形式保存在软盘或者USB闪存里。
但是如果我们尝试查看HKEY_LOCAL_MACHINE\SECURITY\Recovery注册表项,发现其下是空的,并没有什么用户SID。
那么用公钥加密的用户密码,到底存放在哪里了呢?很显然,如果光有私钥,而没有经过公钥加密的帐户密码副本,无法获取用户帐户的密码。
经过研究发现(盆盆是借用Process Monitor发现的,比较懒,不想写具体过程了,过程也简单),原来在创建密码重设盘的过程中,Windows安全子系统进程Lsass.exe会自动创建一个Recovery.dat注册表配置单元文件,保存在C:\Windows\System32 \Microsoft\Protect\Recovery文件夹中。而Lsass.exe进程会自动将其加载到注册表HKLM\C80ED86A- 0D28-40dc-B379-BB594E14EA1B中。C80ED86A-0D28-40dc-B379-BB594E14EA1B意义不 明,Google也没有结果,哪位老大知道,还请不吝指教。
由于密码重设盘创建完成后,Lsass.exe进程会自动卸载该注册表配置单元,所以我们无法查看HKLM\C80ED86A-0D28-40dc-B379-BB594E14EA1B下的内容。但是比较容易想到的是,可以借助以下方法进行查看:
用管理员权限打开命令提示符窗口,并且运行以下命令,以Local System身份启动注册表编辑器(Recovery.dat需要用Local System权限才能加载):
Psexec -s -i -d regedit
选中HKLM注册表根键,然后单击文件、加载配置单元,并定位到C:\Windows\System32\Microsoft\Protect\Recovery\Recovery.dat文件。
在接下来的对话框里任意指定一个项名称,例如可以是Test,然后展开其下的子项,可以看到当前登录帐户的SID,其右侧的默认键值,即保存了用公钥所加密的帐户密码副本
本文来自 http://www.qihang56.com 谢谢支持!
相关热词搜索:
- ·上一篇:电脑自动重启的常见原因
- ·下一篇:输入regedjt命令被禁用问题
分享到:
收藏
评论排行
Win7技巧 热门排行
- · Win7下如何正常安装使用AutoCAD2017
- · Windows7下安装VS2017提示“You have
- · Windows7关机速度提升
- · Ubuntu9.10\Win7双系统 重装后修复GRU
- · Windows7系统更改无线网络优先级的方法
- · 轻松玩转Win 7中“轻松访问中心”
- · Windows 7新增组合键
- · Win7系统如何隐藏或取消隐藏文件夹
- · 关闭Windows7显示器校准
- · Win 7系统怎样显示文件类型扩展名
- · Windows 7开机启动项介绍
- · Win7 eSATA接口优化
- · Windows 7轻松传送文件
- · 解决Win7忘记登入密码问题
- · Msconfig管理Win7引导配置
- · 教你硬盘安装win7系统详细图文教程
- · win7玩游戏无法全屏的一些解决方法
- · Win7下5种方式打开资源管理器
- · 教程:Windows7下硬盘安装BT4方法
- · Win7/Vista/XP下两个切换IP地址的批处
- · Windows 7主题包中的壁纸从哪儿来
- · Windows 7密码重设盘的内部原理浅析
- · Windows 7升级的八大步骤
- · 清理和关闭多余的Win7系统服务