阅读内容 

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

[日期:2005-03-31] 来源:中国站长学院,不详,中国站长学院  作者:无从考证,yuyu3007 [字体: ]
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为例:启动程序后,计算机会要求输入最小口令长度、最大口令长度、口令包含的小写字符、大写字符、数字、有没有空格、含不含标点符号和特殊字符等一系列的问题。当回答完了计算机提出的问题后,计算机就会按照给定的条件自动将所有的组合方式列出来并存到文件中,而这个文件就是资料字典。
阅读:
录入:

推荐 】 【 打印
相关新闻      
本文评论       全部评论
发表评论
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款


点评: 字数
姓名:
Advertisement
内容查询


Advertisement