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

安全基础
艳照门事件启示 明星电脑安全防范手册
企业服务器文件共享安全问题剖析
IDS存在的问题及发展趋势
保证电脑安全的13个技巧
彻底远离木马,来看看技巧
无线网卡无法获取IP地址的故障
保证电脑安全的十个技巧
局域网ARP欺骗挂马方式详细讲解
传病毒的恶意网页怎么去掉?
制作连黑客都不懂的密码
网络钓鱼安全防范措施简介
网站安全通用专用保护方法和缺陷
新手防止账号被骗被盗的小技巧
优秀防火墙的介绍
防护短信欺诈及举报措施
即时通信工具(IM)安全防范措施
常见的网络钓鱼作案的七种手法
小技巧:配置不同网络参数
黑客是如何做到锁定用户的浏览器首页
7939上网导航病毒的解决方法

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-28   浏览: 43 ::
收藏到网摘: 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为例:启动程序后,计算机会要求输入最小口令长度、最大口令长度、口令包含的小写字符、大写字符、数字、有没有空格、含不含标点符号和特殊字符等一系列的问题。当回答完了计算机提出的问题后,计算机就会按照给定的条件自动将所有的组合方式列出来并存到文件中,而这个文件就是资料字典。