灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:8905回复:1

深入解析无线WEP和WPA密码及破解原理(一)

楼主#
更多 发布于:2013-01-31 14:37
1 概述
目前情况下:
WEP的破解为利用加密体制缺陷,通过收集足够的数据包,使用分析密算法还原出密码。
WPA目前没有加密体制的缺陷可被利用,破解WPA密码使用的是常规的字典攻击法。
所以在破解方式上WEP和WPA有很大差异。
2 WEP
2.1 (Wired EquIValent PrIVacy,WEP)
叫做有线等效加密。掌握WEP破解的人,肯能会说WEP不如有线的安全性高。但这
发生在WEP的很多弱点被发现之后。也是由于WEP的弱点导致WPA的出现。
2.2 (WEP)算法
WEP算法是一种可选的链路层安全机制,用来提供访问控制,数据加密和安全性检验
等。802.11 定义了WEP 算法对数据进行加密。
2.3 加密过程如图所示。

图片:3152083_1268104912242_1024x1024.jpg


IV为初始化向量,PASSWORD 为密码KSA=IV+PASSWORD。DATA 为明文CRC-32
为明文的完整性校验值PRGA=RC4(KSA) 的伪随机数密钥流XOR 异或的加密算法。
ENCRYPTED DATA 为最后的密文。最后IV+ENCRYPTED DATA一起发送出去。
2.4 接收端的解密过程如图所示。

图片:3152083_1268104913248_1024x1024.jpg


