首 页 用户登录 | ![]() |
|||
|
|||
按字母检索 | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |
按声母检索 | A | B | C | D | E | F | G | H | J | K | L | M | N | O | P | Q | R | S | T | W | X | Y | Z | 数字 | 符号 |
|
![]() |
您的位置: 5VAR论文频道 → 论文中心 → 理工论文 → 电子通信 |
|
|||||
WEP安全性能研究及其攻击 | |||||
收集整理:佚名 来源:本站整理 时间:2009-01-10 22:36:26 点击数:[] ![]() |
|||||
B=0)。如果KSA经过I+B-1次迭代后满足: SI+B-1[1]<I SI+B-1[1]+SI+B-1 [SI+B-1[1]]=I+B 考虑第I+B次迭代: iI+B=I+B jI+B=jI+B-1+S[I+B]+K[(I+B) mod L] 交换SI+B-1[iI+B],SI+B-1 [jI+B]: SI+B [iI+B]=SI+B-1 [jI+B] , SI+B [jI+B]=SI+B-1 [iI+B] 在满足上述条件的情况下,S[1],S[S[1]]和S[S[1]+S[S[1]]]这三个元素以很高的概率(大于5%)均不参与KSA剩余的交换操作,也即首字节输出以很高的概率满足: Out=SI+B-1[jI+B]=SI+B-1[jI+B-1+K[B]+SI+B-1[I+B]] 这种情况下,通过重建KSA,能够成功地从首字节输出中获取加密密钥中某个特定字节K[I+B]的信息: K[B]=S[Out]-jI+B-1-SI+B-1[I+B]] S[Out]表示元素Out在状态表中的位置。 从前面分析可以看出,在满足SI[1]<I+B且SI[1]+SI[SI[1]]=I+B条件的情况下,可以准确重建K[B]的概率大于5%,远远大于1/256。这样通过收集足够数量的满足上述条件的数据包,就可以成功地重建密钥K[B]。同理,在成功重建K[B]的基础上,就可以用类似的方法重建所有密钥。 具体算法如下: RecoverWepKey(CurrentKeyGuess,KeyByte) Counts[0...255]=0 For each packet->P If Resolved﹖(P.IV) Counts[SimulateResolved(P,CurrentKeyGuess)]+=1 For each SelectMaximalIndexesWithBias(Counts)->ByteGuess CurrentKeyGuess[KeyByte]=ByteGuess If Equal﹖(KeyByte,KeyLength) If CheckChecksums(CurrentKeyGuess) Return CurrentKeyGuess Else Key=RecoverWEPKey(CurrentKeyGuess,KeyByte+1) If notEqual﹖(Key,Failure) Return Key Return Failure 2.3 算法改进 可以看出,以上的攻击方法中,所有关于K[I+B]的预测均是基于其前面所有密钥(K[0],...,K[I+B-1])已知的基础上。换言之,前面的预测错误将直接导致K[I+B]的错误预测。那么能否从K[I+B]中推测出K[0],...,K[I+B-1]的信息? 考虑KSA,如果经过I次迭代后,满足: I<SI[1]+SI[SI[1]]=I+B≤L SI[1]≤I 则SI[1]和SI[SI[1]]以很大的概率((254/256)L-I≈1)不参与第I步与第L步之间的迭代。同时,j以很大的概率不指向SI[I],...,SI[I+B]这几个元素。 即: SI[1]=SI+B-1[1] iL-1=L-1 jI+B-1=jI+SI[I]+...+SI[I+B-1]+K[I]+...+K[I+B-1] 考虑第L步: iI+B=I+B jI+B=jI+B-1+SI[I+B]+K[I+B] 交换S[i],S[j],则SI+B[I+B]=SI+B-1[jI+B]。 如果SI+B-1[jI+B],SI+B-1[1]和SI+B-1[SI+B-1[1]]不参与剩余的交换操作,那么输出为: Out=SI+B-1[jI+B] 而由前面的分析可以看出,SI+B-1[jI+B]以很高的概率(约为1)没有参与前面的交换操作,也即SI+B-1[jI+B]=jI+B。由此可知 Out=jI+SI[I]+...+SI[I+B-1]+K[I]+...+K[I+B-1]+SI[I+B]+K[I+B] 利用上述关系可以成功地推出不同K字节之间的关系,从而加速攻击。 另外,由于密钥管理时密钥需要手工输入,所以绝大多数情况下,密钥只是ASIIC字符。这样大大减小了密钥的搜索空间,提高了攻击效率。 3 实验结果与结论 为对上述算法进行验证,进行了实验。实验中所采用的硬件为朗讯的ORiNOCO无线网卡,操作系统为Redhat7.1。实验结果表明,本文所提出的算法平均在收集100万到200万加密数据包的情况下,成功地恢复出了原加密密钥。与FluhrerS.、MantinI.、 Shamir A.所提出的KSA攻击需要400万到600万数据包相比,攻击效率有了很大提高。 基于以上分析,不难看出:现有WEP加密中存在重大的安全漏洞,这种情况并不因加密密钥长度的增加而得到改善,所以在WEP2中同样存在。为此,建议现有的802.11用户: .假设802.11链路层并不提供安全措施; .为保障网络通信的安全,使用IPSEC或者SSH等高层加密手段; .把所有通过802.11接入的用户置于防火墙之外。 .经常更换密钥,同时针对密钥应尽量采用某种HASH算法,避免采用全为ASIIC字符的加密密钥。 |
提供人:佚名 | |
【返回上一页】【打 印】【关闭窗口】 |
![]() |
5VAR论文频道 |
![]() |
5VAR论文频道 |
![]() |
关于本站 -
网站帮助 -
广告合作 -
下载声明 -
网站地图
Copyright © 2006-2033 5Var.Com. All Rights Reserved . |