1.WEP协议
有限等效加密
加密:
KSA = VI + PASSWORD
PRGA = RC4(KSA)用PRGA对原数据+原数据CRC-32校验结果,进行异或生成密文
RC4算法:
加密过程:
1>初始化S盒:
首先进行线性填充:S0=0,S1=1,...,S255=255。然后用密匙填充另一个256个字节的数组,不断重复密匙
直至填充到整个数组中:K0,K1,...,K255。将指针j设为0。然后:
对于i=0至255
j=(j+Si+Ki) mod 256
交换Si和Sj
2>生成密文:
有两个计数器:i和j,初值为0.
要产生一个随机字节,需要按下列步骤进行:
i=(i+1) mod 256
j=(j+Si) mod 256
交换Si和Sj
t=(Si+Sj) mod 256
K=St
字节K用来与明文异或产生密文或者与密文异或产生明文
将VI和密文一起发送
解密:如上解密,之后进行CRC校验
CRC校验防止篡改
加密防止窃听
安全隐患:
WEP帧第一个字节固定式802.2的头信息,明文已知
VI是明文发送,可重复使用
CRC-32的算法缺点(对异或操作而言,用户可以篡改原文)
无身份认证机制
破解:
监听模式被动破解(有客户端,大量有效通信):
RC4,只是把原密钥打乱顺序,通过已知一个字节的明文和密文,可以得到一个密钥片段,通过足够多的IV值和碎片密码,统计计算,得出密钥序列
主动攻击(有客户端,少量通信)
-3ARP Requst Mode抓取合法ARP包,向AP重放ARP包,因为允许VI重复使用,所以AP 会回复,接受到足够多的AP包,像上面一样破解了
-0 Deautenticate,通过无线欺骗,获得ARP包(使合法用户强制从AP断开,获得ARP包)
主动攻击(没有客户端模式)
-1 fakeauth count attck mode 和AP建立伪连接,收集两个VI相同的WEP包,两个WEP包异或,得到XOR文件,用XOR文件配合伪造ARP包工具伪造ARP和原IV发给AP,以后步骤同上
WEP窃听,
2.WPA
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是身份校验算法
TKIP和AES是传输加密算法
MIC和CCMP是完整性校验校验算法
802.1x + EAP是工业级,安全性较高,需要认证服务器
Pre-Shared Key是家用的,安全性较低,不需要认证服务器
WPA-PSK:WPA的简化版――WPA-PSK(预共享密钥)
Erik Tews and Martin Beck,已经发现TKIP加密算法的漏洞。在部分条件下可导致攻击者对数据包进行解密,不过这个不是密钥恢复攻击,攻击者只能恢复用于加密验证报文的密钥而不是用于加密数据的密钥。使用恢复的密钥,只有捕获的报文仅在有限的7次尝试下的窗口机会中进行伪造。攻击者每次只能解密一个报文,当前的速率是12-15分钟一个报文,另外只有报文从无线AP发送到客户端时才能被加密。只有配置了TKIP作为加密机制的设备受此漏洞攻击。在部分条件下可导致攻击者对数据包进行解密,不过这个不是密钥恢复攻击,攻击者只能恢复用于加密验证报文的密钥而不是用于加密数据的密钥。使用恢复的密钥,只有捕获的报文仅在有限的7次尝试下的窗口机会中进行伪造。攻击者每次只能解密一个报文,当前的速率是12-15分钟一个报文,另外只有报文从无线AP发送到客户端时才能被加密。只有配置了TKIP 作为加密机制的设备受此漏洞攻击
四次握手
初始化:AP用SSID和passphrase生成PSK。(WPA-PSK中,PMK=PSK)
(PSK=pdkdf2_SHA1(passphase, SSID, SSID Length, 4096))
第一次握手:AP广播SSID,和AP_MAC(AA),STATION接受到广播数据,用密钥生成
PSK
第二次握手:STATION方式送一个随机数SNonce,STATION_MAC(SA)给AP,AP端接受到SNonce,STATION_MAC(SA)后生成一个随机数ANonce然后用PMK,AP_MAC(AA),STATION_MAC(SA),SNonce,ANonce生成PTK (PTK= PMK, Len(PMK),”Pairwise key expansion”,MIN(AA, SA)||MAX(AA,SA)||MIN(SNonce,ANonce)||MAX(SNonce,ANonce))
提取PTK前16字节组成MIC_KEY
第三次握手:AP发送ANonce给STATION,STATION端接受到ANonce和以前的PMK,SNonce,AP_MAC(AA),STATION_MAC(SA),用同样的算法生成PTK,提取前16字节组成一个MIC_KEY,用MIC_KEY和802.1x data数据帧算出MIC(MIC=HMAC_MD5(MIC_KEY, 16, 802.1x data))
第四次握手:STATION端发送802.1x data和MIC_KEY(在802.1x数据帧最后加上MIC 和两字节的0),AP端接受到,以同样算法产生MIC,如果MIC相等的话,则握手完成。
WPA攻击:
抓取数据包进行攻击,几乎不能实现
抓取四次我收数据包,依靠数据包里面,和密码有关联的信息,通过字典进行攻击。字典攻击的字典太过于庞大,只有弱密码字典可以实现应用
断线攻击,通过强制段线,获取四次握手通信包。
间接攻击:例如通过物理手段获取你的密码,路由器厂家安装后门。