CIPHERTEXT 为密文。它采用与加密相同的办法产生解密密钥序列,再将密文与之
XOR 得到明文,将明文按照CRC32 算法计算得到完整性校验值CRC-32′,如果加密密
钥与解密密钥相同,且CRC-32′= CRC-32,则接收端就得到了原始明文数据,否则解密失
败。
2.5 WEP算法通过以上的操作试图达到以下的目的
采用WEP加密算法保证通信的安全性,以对抗窃听。
采用CRC32算法作为完整性检验,以对抗对数据的篡改。
2.6 WEP 算法之死
95 9 月RC4 潜在的威胁性(wanger)
00 10 月通过分析wpe包获取密码(walker)
01 5 月针对于明文攻击的一个推论(Arbaugh)
01 7 月针对于CRC32的攻击(Borisov, Goldberg,Wagner)
01 8 月针对于RC4的攻击(S。Fluhrer, I。Martin 和 A。Shamir)
01 8 月airosnort发布
02 2 月改进的攻击算法(h1kari)
04 8 月chopchop攻击出现
04 7/8 月aircrack出现(Devine,Sanchez )
2.7 WEP的破解理论是在01 年8月就变得可行了
S.Fluhrer, I.Martin 和A.Shamir 合作研究发现了对无线局域网安全性最致命的攻击。
利用WEP 帧的数据负载中部分已知信息来计算出该WEP 帧所使用的WEP 密钥。由于
WEP 加密算法实际上是利用RC4 流密码算法作为伪随机数产生器,将由初始矢量IV 和
WEP 密钥组合而成的种子生成WEP 密钥流,再由该密钥流与WEP 帧数据负载进行异或
运算来完成加密运算。而RC4 流密码算法是将输入种子密钥进行某种置换和组合运算来生
成WEP 密钥流的。由于WEP 帧中数据负载的第一个字节是逻辑链路控制的802.2 头信
息,这个头信息对于每个WEP帧都是相同的,攻击者很容易猜测,利用猜的第一个明文字
节和WEP 帧数据负载密文就可以通过异或运算得到PRNG 生成的密钥流中的第一字节。
另外,种子密钥中的24比特初始矢量是以明文形式传送的,攻击者可以将其截获,存到初
始矢。S.Fluhrer, I.Martin 和A.Shamir 证明:利用已知的初始矢量IV 和第一个字节密钥
流输出,并结合RC4 密钥方案的特点,攻击者通过计算就可以确定WEP密钥。
2.8 CRC-32 算法缺陷
CRC-32 算法作为数据完整性检验算法,由于其本身的特点非但未使WEP 安全性
得到加强,反而进一步恶化。首先CRC 检验和是有效数据的线性函数,这里所说的线性主
要针对异或操作而言的,即C(x?y)=C(x)?C(y)。利用这个性质,恶意的攻击者可篡改原文
P 的内容。特别地,如果攻击者知道要传送的数据,会更加有恃无恐。其次,CRC-32检验
和不是加密函数,只负责检查原文是否完整,并不对其进行加密。若攻击者知道P,就可算
出RC4(v,k) (RC4(v,k)=P?(P?RC4(v,k)),然后可构造自己的加密数据C'=(P',C(P'))
? RC4(v,k)和原来的IV一起发送给接收者(802.11b 允许IV重复使用)。
2.9 WEP密码如何被破解出来的
2.9.1 监听模式被动破解(这个就是有客户端并有大量有效通信)
根据已知的的信息。我们知道要还原出WEP的密码关键是要收集足够的有效数据
帧,从这个数据帧里我们可以提取IV 值和密文。与对于这个密文对应的明文的第一个
字节是确定的他是逻辑链路控制的802.2 头信息。通过这一个字节的明文,还有密文我
们做XOR运算能得到一个字节的WEP密钥流,由于rc4 流密码产生算法只是把原来的
密码给打乱的次序。所以我们获得的这一次字节的密码就是就IV+PASSWORD 的一部
分。但是由于RC4 的打乱。不知道这一个字节具体的位置很排列次序。当我们收集到足
够多的IV 值还有碎片密码时,就可以进行统计分析运算了。用上面的密码碎片重新排
序配合IV使用RC4算法得出的值和多个流密码位置进行比较。最后得到这些密码碎片
正确的排列次序。这样WEP的密码就被分析出来了。下图就是WEP破解过程。有助于
你理解破解WEP通过分析子密码还原密码的过程。

图片:3152083_1268104913095_1024x1024.jpg


2.9.2 主动攻击(有客户端。少量通信或者没有通讯)
-3 ARP-request attack mode攻击抓取合法客户端的arp请求包。如果发现合法客户
端发给AP的arp请求包,攻击者就会向AP重放这个包。由于802.11b 允许IV重复使
用。所以AP接到这样的arp请求后就会回复客户端。这样攻击者就能搜集到更多的IV
了。当捕捉到足够多的IV就可以按上面的2.9.1里的进行破解了。如果没有办法获取arp
请求包我们就可以用-0 攻击使得合法客户端和AP断线后重新连接。-0 Deautenticate攻
击实际就是无线欺骗。这样我们就有机会获得arp请求包了。
2.9.3 主动攻击(没有客户端的模式)
先和AP进行伪链接-1 fakeauth count attack mode。这样就能产生数据包了。
收集两个IV 相同的的WEP 包,把这两个包里的密文做XOR 运算。得到一个XOR 文
件。用这个XOR文件配合伪造arp包的工具。利用CRC-32的特点伪造一个arp包和原
来的IV一起发给AP。这样就可以按上面2.9.2 里的进行破解了。其中-2 interactive,
-4 Chopchop,-5 Fragment 都是属于上面这个攻击类型的。
2.10 WEP的安全弱点
A.802.2 头信息和简单的rc4 流密码算法
导致攻击者在有客户端并有大量有效通信时,可以分析出WEP的密码。
B.IV重复使用
导致在攻击者在有客户端。少量通信或者没有通讯时,可以使用arp 重放的方法获得大
量有效数据。
C.无身份验证机制,使用线性函数CRC32进行完整性校验。
无身份验证机制,导致攻击者能使用-1 fakeauth count attack mode和AP建立伪链接。
进而获得XOR 文件。使用线性函数CRC32 进行完整性校验,导致攻击者能用XOR 文
件伪造一个arp包。然后依靠这个包去捕获大量有效数据。
2.11 WEP窃听
由于 WEP 全局都是用IV+WEP 密码来保护明文的。当有了密码后攻击者可以使用同
样的算法能随时任意窃听任意STATION 至AP 之间的通讯。这样的窃听对于网银这样的双
向认证的安全不会有影响。但是在ip 包里的明文用户名和密码就很容易被窃听到了。例如
登录AP 的用户名和密码。由于无线网络窃听的存在,在使用交换机的有线网络中用关闭
dhcp 设置陌生网段的来禁止非法访问的方式。不在适合于无线网络。攻击者完全能根据窃
听到的合法客户端数据包配合已知密码来分析出ip的真实配置。
2.12 WEP的现状
WEP真的不是一种强壮的加密方式对于那种不怀好意的攻击者。无法胜任在安全有求
比较高的场所。对于安全较低的厂所只能说有胜于无。
3 WPA
3.1 WPA加密算法的的两个版本介绍
WPA = 802.1x + EAP + TKIP + MIC
= Pre-shared Key + TKIP + MIC
802.11i(WPA2)
= 802.1x + EAP + AES + CCMP
= Pre-shared Key + AES + CCMP
这里802.1x + EAP,Pre-shared Key是身份校验算法(WEP没有设置有身份验证机制)
TKIP和AES是数据传输加密算法(类似于WEP加密的RC4 算法)
MIC和CCMP数据完整性编码校验算法(类似于WEP中CRC32算法)
3.2 WPA 认证方式
802.1x + EAP (工业级的,安全要求高的地方用。需要认证服务器)
Pre-shared Key (家庭用的,用在安全要求低的地方。不需要服务器)
EAP 扩展认真协议,是一种架构。而不是定义了算法。常见的有LEAP,MD5,TTLS,
TLS,PEAP,SRP,SIM,AKA 其中的TLS 和TTLS 是双向认证模式。这个和网络银行的
安全方式差不多。这个认证方式是不怕网络劫持和字典攻击的。而md5 是单向认证的。不
抗网络劫持,中间人攻击。关于企业级的如何破解就不讨论了。因为论坛上也很少提到。本
身EAP模式是个协议,不是算法。
3.3 WPA-PSK
论坛上破解WPA 也主要是集中在这个模式上的。我们都知道破解WPA-PSK 不是和
WEP一样抓很多包就能破解的。关键是要获取握手包,这个握手包叫4way-handshake 四次
握手包。那么我们就从这个四次握手包开始。

喜欢0 评分0
hchk1999
侠客
侠客
  • 注册日期2013-02-03
  • 发帖数99
  • QQ3086758038
  • 火币123枚
  • 粉丝8
  • 关注1
沙发#
发布于:2013-02-03 09:47

回复(0) 喜欢(0)     评分
游客

返回顶部