清除用户密码只在管理员遗忘密码的情况下使用,如果是******到一个系统里,那么他会想方设法来破解管理员账户的密码,破解密码相比清除密码在技术上要复杂的多。作为管理员,我们也应了解***常用的破解密码的方法有哪些,从而才能有针对性的来进行防范。

这里推荐一款名为LC5的软件,这款软件既可以用来破解Windows系统的用户密码,也可以用来检测密码的安全性,从而发现安全漏洞。

LC5通过破解SAM文件来获取系统的帐户名和密码,它的工作原理是通过一个超级管理员来获取SAM数据库的内容,读取其中用户名和密码的Hash值,然后将这个Hash值与要尝试的密码的Hash值进行比较,从而确定该密码是否正确。

破解用户账户密码的基本方法有两种:穷举法和字典法,它们都是基于密码匹配的破解方法。字典法是事先准备好一些常用密码,并将这些密码集中存放在字典文件中,然后在破解过程中使用相同的Hash算法对字典文件中的密码进行计算,最后再与Windows系统SAM中存储的密码Hash值进行对比。穷举法大致也是如此,只是穷举法不需要字典文件,而是事先指定一个字母或者数字的组合范围,然后将组合的每一个结果进行Hash运算后再去比较,如果组合的数量很大,破解的时间就会很长,因而穷举法也称为暴力破解。

LC5的安装很简单,安装完成后,我们先在Windows XP/2003系统中建立测试账户,如下表所示。

Windows Server入门系列31 利用LC5破解用户密码_第1张图片

运行LC5之后,可以将自动向导取消,然后在“文件”菜单中选择“新建会话”,再从“会话”菜单中选择从本地电脑导入SAM文件。

Windows Server入门系列31 利用LC5破解用户密码_第2张图片

在进行密码破解之前,需要先对破解模式及破解字典进行设置。在“会话”菜单中打开“会话选项”,

Windows Server入门系列31 利用LC5破解用户密码_第3张图片

LC5提供了4种破解模式:字典破解、混合字典***、预设***、暴力破解。

在字典破解中,使用了一个字典文件,包含要进行试验的所有可能口令。字典文件可以从Internet上下载,也可以自己创建,LC5默认提供了2个字典文件。字典***速度很快,如果密码设置的是一些常用词汇,那么这种方法十分有效。

混合字典***将字典***和暴力***结合在一起。利用混合***,将字典中的词汇与常用的数字或符号结合起来,用于破解口令。比如字典文件里有“password”口令,那么混合***将会检查诸如“password123”和“123password”这样的口令。

预设***是将预先计算出来的密码的Hash值存储起来,并在下一次破解口令时比较这些Hash值,也称为彩虹表,即散列对照表。彩虹表存储了常用的Hash组合,这样在破解口令时可以节省大量的时间。使用这种破解方式,要求必须有彩虹表文件。

暴力破解试验组成口令的每一种可能的字符组合。这种类型的***通常要花费更长的时间,但在足够长的时间之后,最终一定能够得到口令。

考虑到实验效果,我们这里只选择字典破解和混合字典***这两种模式,而且字典文件由我们自己手动生成(先创建一个文本文件,再将其扩展名改为.dic),字典文件里只包括2个口令:“test”和“123456”。

设置好会话选项之后,就可以点击工具栏上的“开始破解”按钮开始密码的破解。破解时间视密码复杂程度、密码长度和机器性能而定,由于本次实验设计的比较简单,因而很快就能出现结果,

Windows Server入门系列31 利用LC5破解用户密码_第4张图片

用户a和用户b的密码都在字典文件中,因而可以被破解;用户c的密码通过混合字典***得到;用户d的密码不在字典文件中,而且混合字典***也无法破解;用户e比较特殊,它的破解结果是密码的前7位都是“?”,也就是没破解出来,但是第8位密码却成功破解出来了,是“4”。之所以会出现这种情况,正是由于LM口令机制造成的。

LM Hash具有如下特点:

  • 密码长度最长14位;

  • 将密码以7位为一组,分别计算Hash值;

  • 密码不区分大小写。

在破解用户e的密码时,将密码以7位为一组,共分作两组。第一组的密码比较复杂,无法破解;而第二组的密码却可以通过混合字典***破解出来,所以就得到了上述实验结果。

可见,LM Hash的安全性比较低,因而在Windows 2000之后的系统都采用了NTLM Hash。但目前的问题是,很多系统为了保持向后的兼容性,除了NTLM Hash之外,还会在SAM数据库中保存一份密码的LM Hash值,因而就带来了安全隐患。

为了消除这项安全隐患,可以在组策略中进行设置,禁止在SAM数据库中存放用户口令的LM Hash值。在组策略编辑器中,打开“计算机配置”\“Windows设置”\“本地策略”\“安全选项”,将右侧的“网络安全:不要在下次更改密码时存储LAN Manager的哈希值”设为已启用,

Windows Server入门系列31 利用LC5破解用户密码_第5张图片

然后我们再创建一个测试用户f,密码仍为123456。在LC5中新建会话,再次进行密码破解,此时就无法破解用户f的密码了。

Windows Server入门系列31 利用LC5破解用户密码_第6张图片

当然,此时如果在会话选项里勾选“破解NTLM认证口令”,仍然会将用户f的密码破解出来。但是由于NTLM的安全强度较高,因而破解的难度也就比较大。

在Win7/2008系统的组策略里,已自动设置为不存储密码的LM哈希值,为了增强系统安全性,可以将WindowsXP/2003系统的组策略也做相同的设置。