· [Java论坛][安全论坛][数据库论坛][操作系统论坛]
· [专题] IBM Rational高峰论坛 Windows 7十大功能
· [专题] 史上就危险7月 微软 BizSpark 计划介绍
· [IT技术周刊][IT资源下载专区][病毒求助专区]
· [热点] 我也能做CTO_赛迪连载 赛迪七夕特别行动
· [热点] Chrome 4.0采用V8引擎 Java开发编程规范

安全高手的利器 认识彩虹哈希表破解工具

发布时间:2007.09.14 06:56     来源:赛迪网    作者:杜莉 译

【原创翻译,版权所有,合作网站如欲转载,请注明原创翻译作者,及文章出处(赛迪网)。谢绝非合作网站转载,违者,赛迪网将保留追究其法律责任的权利!】

跨平台密码破解器Ophcrack的破解速度简直是不可思议。到底有多快呢?它能在160秒内破解“Fgpyyih804423”这个密码。很多人都认为这个密码已经相当安全了。微软的密码强度判定工具认为该密码的安全级别是“强”。而Geekwisdom密码强度估算器认为该密码的安全强度是“普通”。

Ophcrack的破解速度为什么会这么快呢?这是因为它使用了彩虹表。我说的不是我用做桌面背景的那种真正的彩虹。

不过,彩虹表也是很美的。

要想理解彩虹表的工作原理,首先你得明白计算机是如何存储密码的,不管是在你自己用的台式机还是在远程的网络服务器那里。

密码决不会存储在纯文本文档中的。至少我们不应当这么做,除非你用的是世界上最幼稚的程序,而且你的目的就是构建世界上最不安全的系统。事实上,我们应当把密码作为哈希函数的输出值来存储。哈希是单向操作。即使攻击者能够读取密码的哈希表,他也不可能仅仅通过那个哈希表来重构密码。

但是攻击者可以用用彩虹哈希表来攻击密码的哈希表:通过庞大的、针对各种可能的字母组合预先计算好的哈希值。攻击者的计算机当然也可以在运行中计算所有的值,但是利用这个预先计算好哈希值的庞大表格,显然能够使攻击者能更快地执行级数规模的命令——假设攻击机器有足够大的RAM来将整个表存储到内存中(或者至少是表的大部分)。这就是个很典型的时间-内存权衡问题,尤其是黑客更倾向于使用这种捷径。

彩虹表有多庞大呢?Ophcrack的安装对话话会让你有个大致概念:

生成这些庞大的彩虹表需要花很长时间,但是一旦生成好了,那么每个攻击的计算机都可以利用这些表来破解更强的密码哈希表。

可用的最小彩虹表是最基本的字母数字表,就这样它的大小就有388MB。这是Ophcrack启动盘默认的表。即使这个最小的表也相当有效了。我曾经用它来攻击我在一个Windows XP虚拟机上设置的密码,结果如下:

found? seconds 
Password1!  700 
Fgpyyih804423 yes 159 
Fgpyyih80442%  700 
saMejus9 yes 140 
thequickbrownfoxjumpsoverthelazydog  700

