基于RC4 算法IV 脆弱性破解WEP秘密密钥
2014-06-18谢青松汤玲李甜杜廷龙
谢青松+汤玲+李甜+杜廷龙
摘要:在分析WEP协议加密原理的基础上,针对其核心RC4算法存在IV脆弱性的缺陷,给出了一种破解WEP秘密密钥的算法。该算法首先用无线数据帧的标识字段0XAA异或截获密文帧的第一个字节得到伪随机密钥序列的第一个字节,然后再根据截获的初始向量并利用RC4算法初始向量的脆弱性,计算出秘密密钥。实验结果表明,该算法能有效破解WEP协议的秘密密钥。
关键词:有线等效保密协议;RC4算法;初始向量的脆弱性
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2014)11-2517-03
Abstract: This paper presents a algorithm used to crack WEP secret key on the base of analyzing the theory of WEP, according to the bug of RC4 algorithm which is the core of WEP. Firstly, this algorithm gets the first byte of pseudo random secret key sequence by XORing the identification filed of wireless data frame 0XAA and the first byte of captured secret frame. Secondly, this algorithm calculates the secret key, according to the IV Weakness of RC4 algorithm and the initialization vector of the wireless data frame. The experimental result shows that the proposed algorithm can effectively crack WEP Secret Key.
Key words: Wired Equivalent Privacy; RC4 algorithm; IV Weakness
802.11无线网络采用有线等效保密WEP(Wired Equivalent Privacy)协议来为无线网络中的数据通信提供机密性和完整性保护。然而WEP协议存在缺陷,攻击者可以破解WEP协议的密钥,这给无线通信带来安全隐患[1]。该文首先分析了WEP协议的加密原理,然后详细分析了WEP协议的核心RC4算法及其存在IV脆弱性的缺陷,最后针对该缺陷给出了破解WEP秘密密钥的详细步骤。
1 WEP协议
WEP协议由认证协议和加密协议组成。认证协议用于确认通信双方的身份,加密协议用来确保通信数据的秘密性。WEP协议加密的过程分为四步:首先,将用户输入的秘密密钥和随机生成的初始向量IV(Initialization Vector)拼接成密钥;然后将此密钥作为RC4算法的输入产生伪随机密钥序列;其次将明文数据及其完整性校验值的组合作为明文序列;最后,用伪随机密钥序列异或明文序列的结果作为密文序列,并将初始向量IV和密文序列的组合作为密文帧发送给接收方。解密的过程与此类似。
从WEP协议的加密原理框图中可以看出两点:初始向量IV以明文的方式进行传输;WEP加密协议的核心是RC4算法。但由于RC4算法存在固有缺陷,易受IV Weakness攻击,进而攻击者可以完全恢复出WEP协议的秘密密钥。
2 RC4加密算法
RC4加密算法是Ron Rivest在1978年设计的密钥长度可变的流加密算法簇。RC4算法由两部分组成:密钥调度算法KSA(Key Scheduling Algorithm)和伪随机密钥序列生成算法PRGA(Pseudo Random Generation Algorithm)。密钥调度算法KSA将输入[L]字节的随机密钥[K]生成一个由[N]个元素组成的排列[S],[L]一般为8或16,[N]一般为256。伪随机密钥序列生成算法PRGA由密钥调度算法产生的随机排列[S]产生伪随机密钥序列[Z]。
3 基于IV Weakness破解WEP秘密密钥
2) 用捕获密文帧的第一个字节[C[1]]异或无线数据帧的标识字段0XAA,得到密钥流的第一个字节[Z[1]]。该字节为PRGA输出的第一个字节。
3) 攻击者自己构造特殊格式的初始向量
4 实验结果
接入点是Linksys WRT54G2无线路由器,支持802.11b/g/i协议。客户端使用的计算机安装华硕WL_167G无线网卡。监听者使用的计算机安装华硕WL_167G无线网卡,同时安装有基于上述破解原理编写的破解程序。
监听者首先截获大量的无线数据帧,然后根据上述步骤破解WEP秘密密钥。破解结果的界面如图5所示,可以看出,成功破解的秘密密钥为“1234567899”。
5 结束语
利用WEP协议核心RC4算法存在IV Weakness的缺陷,根据捕获的无线密文帧及其明文标识字段0XAA,提出了破解WEP秘密密钥的算法。实验结果表明,在获取大量无线数据帧的情况下,该算法能有效破解WEP协议的秘密密钥。
参考文献:
[1] 曹秀英,耿嘉,沈平.无线局域网安全系统[M].北京:电子工业出版社,2004.
[2] Stubblefield A, Ioannidis J, Rubin A.D. Using the Fluhrer, Mantin and Shamir Attack to Break WEP[R].AT&T Labs Technical Report,2001.
[3] Fluhrer S, Mantin I. and Shamir A, Weaknesses in the key scheduling algorithm of RC4 [EB/OL]. http://www.drizzle.com/aboba/IEEE/rc4_ksaproc.pdf.endprint
摘要:在分析WEP协议加密原理的基础上,针对其核心RC4算法存在IV脆弱性的缺陷,给出了一种破解WEP秘密密钥的算法。该算法首先用无线数据帧的标识字段0XAA异或截获密文帧的第一个字节得到伪随机密钥序列的第一个字节,然后再根据截获的初始向量并利用RC4算法初始向量的脆弱性,计算出秘密密钥。实验结果表明,该算法能有效破解WEP协议的秘密密钥。
关键词:有线等效保密协议;RC4算法;初始向量的脆弱性
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2014)11-2517-03
Abstract: This paper presents a algorithm used to crack WEP secret key on the base of analyzing the theory of WEP, according to the bug of RC4 algorithm which is the core of WEP. Firstly, this algorithm gets the first byte of pseudo random secret key sequence by XORing the identification filed of wireless data frame 0XAA and the first byte of captured secret frame. Secondly, this algorithm calculates the secret key, according to the IV Weakness of RC4 algorithm and the initialization vector of the wireless data frame. The experimental result shows that the proposed algorithm can effectively crack WEP Secret Key.
Key words: Wired Equivalent Privacy; RC4 algorithm; IV Weakness
802.11无线网络采用有线等效保密WEP(Wired Equivalent Privacy)协议来为无线网络中的数据通信提供机密性和完整性保护。然而WEP协议存在缺陷,攻击者可以破解WEP协议的密钥,这给无线通信带来安全隐患[1]。该文首先分析了WEP协议的加密原理,然后详细分析了WEP协议的核心RC4算法及其存在IV脆弱性的缺陷,最后针对该缺陷给出了破解WEP秘密密钥的详细步骤。
1 WEP协议
WEP协议由认证协议和加密协议组成。认证协议用于确认通信双方的身份,加密协议用来确保通信数据的秘密性。WEP协议加密的过程分为四步:首先,将用户输入的秘密密钥和随机生成的初始向量IV(Initialization Vector)拼接成密钥;然后将此密钥作为RC4算法的输入产生伪随机密钥序列;其次将明文数据及其完整性校验值的组合作为明文序列;最后,用伪随机密钥序列异或明文序列的结果作为密文序列,并将初始向量IV和密文序列的组合作为密文帧发送给接收方。解密的过程与此类似。
从WEP协议的加密原理框图中可以看出两点:初始向量IV以明文的方式进行传输;WEP加密协议的核心是RC4算法。但由于RC4算法存在固有缺陷,易受IV Weakness攻击,进而攻击者可以完全恢复出WEP协议的秘密密钥。
2 RC4加密算法
RC4加密算法是Ron Rivest在1978年设计的密钥长度可变的流加密算法簇。RC4算法由两部分组成:密钥调度算法KSA(Key Scheduling Algorithm)和伪随机密钥序列生成算法PRGA(Pseudo Random Generation Algorithm)。密钥调度算法KSA将输入[L]字节的随机密钥[K]生成一个由[N]个元素组成的排列[S],[L]一般为8或16,[N]一般为256。伪随机密钥序列生成算法PRGA由密钥调度算法产生的随机排列[S]产生伪随机密钥序列[Z]。
3 基于IV Weakness破解WEP秘密密钥
2) 用捕获密文帧的第一个字节[C[1]]异或无线数据帧的标识字段0XAA,得到密钥流的第一个字节[Z[1]]。该字节为PRGA输出的第一个字节。
3) 攻击者自己构造特殊格式的初始向量
4 实验结果
接入点是Linksys WRT54G2无线路由器,支持802.11b/g/i协议。客户端使用的计算机安装华硕WL_167G无线网卡。监听者使用的计算机安装华硕WL_167G无线网卡,同时安装有基于上述破解原理编写的破解程序。
监听者首先截获大量的无线数据帧,然后根据上述步骤破解WEP秘密密钥。破解结果的界面如图5所示,可以看出,成功破解的秘密密钥为“1234567899”。
5 结束语
利用WEP协议核心RC4算法存在IV Weakness的缺陷,根据捕获的无线密文帧及其明文标识字段0XAA,提出了破解WEP秘密密钥的算法。实验结果表明,在获取大量无线数据帧的情况下,该算法能有效破解WEP协议的秘密密钥。
参考文献:
[1] 曹秀英,耿嘉,沈平.无线局域网安全系统[M].北京:电子工业出版社,2004.
[2] Stubblefield A, Ioannidis J, Rubin A.D. Using the Fluhrer, Mantin and Shamir Attack to Break WEP[R].AT&T Labs Technical Report,2001.
[3] Fluhrer S, Mantin I. and Shamir A, Weaknesses in the key scheduling algorithm of RC4 [EB/OL]. http://www.drizzle.com/aboba/IEEE/rc4_ksaproc.pdf.endprint
摘要:在分析WEP协议加密原理的基础上,针对其核心RC4算法存在IV脆弱性的缺陷,给出了一种破解WEP秘密密钥的算法。该算法首先用无线数据帧的标识字段0XAA异或截获密文帧的第一个字节得到伪随机密钥序列的第一个字节,然后再根据截获的初始向量并利用RC4算法初始向量的脆弱性,计算出秘密密钥。实验结果表明,该算法能有效破解WEP协议的秘密密钥。
关键词:有线等效保密协议;RC4算法;初始向量的脆弱性
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2014)11-2517-03
Abstract: This paper presents a algorithm used to crack WEP secret key on the base of analyzing the theory of WEP, according to the bug of RC4 algorithm which is the core of WEP. Firstly, this algorithm gets the first byte of pseudo random secret key sequence by XORing the identification filed of wireless data frame 0XAA and the first byte of captured secret frame. Secondly, this algorithm calculates the secret key, according to the IV Weakness of RC4 algorithm and the initialization vector of the wireless data frame. The experimental result shows that the proposed algorithm can effectively crack WEP Secret Key.
Key words: Wired Equivalent Privacy; RC4 algorithm; IV Weakness
802.11无线网络采用有线等效保密WEP(Wired Equivalent Privacy)协议来为无线网络中的数据通信提供机密性和完整性保护。然而WEP协议存在缺陷,攻击者可以破解WEP协议的密钥,这给无线通信带来安全隐患[1]。该文首先分析了WEP协议的加密原理,然后详细分析了WEP协议的核心RC4算法及其存在IV脆弱性的缺陷,最后针对该缺陷给出了破解WEP秘密密钥的详细步骤。
1 WEP协议
WEP协议由认证协议和加密协议组成。认证协议用于确认通信双方的身份,加密协议用来确保通信数据的秘密性。WEP协议加密的过程分为四步:首先,将用户输入的秘密密钥和随机生成的初始向量IV(Initialization Vector)拼接成密钥;然后将此密钥作为RC4算法的输入产生伪随机密钥序列;其次将明文数据及其完整性校验值的组合作为明文序列;最后,用伪随机密钥序列异或明文序列的结果作为密文序列,并将初始向量IV和密文序列的组合作为密文帧发送给接收方。解密的过程与此类似。
从WEP协议的加密原理框图中可以看出两点:初始向量IV以明文的方式进行传输;WEP加密协议的核心是RC4算法。但由于RC4算法存在固有缺陷,易受IV Weakness攻击,进而攻击者可以完全恢复出WEP协议的秘密密钥。
2 RC4加密算法
RC4加密算法是Ron Rivest在1978年设计的密钥长度可变的流加密算法簇。RC4算法由两部分组成:密钥调度算法KSA(Key Scheduling Algorithm)和伪随机密钥序列生成算法PRGA(Pseudo Random Generation Algorithm)。密钥调度算法KSA将输入[L]字节的随机密钥[K]生成一个由[N]个元素组成的排列[S],[L]一般为8或16,[N]一般为256。伪随机密钥序列生成算法PRGA由密钥调度算法产生的随机排列[S]产生伪随机密钥序列[Z]。
3 基于IV Weakness破解WEP秘密密钥
2) 用捕获密文帧的第一个字节[C[1]]异或无线数据帧的标识字段0XAA,得到密钥流的第一个字节[Z[1]]。该字节为PRGA输出的第一个字节。
3) 攻击者自己构造特殊格式的初始向量
4 实验结果
接入点是Linksys WRT54G2无线路由器,支持802.11b/g/i协议。客户端使用的计算机安装华硕WL_167G无线网卡。监听者使用的计算机安装华硕WL_167G无线网卡,同时安装有基于上述破解原理编写的破解程序。
监听者首先截获大量的无线数据帧,然后根据上述步骤破解WEP秘密密钥。破解结果的界面如图5所示,可以看出,成功破解的秘密密钥为“1234567899”。
5 结束语
利用WEP协议核心RC4算法存在IV Weakness的缺陷,根据捕获的无线密文帧及其明文标识字段0XAA,提出了破解WEP秘密密钥的算法。实验结果表明,在获取大量无线数据帧的情况下,该算法能有效破解WEP协议的秘密密钥。
参考文献:
[1] 曹秀英,耿嘉,沈平.无线局域网安全系统[M].北京:电子工业出版社,2004.
[2] Stubblefield A, Ioannidis J, Rubin A.D. Using the Fluhrer, Mantin and Shamir Attack to Break WEP[R].AT&T Labs Technical Report,2001.
[3] Fluhrer S, Mantin I. and Shamir A, Weaknesses in the key scheduling algorithm of RC4 [EB/OL]. http://www.drizzle.com/aboba/IEEE/rc4_ksaproc.pdf.endprint