欢迎来到专业的宏发范文网平台! 心得体会 党建材料 工作总结 工作计划 思想汇报 事迹材料 发言讲话 述职报告
当前位置:首页 > 范文大全 > 公文范文 > 正文

浅析安全协议中对拒绝服务攻击的防范

时间:2022-04-05 15:11:40 浏览量:

    摘要:文章主要分析了攻击的种类及安全协议中普遍存在的DoS(denial of service)隐患,通过对当前防范DoS攻击的方法进行分析,得出该方法所能防范的攻击类型,并对各方法进行比较。
 
    关键词:安全协议;拒绝服务(DoS);安全协议
 
    一、问题的提出
 
    随着互联网的普及,网络资源在实现高度共享的同时,也存在很多安全隐患。其中,拒绝服务攻击以其危害最为广泛,最难以防御而受到人们越来越多的关注。DoS(denial of service)是攻击者利用协议或系统中的缺陷,向提供服务的主机进行攻击,试图通过耗尽服务方的计算、内存等资源的手段,从而使服务提供方无法向合法的授权用户提供服务。这种攻击通常会导致服务器瘫痪,许多正常的工作无法展开。采用何种方法有效地对DoS攻击和分布式DoS攻击进行防范是当前人们研究的重点。
 
    二、攻击的分类
 
    目前的网络攻击以其多方位,手段化而让人防不胜防。从最高层次上来说,攻击可分为主动攻击和被动攻击。其中,主动攻击指攻击者访问所需信息的一种故意行为而被动攻击主要是收集信息而不是进行访问。可以看出,主动攻击容易被发现而被动攻击被发现的机会几乎是零。在大多数情况下,主动攻击和被动攻击是联合使用对攻击对象进行入侵。常见的主动攻击有远程登录到指定机器的端口并找出公司运行的邮件服务器的信息、伪造无效的IP地址去连接服务器,使接受到错误IP地址的系统浪费时间去连接某个非法地址。主动攻击包括拒绝服务攻击、信息篡改、资源使用、欺骗等攻击方法。被动攻击包括嗅探、信息收集等攻击方法。攻击的下一层次的分类就非常灵活了,可以从攻击的目标、攻击的切入点、实施过程等方面进行分类。我们可以得出,拒绝服务攻击是一种主动攻击,它利用协议或系统中的漏洞,对服务提供方发动攻击,使其无法响应合法的授权用户的服务请求。
 
    三、安全协议中存在的DoS隐患
 
    安全协议是建立在密码机制基础上的一种基于消息交换的协议,它运行在计算机通信网络或分布式网络系统中,与之相对应的是DoS和分布式DoS,安全协议的执行过程是借助密码学问题的解决来实现密钥分配、身份认证、信息保密以及电子交易的安全进行。攻击者可以冒充协议的发起方向提供服务的服务器发送大量的认证请求,如果安全协议在设计时未考虑DoS攻击的威胁,则很可能使响应方因为要计算庞大的数学问题而耗尽其计算或内存资源,从而导致拒绝服务。
 
    我们以ISO/IEC11770-3密钥密匙交换协议为例,来说明安全协议中存在的DoS隐患。该协议描述如下所示:
 
    Msg1:AàB:A,Na
 
    Msg2:àA:{Nb,Na,A,{B,Kba}Ka}Kb-1
 
    Msg3:AàB:{Na,Nb,B,{A,Kab}Kb}Ka-1
 
    该协议采用传统的Alice-and-Bob标记方式,包含三条消息Msg1、Msg2和Msg3,其中的A与B表示参与协议执行的主体,Ka、Kb表示相应主体的公钥,Ka-1、Kb-1表示相应主体的私钥,{X}K表示对X用公钥K加密,{X}K-1表示对X用私钥K-1签名。Na与Nb为现时(nonce),kba和kab为双方各自产生的密钥,协议运行完成后,每个参与方都要将kab和kba进行散列运算后得到会话密钥。
 
    攻击者可以不必考虑kba的生成及公钥加密和签名运算,它仅仅只需要冒充发起方A发出大量的虚假消息Msg1,可以看到响应方不做任何判断就开始进行kba的生成以及一次公钥加密和一次签名运算,而后两个运算的代价都是比较昂贵的,同时响应方还要保存A、Na、Nb、kab等状态信息,攻击者可以在短时间内冒充任意的发起方向响应方发送这会样的大量消息,可以看到,响应方耗费了大量的计算资源,同时也会耗费大量的内存资源,这样使得该协议就同时受到内存资源耗尽和计算耗尽的DoS攻击。
 
    四、防范DOS攻击的方法
 
    通过上一节的说明,我们看到安全协议中存在着DoS的隐患,攻击者可以通过假冒协议的发起者向响应方发送大量请求,从而导致相应方无法向合法用户提供安全服务(见图1)。目前,国内外解决安全协议DoS隐患的方法主要有三大类:无状态、弱认证和增加发起代价。其中,无状态指协议主体在执行发起方的服务请求之前不会保存每个发起方的当前会话状态,这样就可避免内存资源耗尽的拒绝服务攻击。弱认证是指响应方先对发起方进行一个初步的认证,判断其是否为合法用户,弱认证通过后再执行协议中比较耗费系统资源的强认证部分。增加发起代价是针对发起方发动DoS攻击时发送大量消息的特点,适当增加发起方的资源耗费代价,使得DoS攻击的发起难度增大。
 
    在介绍各防范方法之前,我们假设攻击者可以窃听、拦截、篡改、伪造和重放系统中的部分消息;假设协议主体的运行环境有一定的物理安全保障措施和足够的网络带宽。
 
    (一)无状态连接方法
 
    无状态连接方法的出发点在于减轻响应方的内存资源负载。响应方在收到发起方的协议请求后,响应方执行协议但不保存与协议运行相关的信息,而是将其作为响应消息的一部分发送个发起方,发起方在下一条消息中再将该状态信息返回给响应方。可以看到,响应方在确认对方不是攻击者之前,必须保持无状态,这种方法有效的解决了内存资源耗尽的DoS攻击。使用这种方法,对前面提到的ISO/IEC11770-3协议进行改进,可得协议如下:
 
    Msg1:AàB:A,Na
 
    Msg2:BàA:{Nb,Na,A,{B,Kba}Ka}Kb-1,{Kba}Kbe,HMAC{Kbm,{A,Na,Nb,{Kba}Kbe}}
 
    Msg3:AàB:{Na,Nb,B,{A,Kab}Kb}Ka-1,A,Na,Nb,{Kba}Kbe,HMAC{Kbm,{A,Na,Nb,{Kba}Kbe}}
 
    这里的Kbe和Kbm是仅为响应方知道的分别用于加密和HMAC的秘密密钥。使用无状态连接方法,响应方B在收到消息后,并不保存状态,而是将状态信息发送给A,在收到消息3后,首先验证HMAC是否正确,如正确再继续协议的执行。可以看出,这种方法是解决了内存资源耗尽的DoS防范问题,但是却大大增加了协议主体的计算量,如果攻击者发送大量的请求消息,则可能导致计算资源耗尽;其次,假设攻击者可以重放消息3,如果在短时间内,攻击者收集大量有效的消息3并集中发送,也可导致内存资源耗尽;另外,消息长度的增加使得带宽需求加大。
 
    (二)cookie方法
 
    Cookie机制是从Karn和Simpson提出photuris协议开始应用于安全协议中,它在协议运行的起始部分由响应方发送个发起方一小块数据,发起方必须在随后的消息中包含这块数据。Cookie的目的是防止攻击者使用IP欺骗发起大量的协议请求导致响应方负载过重。在Cookie机制中,响应方在协议的起始部分进行一个无状态的认证机制,这个过程中不创建状态也不做大量耗费资源的计算。发起方为了得到服务,首先向服务器发送请求,服务器运行简单计算产生一个Cookie发送给客户端,客户端再次连接服务器时,必须提供该Cookie并由服务器检验,如检验通过,服务器才开始为协议的后继部分的运行提供计算或内存资源。Cookie的工作原理如图2所示:
 
    通过上面的分析,我们可以知道该方法能够有效地防止大多数IP欺骗攻击者,但是还存在一定的安全隐患。如果攻击者使用真实的IP地址获得Cookie并对服务器进行攻击,服务器无法防范,这在DDoS中比较常见。其次,如果攻击者使用的是虚假IP,但它可以采用窃听、IP源路由选项等方法获得Cookie,攻击者可使用虚假IP和所获得的Cookie进行DoS攻击。对于以上两种情况,Cookie方法很难防范。
 
    (三)client-puzzle方法
 
    网络安全中,DoS攻击所造成的危害都是非常巨大且难以防御,因此黑客们经常采用这种方法对服务器进行攻击,防御DoS攻击的方法很多,但真正能够起效的方法却很少,人们试图寻找最有效的方法,这种方法必须能够以最少的资源换取被攻击者最大的消耗。Jules和Brainard在防御SYN-flood攻击时采用了工作量证明的思路并在文献中提出了client –puzzle方法,这种方法就是一种很有效的防御DoS攻击的方法。该方法原理如图3所示:
 
    CPP(client puzzle protocol)用来防御DoS攻击的有效性有两个方面:一是如果是合法客户的请求,由于其请求频率较小,所以耗费资源较少,同时会产生较小的访问延迟;二是由于攻击者自身资源有限,不可能(只针对DoS)在单位时间内发送过多的访问请求来消耗服务器端资源。
 
    通过实验验证,该方法能够很好地解决内存资源和计算资源耗尽问题,同时具有很强的通用性,但是由于该方法增大了发起方的代价,如果是合法的发起方有可能也不能正常提供服务,因此存在一定的局限性,但是由于该方法能够一定程度上防御DDoS,所以还是受到人们越来越多的关注。如何设计合理的puzzle则是人们关注的重点。
 
    五、总结
 
    随着计算机和网络技术应用的日益普及,随之而来的各种网络安全问题也日益突出,这使得网络环境也变得日趋复杂,同时对于网络的新的攻击方法和手段层出不穷,这些都使网络的结构,网络运行的通信协议及网络应用变得繁杂,同时也造成人们对发生的网络安全问题可容忍度逐步降低。有时一个小的网络故障带给人们的可能就是一场灾难,因此,为了保障网络运行的安全,各种网络入侵检测和攻击防御技术便应运而生。本文主要介绍了攻击的类型,进而阐述了拒绝服务攻击的基本原理,分析说明了安全协议中普遍存在拒绝服务攻击隐患,介绍了在安全协议基础上防御该类攻击的三种方法并对这些方法进行了简单的分析、说明和比较。
 
    参考文献:
    1、ISO.Information Technology–Security Techniques–Key Management–Part 3:Mechanisms Using Asymmetric Techniques ISO/IEC 11770-3[S].1999.
    2、C Meadows.A formal framework and evaluation method for network denial of service[A].Proc. of the 12th IEEE.Computer Security Foundations Workshop[C].Mordano,Italy,1999.
    3、范红,冯登国.安全协议理论及方法[M].科学出版社,2003.
    4、李德全.拒绝服务攻击[M].电子工业出版社,2007.
    5、卿斯汉.安全协议20年研究进展[J].软件学报,2003(10).
    6、Tuomas Aura,Pekka Nikander. Stateless connections[A].in Yongfei Han,Tatsuaki Okamoto and Sihan Qing(Eds.):Proceedings of Information and Communications Security,1st International Conference (ICICS'97)[C].Beijing,,China,volume 1334 of Lecture Notes in Computer Science,Springer,1997.
    7、P.Karn,B.Simpson.Photuris:Session Key Management Protocol.RFC 2522[S],IETF Network Working Group,1999.
 
    (作者单位:运城学院)
   

推荐访问:浅析 中对 拒绝服务 防范 攻击

猜你喜欢