当然,你用这种彩虹表无法破解那种带有非数字字母的字符的密码(比如%&^$#这样的),因为表里根本没有包含这些字符。你可能也注意到了那些passphrase,我也很喜欢它们,由于它们本身的长度问题,passphrase对此项技术是免疫的。但是,话又说回来了,该攻击可以在11分钟内破解所有可能14位数字字母密码组合中的99.9%,这还是用了最小的彩虹表。表越大、越全,攻击破解能力越强。Ophcrack文档描述了它所能使用的彩虹表之间的差异:

字母数字表 10k 388MB 包含所有字母数字混合密码中99.9%的LanManager表。这些都是用大小写字母和数字组成的密码(大约800亿组合)。

由于LanManager哈希表将密码截成每份7个字符的两份,我们就可以用该表破解长度在1到14之间的密码。由于LanManager哈希表也是不区分大小写的,该表中的800亿的组合就相当于12*10的11次方(或者2的83次方)个密码。

字母数字表 5k 720MB 包含所有字母数字组合的密码中99.9%的LanManager表。但是,由于表变成2倍大,如果你的计算机有1GB以上的RAM空间的话,它的破解速度是前一个的4倍。

扩展表 7.5GB 包含最长14个大小写字母、数字以及下列33个特殊字符(!"#$%&'()*+,-./:;<=>?@[\]^_`{|} ~)组成的密码中96%的LanManager表。该表中大约有7兆的组合,5*10的12次方(或者2的92次方)密码。

NT 8.5 GB 我们可以使用该表来破解计算机上的NT哈希表,这是LanManager 哈希表所做不到的。该表包含了用如下字符组成的可能密码组合的90%:

·最高6位字符由大小写字母、数字以及33个特殊字符(同上面列举的一样)

·7 大小写字母及数字

·8 小写字母及数字

该表包含7兆种组合,对应7兆的密码(NT哈希表不存在LanManager哈希表的弱点)。

需要注意的是,所有这些彩虹表都有其特定适用的密码长度和字母组合。太长的密码,或者包含表中没有的字符,那么用彩虹表就无法破解。

不幸的是,由于旧式LanManager哈希表不可饶恕的缺点,Windows服务器特别容易被彩虹表攻击。令我吃惊的是,Windows Server 2003在默认状态下竟然还支持该旧式Lan Manager。我强烈建议大家禁用Lan Manager哈希表,尤其是在那些存储所有用户的域证书的服务器上一定要禁用该哈希表。这将对你的所有Windows98用户造成很大的不便,但是我觉得为了提高安全性,这么做是值得的。

我听说明年发布的Windows Server2008最终会将LanManager哈希表去掉。Windows Vista已经不支持这些过时的哈希表了。在Vista系统中运行OphCrack的话结果请看下列对话框:

所有LM哈希表都是空的。请使用NT哈希表来破解剩余哈希表。我希望我能用NT表,但是我找不到要用8.5GBNT哈希的彩虹表的可靠来源。

Ophcrack工具不是很灵活。它不允许你自己生成彩虹表。因此,你得用Project彩虹破解工具,该工具能用来破解几乎所有字母组合以及任何哈希算法。但是,你得当心,彩虹表攻击最近才盛行的原因是由于电脑的2-4GB的内存最近才达到了让人能接受的水平。我的意思是说它很庞大。

下面是攻击安全性能更高的NT哈希表所需要生成的彩虹表的大小:

Character Set Length Table Size 
ABCDEFGHIJKLMNOPQRSTUVWXYZ 14 0.6 GB 
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 14 3 GB 
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()-_+= 14 24 GB 
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()-_+=~`[]{}|\:;"'<>,.?/ 14 64 GB

通常对台式机来说,用彩虹表攻击太夸张了。如果黑客能实现物理意义上访问主机,那么就没有任何安全性可言了。这是10项计算机安全不可变法则中的第3条。一旦黑客可以在物理意义上访问主机,那么他可以用很多工具来重新设置密码。

但是如果远程黑客从服务器或者数据库获得大量的密码的哈希列表,我们就有麻烦了。这种情况下,我们遭受彩虹表攻击的风险非常大。因此你决不能只依靠哈希技术——你总得给哈希表加些花样,这样得到的哈希值就与众不同了。给哈希表加花样,听起来很复杂(隐约还能感觉到很美味?),但其实很简单。在生成哈希表之前,给密码加个唯一的前缀就行:

hash = md5('deliciously-salty-' + password)

这样,攻击者就无法用彩虹表来攻击你了——“密码”和“美味的鲜密码”生成的哈希结果是不匹配的。除非黑客知道你所有的哈希表都加了这个前缀。即使真的知道,他/她也得专门针对你的机器生成一个定制的彩虹表。(责任编辑:李磊)


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
· iPhone催生破解狂潮 对话iPhone国内第一人 (09-04) · 美国17岁少年黑客“解码”iPhone换得跑车 (08-30)
· 英发现亨廷顿舞蹈病病因及可能破解之法 (08-27) · 密码管理AI RoboForm Pro具有自动填表功能 (08-27)
· 黑客破解了Netflix流媒体电影的DRM技术 (08-22) · 苹果新系统遭破解 普通PC可运行Leopard (08-16)
· 专家提醒:网上求职一定要保护好自已密码 (08-16) · 实战录:注册验证码破解方法全功略解读 (08-10)
· 安全经典:深入认识如何选择与保护密码 (08-02) · 学习如何选择与保护好你的系统密码 (08-01)
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
资讯 通信 IT产品 IT技术 信息化
专题:扭亏为盈 联想09年Q2翻番
·专题:Tech·Ed 2009微..
·直播:2009互联网大会..
·迅雷搜狐"互搏" 谁动了..
专题:诺基亚危局已现 或重蹈摩托覆辙
·六股势力角逐4G标准 中..
·专题:联通iPhone并不贵..
·专题:排排坐开商店 三..
商务演示需求分析 多媒体会议室必备投影
·VMware在京隆重举行2009..
·专题:笔记本频道10月热..
·专题:学生机市场 惠普 ..
专题:Tech.Ed 2009微软技术大会
·专题:2009 SYBASE 亚太..
·专题:微软新一代桌面操..
·专题:2009年第3届CSDN..