专利名称:抵抗无线局域网接入认证拒绝服务攻击的方法
技术领域:
本发明属于网络技术安全领域,具体涉及无线网络环境抗拒绝服务DoS攻击的方 法,可用于无线局域网环境,以减少拒绝服务攻击对接入认证过程的影响。
背景技术:
拒绝服务DoS攻击的主要目的是为了使网络中提供的服务丧失可用性,其实施难
度小、危害程度大,是目前网络中最大的威胁。但是由于互联网的开放性,导致无法杜绝这
种攻击的存在。因此现有研究的目标都旨在如何减少DoS攻击对网络的影响。 无线网络的接入安全一直是人们研究的热点问题。由于无线网络设备的和带宽资
源的局限性,导致接入认证过程面临DoS攻击的威胁。目前已有的无线接入认证协议,诸如
WAPI协议和802. lli协议等,都在无线接入过程中存在一定的DoS攻击威胁。 802. lli协议是目前最流行的无线网络安全协议标准,它提供了身份认证和密钥
交换功能,目前市面主流无线网络产品都采用该标准。802. lli继承了 802. 11的两种认证
方式开放式系统认证方式和共享密钥认证方式,并且提出了基于802. IX的认证机制,建
议最好采用基于802. 1X的认证机制。802. lli协议提出了新的安全网络安全体系——强安
全网络RSN(Robust Security Network),主要由安全关联管理和数据加密机制够成。其中
安全关联管理机制包括RSN安全能力协商、802. IX认证过程和802. IX密钥发布过程。 1. RSN安全能力协商过程即安全关联建立的过程,参考图l,描述如下 1)用户STA通过接入点AP的信标帧或者探测响应帧获得802. lli的信息元素; 2)用户STA向接入点AP进行开放系统认证请求; 3)接入点AP对用户STA做出开放系统认证响应; 4)用户STA发送关联请求给接入点AP ; 5)接入点AP对用户STA进行关联请求认证响应。 2. 802. IX认证过程 当安全关联建立过程结束之后,就可以进入802. IX认证。802. IX认证协议实现了 网络的接入控制,该协议包含三个主体,用户接入端,接入认证端和认证服务器,即无线网 络环境中的用户STA,接入点AP和认证服务器ASU。在该协议下,用户STA和接入点AP之 间通过认证服务器ASU进行相互认证。用户STA与接入点AP之间采用802. IX认证标准, 而接入点AP和认证服务器ASU之间则采用AAA协议作为通信标准,即RADIUS/DIAMETER协 议。 参考图2, 802. IX认证过程如下 1)用户STA向接入点AP的非受控端口发送一个EAP启动消息; 2)接入点AP返回EAP扩展认证回应,要求用户STA提供身份信息; 3)用户STA通过EAP扩展认证响应,向接入点AP发送自己的身份信息; 4)接入点AP将用户STA的身份信息通过接入请求发送给认证服务器ASU来进行
认证;
5)认证服务器ASU利用EAP中封装的认证方法来对用户STA进行身份认证;
6)用户STA身份得到认证之后,认证服务器ASU将认证结果和密钥材料发送给接 入点AP ; 7)接入点AP向用户STA发送EAP扩展认证成功消息。 上述安全关联建立过程是一个状态执行协议,AP需要对用户的状态信息存储,因 此需要AP消耗一定的存储资源。如果攻击者发送了大量虚假探测请求,AP会因为处理这 些虚假探测请求而导致自身存储资源耗尽,无法为其他用户提供接入认证服务。扩展认证 802. IX为接入认证过程提供了更强的身份验证,但是同时也能够被攻击者利用来进行DoS 攻击,攻击者可以发送大量虚假的证书迫使ASU进行证书验证消耗大量的计算资源导致接 入认证服务无法正常进行。因此802. lli协议针对DoS攻击没有起到很好的防护作用。
WAPI协议是中国无线局域网标准,由WAI和WPI两个模块构成,分别实现对用户身 份的认证和对传输数据加密的功能。WAPI与802. lli协议相同,需要首先进行安全关联过 程。参考图3,其关联过程如下 1.用户STA通过AP的信标帧或者探测响应帧获得WAPI信息元素
2.用户STA向接入点AP发送开放系统认证请求;
3.接入点AP对用户STA做出开放系统认证响应; 4.用户STA发送关联请求给接入点AP,其中关联请求中的包含WPAI信息元素;
5.接入点AP对用户STA进行关联请求认证响应。 在完成WAPI安全关联建立后将进行WAI认证,参考图4,认证过程如下 首先,接入点AP向用户STA发送认证激活请求,即接入点AP向用户STA发送信标
帧; 其次,在接入认证请求中,用户STA将自己的证书和接入请求时间提交给接入点 AP ; 再次,在证书认证请求中,接入点AP将用户STA的证书、用户STA接入请求时间和 自己的证书及他对这三个部分的签名发给认证服务器ASU ; 然后,当认证服务器ASU收到接入点AP发送来的证书认证请求之后,首先验证接 入点AP的签名和证书,当认证成功之后,进一步验证用户STA的证书,之后,认证服务器ASU 对用户STA和接入点AP证书的认证结果用自己的私钥进行签名,并将这个签名连同证书验 证的结果发回给接入点AP; 最后,接入点AP对收到的证书认证响应进行验证,并得到对用户STA证书的认证 结果,根据这一结果来决定是否允许接入用户STA。同时接入点AP需要将认证服务器ASU 的验证结果转发给用户STA,用户STA也要对认证服务器ASU的签名进行验证,并得到对接 入点AP证书的认证结果,根据这一结果决定是否接入接入点AP。 WAPI协议同样需要建立关联过程,因此存在802. 11协议中面临关联过程中的资 源耗尽威胁。对于WAI过程,AP和ASU都需要对证书进行签名认证计算,因此,AP和ASU很 容易遭受DoS攻击的威胁。 针对认证协议的DoS攻击威胁,研究者首先提出了 cookie机制。其基本思想是在 发起方请求到来时,响应方生成一个与发起方捆绑的cookie,然后将该cookie发送给发起 方,并要求发送方回送该cookie,使用伪造的网络地址的攻击者,很难伪造和篡改cookie
4来继续运行协议,从而达到防御DoS攻击的目的。该机制对伪造IP地址的DoS攻击有很好 的抵御效果,但是对于来自真实地址的IP地址的DoS则无能为力。 之后,client-puzzle机制的提出则进一步增强了认证协议抗DoS攻击的能力。基 本原理是,当服务器端接收到客户的请求时,服务器会向客户端发送一个问题puzzle,要求 客户端在规定的时间内做出解答solution,并将解答发回给服务器。但是如何避免请求过 程被攻击者利用以发动DoS攻击是一个需要解决的问题。Puzzle通常通过消耗CPU资源和 内存资源来构造。 最近有研究者提出利用无线模块来构造puzzle的方法来抵御无线接入认证的 DoS攻击但是其中也带来了一些其他安全隐患,距离实用还有很大距离。因此现有的无线接 入认证协议对DoS攻击的防御机制仍然不健全。需要设计一种能够在接入认证过程中有效 抵抗DoS攻击的方法来提高移动网络的安全性。
发明内容
本发明主要针对上述无线接入认证过程中的不足,通过监听修改的信标帧方式和 client-puzzle机制相结合,提出了一种抵抗无线局域网接入认证拒绝服务攻击的方法,
为实现上述目的,本发明包括如下步骤 (1)用户STA通过监听获得接入点AP的信标帧来获得相关信息元素,该信息元素 中包含原有信息和用户产生问题puzzle所需的参数; (2)在获得相关信息元素后,用户STA与接入点AP进行相应的认证交互;
(3)在进行认证交互的同时,执行如下操作 3a)用户STA从信标帧中获得接入点AP的MAC地址AP_add,从信息元素中获得构 造puzzle所用的构造随机数Ni和当前难度级别L,指定puzzle计算所用的Hash函数,并 任意选择一个随机数r ; 3b)将待解答X、用户所选择随机数r、接入点的MAC地址AP—add、构造随机数Ni
和难度级别L,按顺序并接成比特串X || r || Ni || AP—add || L,并对该比特串进行Hash计算,
如果计算结果最后L位为0,则X是puzzle的解答,否则解答不能通过; 3c)用户利用穷举搜索的方法寻找一个解答X,使其满足步骤3b中解答的判定条
件; (4)完成puzzle的生成和解答后,用户STA向接入点AP发起关联请求消息,该关 联请求消息的信息元素中添加生成puzzle的相关参数; (5)接入点AP对关联请求消息中的puzzle和寻找的解答X按照步骤3b)中对解 答的判定条件做出验证,如果puzzle验证通过,且该puzzle验证结果与当前解答临时列表 中存储的已有验证结果不重复时,则向用户发送关联请求响应消息,完成关联请求,并将验 证结果存入解答临时列表中,否则终止该用户的接入请求。 本发明由于通过对信标帧中信息元素的修改,增加puzzle构造参数,使用户能够 通过监听信标帧的方式来获得puzzle构造参数,减少了传统方案中为构造puzzle而增加 的协商次数,提高了协商效率;同时由于采用用户监听信标帧的方式来获得puzzle构造参 数,避免了传统client-puzzle机制中请求puzzle的过程中潜在的DoS攻击威胁。
通过对关联请求消息中用户所产生puzzle和解答的验证,将伪造请求筛选出来,以提高无线接入认证协议的抗DoS攻击能力。
图1是802. lli协议接入认证的关联建立过程示意图;
图2是802. lli协议接入认证的扩展认证过程示意图;
图3是WAPI协议接入认证的关联建立过程示意图;
图4是WAPI协议接入认证的WAI认证过程示意图;
图5是本发明应用于无线局域网接入认证过程的示意图;
图6是本发明针对802. 11 i协议修改的信标帧信息元素格式;
图7是本发明针对WAPI协议修改的信标帧信息元素格式;
图8是本发明针对802. lli协议修改的关联请求信息元素格式;
图9是本发明针对WAPI协议修改的关联请求信息元素格式。
具体实施例方式
参照图5,本发明给出的接入认证过程中抵御拒绝服务攻击的方法,包括如下步 骤 步骤1,用户STA通过监听的方式获得AP所发布的信标帧。 信标帧在无线网络环境下是接入点AP采用广播机制周期发送的,因此用户不需 要向接入点AP发送请求消息,就能够通过监听的方式来获得信标帧中的信息元素。在本
发明中,用户所监听信标帧的信息元素是在原有信息元素基础上进行了修改,添加了构造 puzzle所需的参数,除了包含原有的信息之外,还包括构造随机数Ni、难度级别L和当前AP 所支持Hash算法。 本发明针对802. lli协议和WAPI协议,分别对其信息元素进行了修改。针对 802. lli协议,信息元素格式的修改如图6所示,在原有信息元素格式基础上,添加构造随 机数Ni表明当前AP所选随机数,占用4个8位位组数;难度级别L表明计算puzzle所需 难度级别,占用一个8位位组数;Hash算法表示当前AP可支持的Hash算法,如MD5, SHA-l 或者其他安全性更高的Hash算法,占用一个八位位组数。针对WAPI协议,信息元素的修改 如图7所示,所添加的各项含义及格式与对802. lli协议信息元素所添加的各项相同。
构造随机数Ni由接入点随机产生,并由AP规定构造随机数的有效使用期,如果当 前构造随机数失效时,接入点AP产生新的随机数,并更新信息元素;L是表示puzzle的难 度级别,由接入点AP根据当前网络和接入点资源消耗状况动态调节,如果难度级别L发生 变化,需要AP更新当前信息元素。 步骤2,用户STA与接入点AP进行相应的认证交互,同时用户产生puzzle并做出 解答。 用户在监听到某接入点AP的信标帧后,如果选择接入当前无线网络,则针对所使 用无线接入认证协议进行认证交互,当采用802. lli协议时,用户需要与该接入点AP进行 开放系统认证交互,当采用WAPI协议时,用户需要进行链路认证交互; 用户在进行认证交互的同时,需要根据得到的信息元素来构造puzzle并做出解 答,这里采用计算资源消耗来构造问题puzzle :首先用户STA从信标帧中获得接入点AP的MAC地址AP_add,从信息元素中获得构造puzzle所用的构造随机数Ni和当前难度级 别L,指定puzzle计算所用的Hash函数,并任意选择一个随机数r ;将待解答X、用户所选 择随机数r、接入点的MAC地址AP—add、构造随机数Ni和难度级别L,按顺序并接成比特 串X II r II Ni II AP—add || L ;对该比特串进行Hash计算,如果计算结果最后L位为O,则X是 puzzle的解答,否则解答不能通过,即使得X满足下式 Hash(X || r || Ni || dest IP || L)mod 2L = 0其中各符号标示与上述相同。 由于Hash函数具有单向性,通过解答判断条件,来求解X在计算上是不行的,因
此,用户只能通过穷举搜索的方法来寻找解答X,并进行计算验证直至找出满足解答条件的X。 步骤3,用户STA向接入点AP发送包含puzzle和解答的关联请求消息。
首先,由用户对关联请求中的信息元素进行修改,在信息元素中添加puzzle的所 有生成参数以及解答X。针对两种无线接入认证协议802. lli协议和WAPI协议,分别对其 关联请求信息元素进行修改 如果采用802. lli协议,则在原有关联请求的信息元素格式基础上,添加构造随 机数Ni、难度级别L、用户所选择Hash算法、用户所选择随机数r和解答X,其中Ni占用4 个8位位组数,L占用1个8位位组数,Hash算法占用1个8位位组数,r占用4个8位位 组数,X占用4个8位位组数,如图8所示; 如果采用WAPI协议,则在原有关联请求信息元素格式基础上,添加构造随机数 Ni、难度级别L、用户所选择Hash算法、用户所选择随机数r和解答X,其中Ni占用4个8 位位组数,L占用1个8位位组数,Hash算法占用1个8位位组数,r占用4个8位位组数, X占用4个8位位组数,如图9所示。 然后,用户将修改后的关联请求消息发送给接入点。 步骤4,接入点AP接收关联请求,并对puzzle和解答进行验证,如果验证通过则完 成关联请求,否则终止用户接入请求。 接入点AP接收到用户的关联请求消息,从关联请求消息信息元素中,提取构造随 机数Ni、难度级别L、用户所选择Hash函数、用户所选择随机数r、解答X ;然后由接入点计 算X II r II Ni II AP_add II L的散列值,验证该解X答是否满足步骤2中的解答判断条件,如果 解答X满足判断条件,则继续对解答的唯一性进行判定,否则终止用户的接入请求;
如果puzzle和解答X满足解答条件,将由该解答X计算出的散列值与解答临时列 表中已存储散列值进行比较,避免puzzle和解答X被重复利用若该散列值未被包含在解 答临时列表中,则接受关联请求,并返回关联响应,建立安全关联;否则拒绝关联请求,终止 用户的接入请求。接入点完成关联请求过程后,将计算结果存入解答临时列表中,如果信标 帧中信息元素发生变动,接入点需要清空解答临时列表以接受新的puzzle和解答。
符号说明 DoS攻击拒绝服务(Denial of Service)攻击 WAPI :中国无线局域网安全标准 802. lli :无线网络安全标准协议RSN:强安全网络(Robust Security Network) 802. IX :基于端口的网络接入控制认证标准
7
AP :接入点(Access Point) STA :用户(Station) ASU :认证服务单元 EAP :扩展认证 Hash :杂凑函数 r :用户选取的随机数 X :解答 Ni :AP所选择的构造随机数 AP add :A P的地址 L :AP所选择的难度级别。 MD5 :Message-Digest Algorithm 5,信息-摘要算法-5 SHA-l :Secure Hash Standard-1 ,安全杂凑标准-1 RADIUS :Remote Authentication Dial In User Service,远端用户拨入认证月艮务 DIAMETER :新一代AAA协议。
权利要求
一种抵抗无线局域网接入认证中存在的拒绝服务攻击的方法,包括如下步骤(1)用户STA通过监听获得接入点AP发布的信标帧获得相关信息元素,该信息元素中包含原有信息和用户产生问题puzzle所需的参数;(2)在获得相关信息元素后,用户STA与接入点AP进行相应的认证交互;(3)在进行认证交互的同时,执行如下操作3a)用户STA从信标帧中接入点AP的MAC地址AP_add,从信息元素中获得构造puzzle所用的构造随机数Ni和当前难度级别L,指定puzzle计算所用的Hash函数,并任意选择一个随机数r;3b)将待解答X、用户所选择随机数r、接入点的MAC地址AP_add、构造随机数Ni和难度级别L,按顺序并接成比特串X||r||Ni||AP_add||L,并对该比特串进行Hash计算,如果计算结果最后L位为0,则X是puzzle的解答,否则解答不能通过;3c)用户利用穷举搜索的方法寻找一个解答X,使其满足步骤3b中解答的判定条件;(4)完成puzzle的生成和解答后,用户STA向接入点AP发起关联请求消息,该关联请求消息的信息元素中添加生成puzzle的相关参数;(5)接入点AP对关联请求消息中的puzzle和寻找的解答X按照步骤3b)中对解答的判定条件做出验证,如果puzzle验证通过,且该puzzle验证结果与当前解答临时列表中存储的已有验证结果不重复时,则向用户发送关联请求响应消息,完成关联请求,并将验证结果存入解答临时列表中,否则终止该用户的接入请求。
2. 根据权利要求l所述的接入认证方法,其中步骤(1)所述的用户产生问题puzzle所 需的参数,是在对原有信息元素进行修改的基础上,添加构造puzzle所需的随机数Ni、难 度级别L以及接入点AP所支持Hash算法。
3. 根据权利要求1所述的接入认证方法,其中步骤(4)所述的puzzle生成相关参数, 是在对原有信息元素进行修改的基础上,添加构造随机数Ni、当前难度级别L、用户所选择 的随机数r、 Hash算法以及寻找的解答X。
全文摘要
本发明公开了一种无线接入认证协议抗DoS攻击的方法,主要解决现有802.11i协议和WAPI协议无线接入认证过程中存在的DoS攻击威胁问题。该方法利用信标帧发布机制和client-puzzle机制的结合使用,实现对接入认证关联过程中DoS攻击的抵御。其实现步骤是(1)用户通过监听的方式获得接入点所发布的信标帧,获得构造puzzle所需参数;(2)在完成认证交互的同时,生成puzzle并作出解答;(3)将puzzle和解答包含在关联请求中发送给接入点;(4)接入点通过对puzzle和解答进行的验证,决定是否完成此次关联过程。本发明具有较强的抵御DoS攻击能力和适应性,适用于现有的无线接入认证协议。
文档编号H04W24/04GK101778387SQ20101001357
公开日2010年7月14日 申请日期2010年1月8日 优先权日2010年1月8日
发明者刘彦明, 李小平, 董庆宽, 高琳, 黎剑兵 申请人:西安电子科技大学