当前位置: 首页 > 图文教程 > 网络安全 > 安全基础 > 网络安全教程-密码与Crack工具研究(3)

安全基础
U盘病毒预防的一个小技巧
微软漏洞补丁阻止防溢出者病毒
“网游盗号木马”将成为新毒王
IE浏览器RealPlayer的安全漏洞
网上购物 网络购物陷阱要预防
预先付费骗局让聪明人更容易相信
非法程序传播垃圾邮件的防范方法
汇款时收到只有卡号的短信
黑客入侵网站的常用方法
EXE可执行文件无法打开的解决方法
关于Gmail可能不知道的几个功能
微软官方提供的密码强度在线测试工具
网页代码中的“隐形杀手”分类
关闭无用服务保证Windows系统安全
网络信息安全与保密的6个技术目标
简单几招对付捆绑木马的技巧
让企业远离四处潜伏的众多安全威胁
有助于拨号上网用户预防黑客入侵的方法
工行专家建议的网上交易的安全性
网吧上网养成上网后清除个人信息的习惯

安全基础 中的 网络安全教程-密码与Crack工具研究(3)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-28   浏览: 46 ::
收藏到网摘: n/a

1.2.1 蛮力攻击与字典攻击
  构造一个Crack程序,有两种方法可选择,一种是使用蛮力攻击,另一种是字典攻击。下面,分别估算一下它们的效率。

  Unix一共是 [0x00~0xff] 共128个字符,小于0x20 的都是控制符,不能输入为 口令, 0x7f 为转义符, 不能输入。 那么总共128- 32 - 1 = 95 个字符可作为口令的字符。 即10(数字)+33(标点符号)+26*2(大小写字母) = 95个。

  首先估算蛮力攻击的尝试次数。很显然,该值为m的n次幂。其中,基数m为可能使用的字符集的大小;幂次n为口令的长度。分下面几种情形讨论:

仅使用字母的组合序列,则m = 26*2 = 52。
使用字母数字的组合序列,则m = 52 + 10 = 62。
使用字母数字以及特殊字符的组合序列,则m = 95

表1.3列举几个例子,计算所需的尝试次数K,对其数值大小得到一个较确切的印象。

表1.3 不同字符集与长度的口令尝试次数
M
N
K
52
5
38,0204,032

52
6
19,770,609,664

52
7
1,028,071,702,528

62
5
916,132,832

62
6
56,800,235,584

62
7
3,521,614,606,208

95
5
7,737,809,375

95
6
735,091,890,625

95
7
69,833,729,609,375



  从该表中可以看出,随着字符集的扩大与口令长度的增大,所需的尝试次数明显增加。选择尽量大的字符集和较长的口令,能获得较高的口令安全。

  但如果5个字母是一个常用汉字的拼音或英文单词,估算一下设常用词10000条, 从10000个常用词中取一个词与任意一个数字字符组合成口令,即:10000* 10 = 100000 (10万种可能性)。因此,借助于资料字典的帮助,可以使Crack的效率大大提高。

1.2.2 数据字典
  目前,在因特网上,有一些数据字典可以下载,包含的条目从1万到几十万条。数据字典一般囊括了常用的单词。

  也许有人认为:我的口令毫无规律可言,字典中不会有,因此,计算机是破译不了的,那就大错特错了。有很多专门生成字典的程序,比如:Dictmake、txt2dict等等。以dictmake为例:启动程序后,计算机会要求输入最小口令长度、最大口令长度、口令包含的小写字符、大写字符、数字、有没有空格、含不含标点符号和特殊字符等一系列的问题。当回答完了计算机提出的问题后,计算机就会按照给定的条件自动将所有的组合方式列出来并存到文件中,而这个文件就是资料字典。