用 Chntpw 清除 Windows 系统账号的密码
本文已发于《黑客X档案》2011.8、9月合刊
安全是什么样的一个概念?系统里安了杀毒软件、防火墙、病毒库最新就是安全吗?不是的。在我看来,一名入侵者能够利用社会工程学坦然地绕过重重的人力保护,而他本人又有着一身精湛的技术,直奔目标,窃取走资料或者悄悄留下 backdoor,这才是真正的高手。
当我们悄悄地走到目标者的办公室里,准备大干一把,窃取电脑里的资料时,按下电脑主机箱的电源,当系统启动到欢迎界面时,却出现了图1所示的画面,让人不得不抓狂。试了一些弱口令却仍旧无效。又在办公桌上翻了翻是否有将常用密码记录到本子或者纸条里的,也无任何收获。
人们总认为,系统加了密码是安全的。在我初中的时候,我母亲用密码锁住系统,我就用事实证明了,只要能接触到物理机,即便系统设了密码,也未必是安全的(当时用的其他方法绕过系统密码的)。接触到物理,是信息安全战争中最后的底线。
对于这样的情况,在这之前,我们只需要用 UltraISO 将 BT5 刻录到光盘里。用 UltraISO 打开 BT5 的 ISO 文件,再点菜单栏上的“工具——刻录光盘映像”即可。
让我们带上刚才刻录好的 BT5 启动光盘,来到目标机,悄悄地将光盘插入光驱,摁下主机箱上的电源,然后用光盘引导,启动 BT5。
在 BT5 中,位于“Applications——BackTrack——Privilege Escalation——Password Attacks——Offline Attacks”中有一款名为 chntpw 的工具。用它可以清除 Windows 系统的密码。
启动它将打开一个终端窗口,接下来,我们将在这个终端窗口中进行一切邪恶的操作。
第一步,挂载硬盘,为了方便,我直接挂载到 mnt 目录里:
mount /dev/sda1 /mnt
验证一下,ls /mnt,看是否是 Windows 所在的硬盘分区。
图4中红圈部分看到名为“WINDOWS”的文件夹,是 Windows 的系统目录。
第二步,用 chntpw 查看 SAM 文件。注意图4中,系统目录名为“WINDOWS”,全部大写,Linux 是区分大小写的,对于“SAM”也同样如此,需要注意大小写。SAM 文件位于 %systemroot%\system32\config 目录中。同时还要注意,在“chntpw”之前有个“./”,它的含义是运行当前目录下的 chntpw,因为刚才从菜单中点了 chntpw 后,目录就跳转到了 chntpw 所在的目录中了:
./chntpw /mnt/WINDOWS/system32/config/SAM.
输出如图5
将终端输出往上拉,可见,图6中 Username 列中给出了当前 Windows 系统所有的用户名。
接着在提示的 Select: [q]>中输入选项,为了清空 Windows 用户的密码,我们选择1,敲下回车,提示:
Hives that have changed: Name </mnt/WINDOWS/system32/config/SAM> Write hive files? (y/n) [n]:
打入“y”,摁下回车键,提示:
</mnt/WINDOWS/system32/config/SAM> - OK00#
清除密码成功,接下来,重启电脑,取出光盘,咱们完美地“破门而入”目标系统了。
对于电脑中有重要的、且不能让别人知道的资料的同志,除了做好网络安全,还需要做好物理的安全,比如需要长时间离开办公室,就一定要锁上房门;或者,对主机箱加上锁(类似于某些电子阅览室、机房、网吧中为了防止别人恶意拆除硬件,将主机箱放入了一个金属罩中,并加上了锁);更极端的是,有些人根本不在主机箱安装光驱,不过现在市面上也存在外置光驱,且价格也是可以接受的。物理攻击才是威胁最大的,能够接触到物理,电脑中所做的重重防御将变得毫无意义。