注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

网路游侠

www.youxia.org

 
 
 

日志

 
 

游侠原创:MD5处理之后的密码就坚不可摧吗?(附实验数据)  

2011-12-22 23:47:53|  分类: 02 游侠·原创 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
  这两天关于CSDN等一批网站的密码被公布的新闻散布在网络上,无论是科技类、安全类、黑客类的网站,还是博客、微博,都讨论得如火如荼。游侠发现一些人认为密码经过MD5处理之后,就安全了,就万无一失了,但是,真是吗?

  我们知道,MD5的算法,已经被王晓云教授攻克,但是即便如此,对绝大多数人而言,甚至是绝大多数黑客而言,两个不同实体碰撞得到一个MD5也是有非常大的难度的(不过的确有人搞定了,某网站曾经发布了2个文件,不一样大小,却是一样的MD5值)。

  游侠在这里要说的是:密码,即使用MD5处理,依然不安全。当然,我不会只动嘴,我用例子说话。

  既然是要做测试,就要找一个贴近现实的数据库而不是自己造的数据,于是游侠找到了某个正在运行中的系统的数据库,有将近6000个帐号(获取手段基本合法)。我把密码拷贝到EmEditor中去,一行一个密码。我第一次截取的1-200,第二次截取的3800-3999,这样每次200个密码,一共400个密码。

  然后分两批把这些MD5处理之后的密码提交到某MD5破解系统,看看结果:

第一次测试结果:


第二次测试结果:


  理想很丰满,现实很骨感:

  第一次:200个密码36秒破解完毕,搞定192个,成功率96%
  第二次:200个密码25秒破解完毕,搞定198个,成功率99%

  游侠在测试之前,认为瞬时破解成功率应该在50%左右的,总破解成功率应该在95%以上,但是可能需要一定周期。但是结果无情的粉碎了我的期望——400个密码在半分钟的破解成功率居然到了97.5%!

  很多人说MD5不可逆,所以是保险的。但是你们显然忽略了一点……MD5的对比数据库!

  举个例子:admin经过32位md5处理后是21232f297a57a5a743894a0e4a801fc3,显然是很长的一串字符,但是有人把这样的数据做到一个数据库里面……,比如:

  12345 827ccb0eea8a706c4c34a16891f84e7b 
  abcde ab56b4d92b40713acc5af89985d4b786
  !@#$% 507250b947cc397023a9595001fcf167
  ……

  当这个数据库有几十亿记录的时候,就可以囊括绝大多数人的密码!这就是为什么,我找到的这些密码在这破解系统面前为什么如此脆弱!一句话:MD5的算法黑客基本是搞不定的,但是不代表不能知道你的密码。不知道你看明白了没?

  再简单点,举个例子:MD5处理之后的密码是一把锁,正常情况下只有一把钥匙可以打开。但是如果有一个开锁匠有几十亿把钥匙,那么这个开锁匠不用研究锁子的设计原理,他也有极大的希望用他手中的钥匙一把把的尝试,最终打开这把锁!

  正是因为有了计算机,有了各种自动化的程序,即使有几十亿把钥匙,也可以在极短的时间内测试完毕,所以……你一定明白了!

  如果您想进一步了解MD5与相关解密技术,请参考百度百科:
  MD5:http://baike.baidu.com/view/7636.htm
  彩虹表:http://baike.baidu.com/view/2143893.htm

  看完之后,相信您对密码安全性在认识上会有极大的提升。这也是游侠今天做这个测试的目的——能让大家知道,我们的密码有多不安全,也让大家知道,MD5处理之后的密码依然不那么安全。

  作者:张百川(网路游侠)
  网站:http://www.youxia.org
  转载请注明来源!谢谢合作。
  评论这张
 
阅读(277)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017