上尉

- 注册时间
- 2009-5-9
- 金币
- 494 个
- 威望
- 74 个
- 荣誉
- 13 个
尚未签到
|
真正要实现WPA的即时破解,通过分布式系统或者GPU提高运算能力破解WPA来破解是绝对错误的,原因如下
2 K1 Z( \4 n9 F0 R+ m/ W% L1.所谓的分布式系统破解WPA其实就是通过服务器集群而获得强大的数据处理能力,从而加快破解WPA的速度,这就局限了黑客应用此技术。(如果可以上网,黑客可以租用GOOGLE提供的云计算能力,但是价格不菲,而且HASH表的传输对带宽要求很大,完整的HASH表有几百G)0 @# d) }; \; A6 y. P0 }
2.即时你可以获取到强大的GOOGLE云计算能力,运气不好的话,要破解WPA所耗费时间也是相当长的
+ W) r; b1 O2 n$ j" l3.研究的方向错误了:通过硬件来加快破解速度肯定是错误的,WPA的真正破解之路是通过查找HASH表的算法上的提高7 N: V2 P, r5 w! {! @' z" x4 O6 @
下面是我结合数据库查找数据的理念以及暴力破解原理所思考出来的认为可取的WPA破解研究方向6 M% U# b: R- X; v9 f: s0 {6 a
1.300G的HASH表里面包含无数的HASH值,但是所有HASH值都是通过MD5计算出来的,所以都是定长的不重复的128位二进制数据,每个数据对应不同的密钥,现有的WPA主要是通过找到相同的HASH值,然后就可以知道此HASH值来知道对应的密钥,从而实现破解,这个思想是正确的,可是如何在hash table找到与捕捉到数据包hash值相等是重点,假如采取下面我所提出的方法,可以在一分钟之内找出。
- U2 I" h5 a- a; A3 m) b2.学过数据库的人应该知道,某些数据库的数据存放是以树的方式来存放数据的& w( {8 p" p3 Z5 @, F# i
3.HASH表是由无数个128位二进制数来组成的,按照排列组合的原理,最多有2的128次方个可能,如果要全部对比完这么多的HASH值,所耗时间是非常久的(黑客常用的300G的HASH表,就是挑了使用频率高的密钥来做HASH,但是即使如此,其HASH值也达到了300G之巨,在最坏的情况下,要对比完如此多HASH值耗时甚巨)
2 n+ z- f- N$ s: K: w9 s+ L2 M# Y( z) b3 P( j8 X# J5 B
: u6 L! g) l O我的思想:假如结合数据库的理念,把300G的HASH TABLE数据采取树结构来存放,树跟与分支都分别对应0或者1,这样只有2个树根,分别是0和1,0和1的下面再分支,数据按照树形存放如下 F9 h, u! N" S, d5 y2 j% t$ h% j
0 1
2 w% b3 M% S. p5 w* r 0 1 0 1
6 J6 e( l+ F3 A+ }: ?$ n) Z 0 1 0 1 0 1 0 1: o- d. `$ A0 |$ {2 M) O
0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
, L) `& c( g1 `9 ]6 K4 u0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1; D% A( M( Y' N' ]/ t8 M
5 i4 w! F2 r6 `0 J z4 [0 @% S u1 G: s/ N4 H, w* l
上面只是HASH表前5位的存放,由于篇幅关系,我就以5位二进制数如何查找出特定数据来举例子,5位二进制数有2的5次方个不同数据,如果不采取树形结构存放及查找数据,最坏情况下要查找对比64次,最快查找1次就匹配成功;按照树形思想,5位数要查找5次,每次最多匹配2次,最少匹配1次(当此位是0时匹配1次,次位是1时匹配2次),举个例子,要查找11111我们要查找树形表10次,要查找00000我们要查找树形表5次,我们可以发现,查找任意5进制数,都只需要查找5到10次就可以匹配成功,同理,虽然HASH表有2的128次方个不同数值,我们只需要查找最多256次,最少128次就可以匹配成功,然后再根据所查到的HASH表找到对应的密钥。
6 P. [" c) h$ e$ U9 _# ~ & \& z+ p1 U% N z
由于小弟我是从事网络安全方面的职业,对数据库以及编程涉猎不深,无线也是前两个月才刚接触,有错漏之处还望大侠们不吝赐教: {4 J+ \6 _, h
PS:对无线安全有共同爱好的朋友可以加我QQ技术交流(445780352) |
评分
-
1
查看全部评分
-
|