欺骗windows7进行系统登录
系统登录口令丢失,不可能在每种场景下都可以重装系统,那需要时间安装系统,以及配置系统环境,有些时候还是希望可以继续使用此系统,这就需要绕过当前用户的登录验证。
1、 进入PE系统
2、 使用unlock类似工具解锁C:WindowsSystem32osk.exe和C:WindowsSystem32cmd.exe文件
3、 将osk.exe剪切到别处,做为备份
4、 将C:WindowsSystem32cmd.exe重命名为osk.exe
5、 重新启动系统
6、 单击登陆窗口左下角的按钮
7、 开启软键盘功能,这时呈现在屏幕中的便是伪造的osk.exe程序,一个Console程序
8、 net user username pwd /add, net localgroup administrators username /add添加一个新帐户并将其加入系统管理员群组,使其具有管理员权限
9、 键入hostname,获得计算机名,并作记录
10、键入regedit,打开当前系统注册表,对以下键值进行修改
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionAuthenticationLogonUI]
"LastLoggedOnSAMUser"="计算机名\添加的用户名"
"LastLoggedOnUser"=".\添加的用户名"
根据上一个注册表项,对以下项目进行修改,使其与以上键值一致
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionAuthenticationLogonUISessionData1]
"LastLoggedOnSAMUser"="计算机名\添加的用户名"
"LastLoggedOnUser"=".\添加的用户名"
"LastLoggedOnProvider"="值同上面的注册表项的值"
"UserLanguageID"=dword:十进制数,计算机语种如1033代表英语,2025代表中文
11、重新启动系统,登陆窗口出现了你刚添加的用户账号,此时便可以输入口令进行系统登陆了。
Windows 7对系统文件有较强的保护,即使在PE系统下,一些系统文件在未通过特殊处理,是不允许进行更改,所以需要unlock类似的工具对osk.exe和cmd.exe文件在操作前进行预处理。
网上的大部分的场景是针对未加入域的计算机系统进行的,这时,只需要达到步骤8,便可以重新启动系统进行登陆了。
对于windows7以前的系统作者尝试过使用替换sam文件来解决普通的密码丢失问题,但在这次口令丢失的场景下,替换sam文件未奏效,也许是加入域了得原因吧,在此作者由于其他原因也未在未加入域的windows7下进行替换sam替换试验。
作者在一台已加入域的系统中进行的过程中发现,那些文章最起码对于以加入域的系统来说是有问题的。
当作者按照网上的步骤进行到步骤8,重启系统,进行登陆,系统提示密码出错,再用命令行打开注册表,发现添加的帐户确实已添加到了注册表中。这时作者打开explorer.exe,在打开文件的时候,系统提示session不合法,无法访问文件。
这时,作者通过当前登录窗口的显示的上次成功登录者的用户名,在注册表中进行搜索,看看是否能找到相关信息,果然在步骤10种的注册表项中找到了session数据,这是对比正常进入的系统中的该项键值,作者有了思路,可以试图伪造出来一个session数据,来欺骗系统,告诉windows上次登录成功者是作者后建立的账户。重新启动后,果然作者发现系统的登录界面中的上次登录成功者的帐户已经更改为后建立的账号了,此时键入口令,enter,成功进入windows7.
因为作者对windows系统的了解不是很深(对于步骤10种提到的对注册表键值的修改,也只是作者凭借经验去理解而进行的更改,),虽然想深入了解但是迫于其他原因,也只能将学习计划一再延后,在文中,提到的解决方法也只是自己的突发奇想,再加上一点黑客思想(因为作者很向往黑客,所以经常喜欢看些黑客技术,虽然有很多时候摸不到头脑,因为刚接触电脑技术才2年吧,呵呵,给自己找点借口,哈哈)-欺骗的艺术(希望这个短语没有涉及到侵权,哈哈),呵呵。不知道作者的思路是否得到理论上的支持,因为作者也未了解过 windows的登录过程。
本文只是为各位提供一个思路,至于,您是否可以从中获得别的启发,作者恳求您分享一下吧,呵呵。希望此次过程不会给恶意入侵者带来益处(目前作者也未想到,可以扩大战果的方法,比如如何才能继续使用以前的域帐户,哈哈)。
因为,在网络中未发现对加入域的计算机系统的口令丢失的解决方案,至少作者在遇到此问题,当时未在网络中检索到(包括英文网页),遂将此思路在此介绍给大家。
注:如发现我的理解或者说文章的技术观点有问题,甚至很大错误,希望发现的人给以观点,本初学者将不甚感激,呵呵.
PS:我的同事开发了一个MSDN论坛的小工具,有兴趣的朋友可以试试,此工具已开始在国内推行: