基于身份与位置分离映射机制的DoS攻击防御方法

文档序号:8005437阅读:237来源:国知局
专利名称:基于身份与位置分离映射机制的DoS攻击防御方法
技术领域
本发明涉及一种基于身份与位置分离映射机制的DoS攻击防御方法,使得终端受到恶意攻击时可以主动请求防御,避免造成进一步的危害且不影响终端其他通信连接。属于网 络安全技术领域。
背景技术
身份与位置分离网络体系可以解决路由可扩展问题,然而,正如传统网络面临的安全问题,身份与位置分离网络体系仍然面临许多网络安全问题。DoS和DDoS攻击是传统网络中的主要攻击方式,也将是身份与位置分离网络体系的主要安全威胁。传统网络中连接建立时接收端并不知道发送端通信的意图,接收端处于被动接收数据的状态。终端受到攻击时,不能采取措施阻止攻击数据流,而只能中断终端设备所有的通信,这样严重影响受害终端的正常通信,且攻击数据流持续影响受害终端网络的数据传输。StopIt系统是基于过滤规则的DoS防御系统。在StopIt系统中,接收端发现发送端为恶意节点时,接收端可以请求路由器设置过滤规则,阻断发送端到接收端的数据流。StopIt系统工作的具体步骤为1)接收端Hd检测到受发送端Hs的攻击,Hd向所在接入路由器Rd发送过滤Hs数据流的请求;过滤请求中包含HcUHs的地址和过滤时间Tb ;2)接入路由器Rd验证Hd过滤请求;Rd向所在自治系统(Autonomous System, AS) 的StopIt服务器Sd发送过滤Hs数据包的请求;3)接收端AS的StopIt服务器Sd转发过滤请求到Hs所在AS的StopIt服务器 Ss ;4)发送端AS的StopIt服务器Ss向Hs的接入路由器Rs发送过滤Hs的数据包请求;5)发送端接入路由器Rs验证Ss的过滤请求,创建过滤规则进行过滤。Rs向发送端Hs发送过滤通告,告之发往Hd数据流被过滤,在Tb时间内停止向Hd发送数据包。然而,StopIt系统存在一系列缺点1)过滤规则可扩展性受限。处理大规模DoS攻击时,路由器要维护巨大规模的过滤规则,复杂大量的过滤规则可能严重影响路由器的数据包处理速度。2) StopIt系统只允许终端受到攻击时可以发送请求阻止恶意攻击行为,不能在通信连接建立时就为终端提供允许或拒绝能力。3) StopIt和身份与位置分离网络体系结合性差。StopIt在自治域(AS)的边缘路由器过滤数据包,而身份与位置分离网络体系将接入网与核心网分离,用户处于接入网,应在接入网边缘路由器过滤数据包过滤。4) StopIt没有存储终端策略的功能。当终端需要长时间维持在某一个策略状态时,如拒绝或允许部分通信数据,StopIt不能提供这种支持。

发明内容
本发明的目的是提供一种基于身份与位置分离映射机制的DoS攻击防御方法,减少网络中恶意数据传输,当终端受到恶意攻击时可以主动请求防御,避免造成进一步的危害,且不影响终端其他通信连接。为此,本发明提供了一种基于身份与位置分离映射机制的DoS攻击防御方法,其特征在于,在身份与位置分离映射系统的基础上,向xTR映射缓存中的映射信息加入额外的通信状态标志,表示终端通信意愿,包括允许所有连接、允许部分连接、拒绝部分连接、拒绝所有连接等;代理服务器使通信状态标志与身份与位置分离网络体系的映射系统结合, 将通信状态等安全参数内嵌于映射系统的映射信息中,该xTR映射缓存中映射信息的通信状态标志通过询问代理服务器得到,该代理服务器通过询问其管理范围内的终端,收集、维护终端的通信状态,并应答xTR的通信状态查询;当终端发现受到恶意攻击时,发送过滤请求,要求阻止攻击数据流传输;当终端设置通信状态为允许部分连接通信状态时,发送端需要发送连接数据包,完成连接建立的过程。优选地,所述要求阻止攻击数据流传输的过程,包括下列步骤1)A向B连续发送数据流Pb,Pb按照身份与位置分离网络体系中终端间 通信过程到达B,终端B根据数据流Pb判断终端A在发起攻击或其他恶意行为,B需要阻止来自A的数据。B向XTR2发送过滤请求报文Fkeq。过滤请求报文Fkeq中包含过滤目标EIDa,过滤时间 Tb,过滤请求源B的通信状态和通信状态有效期Ts等信息;2) XTR2验证过滤请求报文Fkeq的真实性,添加认证信息MACkp供代理服务器PS2验证。XTR2然后向代理服务器PS2转发Fkeq ; 3) PS2验证Fkeq中的认证信息MACKP。验证成功后PS2储存终端B的通信状态,通信状态有效期Ts,过滤目标地址EIDa,过滤时间Tb等信息。PS2根据过滤请求报文Fkeq中的过滤目标EIDa,向过滤目标EIDa所在管理范围的代理服务器PS1发送过滤执行报文FDQ,过滤执行报文Fdq包括过滤请求源EIDb,B的通信状态,过滤目标EIDa,过滤时间Tb ;4)代理服务器PS1验证Fiw的真实性,添加认证信息MACpk供XTR1验证,转发过滤执行报文Fdq到XTR1 ;5) XTR1验证Fd。中的认证信息MACPK。验证成功后XTR1根据过滤源EIDB,将通信状态标志Fi Iter加入到映射缓存的EIDfto-RLOC2条目中(即映射信息变为 EIDB-to-RLOC2-Filter,其中通信状态标志Filter包含B的通信状态,过滤目标EIDa和过滤时间Tb等信息)。XTR1向终端A转发Fm,告之发送到终端B的数据包进入过滤机制,在过滤时间Tb内的向B发送的数据包都将被丢弃;至此终端B完成对终端A恶意攻击数据包的过滤设置,Tb时间内终端A向终端B 发送的数据包到达XTR1时,XTR1查询映射缓存或代理服务器得知终端B要求过滤终端A发送到终端B的数据包,XTR1丢弃源为EIDa目的地为EIDb的数据包。优选地,所述完成连接建立的过程的步骤包括1)终端A向B发送数据包Pf ;2) XTR1查询映射缓存中是否存在EIDfto-RLOC2映射信息,若没有则向映射服务器MS1查询;
3)映射服务器MS1向XTR1返回EIDb的映射信息;^xTR1向?5工发送连接询问报文Lkq,询问本次连接是否被允许。连接询问报文包括连接请求源EIDa,连接目的EIDb等信息;5)PS1验证连接询问报文Lkq的真实性。PS1向终端B所在管理范围的代理服务器 PS2转发连接询问报文Lkq; 6) PS2查询存储的EIDb的通信状态,连接请求源EIDa是否被拒绝连接。若EIDa被拒绝,则返回连接回复报文Lkp到PS1,转到11);否则,PS2向连接询问报文Lkq添加MACpk,以便XTR2验证,并向B转发连接询问报文Lkq ;7) XTR2验证Lkq中的认证信息MACpk,,向Lkq中添加认证信息MACke供终端验证,并转发连接询问报文Lkq到终端B ;8)终端B验证Lkq中的认证信息MACke ;根据连接请求源EIDa和终端B的网络状态,返回连接回复报文Lkp ;状态应答报文包含B的通信状态,通信状态有效期Ts,是否允许终端A的连接请求等信息;9)XTR2验证连接回复报文LKP,向Lkp添加认证信息MACkp,,并向PS2转发连接回复 艮文Lep ;10) PS2验证Lkp中的认证信息MACkp,,储存终端B的通信状态,通信状态有效期Ts, 是否允许终端A的连接请求等信息;PS2发送连接回复报文Lkp到PS1 ;IDPS1验证Lkp的真实性,添加认证信息MACpk到连接回复报文Lkp并转发给XTR1 ;12) XTR1验证Lkp的认证信息MACPK,确认连接回复报文Lkp的真实性;将终端B的通信状态信息、是否允许终端A的连接请求等信息存储到映射缓存中对应的EIDB-to-RL0CJ^ 射条目中;XTR1根据B是否允许终端A的连接请求等信息判断是否处理并转发数据包Pf ;13) XTR2处理数据包Pf包头并转发到终端B。xTR2向映射缓存中的EIDfto-RLOC1 条目加入终端A的默认通信状态允许EIDb与EIDa的通信,允许xTR2转发B向A发送的数据。优选地,通信状态标志包含终端通信状态、通信状态有效期Ts、允许或拒绝的终端标识EID、过滤时间Tb等其他信息。优选地,允许部分连接状态和拒绝部分连接状态互不排斥,可同时存在,未允许和拒绝的连接可以发起连接请求;允许所有连接是终端默认的连接状态;在允许部分连接状态,被允许的终端可以与其直接建立连接,其他未被允许的终端发起连接时需要询问代理服务器连接是否被允许,代理服务器返回被请求终端对该连接请求的决定;在拒绝部分连接状态,只需要阻止部分指定终端的连接请求,其他未被指定终端的连接可以直接建立,不受影响,拒绝部分连接状态可以拒绝某个终端的连接请求,也可以拒绝某个接入网内所有终端的连接请求;在拒绝所有连接状态,终端只接受所在接入网内其他终端的连接请求,不接受其他接入网的终端连接请求,当终端可以与其他接入网终端通信时,需要修改拒绝所有连接状态为其他通信状态。优选地,代理服务器工作在控制平面,管理接入网中终端的通信状态标志,管理范围是通过xTR与其相连的接入网;所有代理服务器组成一个专用网络,代理服务器之间可以通过隧道或者其他专用链路通信;代理服务器之间可以完成密钥协商与分配,数据交换、 转发与认证等功能;代理服务器与管理范围内xTR可以完成密钥协商与分配,数据交换、转发与认证等功能;MACkp是由xTR和代理服务器协商的密钥生成的消息认证码,可以完成消息从xTR到代理服务器的完整性验证;MACpk是由代理服务器和xTR协商的密钥生成的消息认证码,可以完成消息从代理服务器到xTR的完整性验证。 优选地,终端可以不定期的向代理服务器发送状态通告报文指定其通信状态;为了避免攻击,xTR可以限制通信状态通告报文的速率;代理服务器收集、储存管理范围内终端的通信状态,终端通信状态快过期时,代理服务器主动向终端发送状态查询报文以便更新通信状态;一般情况下通信状态有效期Ts和过滤时间Tb大于映射信息在xTR的映射缓存的有效期TTL,因而通信状态有效期Ts和过滤时间Tb不影响xTR中映射缓存的映射条目数。优选地,代理服务器的逻辑功能可以集成到映射服务器上,只需要在映射服务器中对应EID的映射信息条目中加入通信状态标志Filter就可以表示该终端的通信状态;终端通信状态随对应映射信息存储、传输和更新而不影响映射系统的基本功能。优选地,连接回复报文可以不经过代理服务器组成的专用转发,可以通过XTR2和核心网中间路由器的路由传输到发送端的XTR1, XTR1根据连接回复报文的信息设置对应终端的通信状态标志。优选地,代理服务器的部署方式可以是分布式的,也可以是集中式的,或者其他形式;代理服务器之间、代理服务器与xTR之间、xTR与终端之间的消息真实性验证方法可以使用数字签名,消息认证码MAC等方法;代理服务器的逻辑功能可以集成到映射服务器中, 由映射服务器同时完成通信状态查询应答和映射信息查询应答的双重功能而互不影响。根据本发明,基于身份与位置分离的映射机制,设计了可以与身份与位置分离网络体系的映射系统有效结合的DoS攻击防御方法,赋予接收端主动阻止恶意攻击和主动拒绝通信连接的能力。根据本发明,使得身份与位置分离网络体系的终端不再像传统网络被动的接收数据,被攻击时无能为力。根据本发明,赋予了身份与位置分离网络体系中终端额外的能力,可以使终端参与到攻击防御中,帮助网络服务提供商(Internet Service Provider, ISP)改善网络环境, 终端受到恶意攻击时可以主动发送请求,过滤恶意数据包,避免受到进一步的危害,且不影响终端其他通信连接。根据本发明,终端不能伪造其他接入网内终端地址,在身份与位置分离网络体系中,为终端提供了一种主动的DoS攻击防御方法,使终端有能力允许或拒绝建立通信连接请求;使终端在受到恶意攻击时,有能力阻止恶意攻击数据流而不影响终端其他的数据通信,保障终端网络通信服务的正常运行。根据本发明,基于身份与位置分离网络体系,在身份与位置分离的映射信息中加入额外的控制信息,为终端提供辅助管理其映射信息的能力,使终端受到攻击时可以很容易的阻止恶意信息,并且终端可以根据网络情况或终端的策略,允许或拒绝其他终端的连接请求。根据本发明,内嵌于身份与位置分离网络体系的映射机制的DoS攻击防御方法, 可以与映射系统有效结合,共同完成映射解析和DoS攻击防御的功能。在本发明中,终端可以依据网络状况改变其通信状态,不定期的向代理服务器通告其通信状态,防止自己受到恶意攻击。终端通过设置通信状态标志Filter,可以允许或拒绝某个连接请求;受到攻击时可以准确地阻止从恶意节点来的数据。本发明在身份与位置分离网络体系中授权终端用户管理其连接的能力,及时阻止恶意数据流入网络,保障网络安全环境。


图1是根据现有技术的身份与位置分离网络体系拓扑示意图。图2是根据本发明的报文交换流程图。图3是根据本发明的实例的操作过程示意图。
具体实施例方式近年来,互联网用户数目变得空前庞大。各种业务在互联网上开展,包括移动性、 多家乡、流量工程(Traffic Engineering)等,使全球路由表的规模发生巨大增长和不稳定抖动。互联网架构委员会(Internet Architecture Board, IAB)透露,互联网路由系统面临严重的可扩展性问题。随着IPv4地址的耗尽和IPv6的逐步应用,IPv6巨大的地址空间将可能超过路由表的处理能力,影响互联网的正常运行。因此,IAB委托互联网研究专门工作组(Internet Research Task Force, I RTF) 的路由研究组(Routing Research Group, RRG)设计一个新的网络体系解决路由可扩展性问题。当前研究人员提出了多种网络体系方案解决路由可扩展性问题。传统网络中IP地址同时具有位置属性和身份属性,这种语义过载限制了网络的灵活性。在当前提出的多种网络体系方案中,大多数方案都采用身份与位置分离的思想,设计两种不同类型的地址身份标识(Identifiers)表示身份属性,和位置标识(Locators) 表示位置属性。身份标识用来表示一个终端,位置标识用来表示终端连接到网络中的拓扑位置。身份标识可以完成数据包在接入网中的路由,不随终端位置变化而改变;位置标识完成数据包在核心网的寻路功能,随终端移动而改变。由于身份标识与位置标识分别应用在接入网和核心网,需要一个映射系统将身份标识与位置标识对应起来。采用这种身份与位置分离思想的网络体系方案主要有LISP,GLI-Split,Six/One, Ivip,一体化标识网络等。身份与位置分离网络体系方案的两个地址类型终端标识(Endpoint Identifier, EID):表示终端身份属性的身份标识,不随终端移动而改变;以及路由标识 (Routing Locator, RL0C)表示终端位置属性的位置标识,随终端移动而改变。EID与RLOC的映射关系可以是一对多,多对一,多对多。 身份与位置分离体系方案主要功能模块有映射系统(Mapping System),由映射服务器(Mapping Server, MS)组成,完成身份标识与位置标识的映射存储、查询和应答;以及出/入口隧道路由器(Egress/Ingress Tunnel Router,xTR),连接接入网与核心网,负责终端标识与路由标识映射信息的查询,数据包头操作(包括映射封装(Map & Encap)或地址替换等)和数据包的转发。xTR的映射缓存(Mapping Cache)存储本地接入终端的映射信息和部分通信对端的映射信息。如图1,身份与位置分离网络体系中终端间通信过程如下步骤1 :A发送源和目的地址分别为EIDa和EIDb的数据包,数据包在发送端接入网使用EID寻路转发。
步骤2 数据包到达出/入口路由器XTR115 XTR1保存了 EIDfto-RLOC1的映射信息, XTR1查询映射缓存是否保存对应EIDfto-RLOC2的映射信息,若没有则向映射服务器MS1询问EIDb对应的映射信息。步骤3 映射服务器MS1在映射系统中查询EIDb的映射信息,向XTR1返回对应 EIDfto-RLOC2的映射信息,XTR1将EIDB-to_RL0C2的映射信息保存到映射缓存中。步骤4 =XTR1对数据包进行数据包头操作(映射封装或地址替换等),数据包源和目的地址变为RLOC1和RL0C2。然后XTR1向核心网转发处理后的数据包。步骤5 数据包使用路由地址RLOC寻路到达xTR2。xTR2保存了 EIDB-to_RL0C2的映射信息,XTR2查询映射缓存是否存储EIDfto-RLOC1的映射信息,若没有则询问映射服务器 MS2。步骤6 映射服务器MS2映射系统中查询EIDa的映射信息,向xTR2返回 EIDfto-RLOC1的映射信息,XTR2将其保存在映射缓存中。步骤7 =XTR2进行数据包头逆操作(映射解封装或地址逆替换),数据包源和目的地址变为EIDa和EIDB,然后,XTR2向B转发数据包。身份与位置分离网络体系方案中的接入网与核心网分别采用两种独立的名字空间,终端标识和路由标识。终端标识只在接入网内完成数据包寻路转发,接入网络内拓扑变化只影响接入网络内的路由表信息;路由标识只在核心网内完成数据包寻路转发,核心网拓扑变化只影响核心网络内的路由表信息。映射系统将接入网的终端标识和核心网的路由标识对应起来,它负责收集、存储和更新终端标识与路由标识的映射关系。映射服务器接收映射查询报文,返回映射应答报文。本发明是在身份与位置分离的映射系统基础上,向xTR映射缓存中的映射信息加入额外的通信状态标志,表示终端对连接采取的态度。 xTR映射缓存中映射条目的通信状态标志可以询问代理服务器得到。代理服务器(Proxy Server)通过询问其管理范围内终端,收集、维护终端的通信状态,并应答xTR的通信状态查询。通信状态标志(Filter)通信状态标志可与映射信息对应,是由终端指定的通信状态,表示其对通信连接的态度。通信状态标志包含终端通信状态、通信状态有效期Ts、允许或拒绝的终端标识 EID、过滤时间Tb等其他信息。终端通信状态包括允许所有连接、允许部分连接、拒绝部分连接、拒绝所有连接等。其中,允许部分连接状态和拒绝部分连接状态互不排斥,可同时存在,未允许或拒绝的连接可以发起连接请求。 1)允许所有连接,该状态表示终端当前允许所有请求的连接,是终端默认的连接状态,终端未特别指定其通信状态时默认此状态。2)允许部分连接,该状态是终端指定的一种允许部分终端连接请求的通信状态。 终端的通信状态标志设置为此状态时,被允许的终端可以与其直接建立连接,其他未被允许的终端发起连接时需要询问代理服务器连接是否被允许,代理服务器返回被请求终端对该连接请求的决定。3)拒绝部分连接,该状态是终端指定的一种拒绝部分终端连接请求的通信状态。这种状态只阻止部分指定终 端的连接请求,其他未被指定终端的连接可以直接建立,不受影响。拒绝部分连接状态可以拒绝某个终端的连接请求,也可以拒绝某个接入网内所有终端的连接请求。4)拒绝所有连接,该状态是终端拒绝非所在接入网连接请求的通信状态。终端指定这种状态时,终端只接受所在接入网内其他终端的连接请求,不接受其他接入网的终端连接请求。当终端与其他接入网终端通信时,需要修改拒绝所有连接状态为其他通信状态。本发明中引入的代理服务器(Proxy Server)工作在控制平面,管理接入网中终端的通信状态标志,管理范围是通过xTR与其相连的接入网。所有代理服务器组成一个专用网络,代理服务器之间可以通过隧道或者其他链路
通{曰。代理服务器之间可以完成密钥协商与分配,数据交换、转发与认证等功能;代理服务器与管理范围内xTR可以完成密钥协商与分配,数据交换与认证等功能。MACkp是由xTR和代理服务器协商的密钥生成的消息认证码,可以完成消息从xTR 到代理服务器的完整性验证;MACpk是由代理服务器和xTR协商的密钥生成的消息认证码, 可以完成消息从代理服务器到xTR的完整性验证。如图2所示,本发明的身份与位置分离网络体系下的终端B主动阻止终端A攻击的流程如下步骤1-7 :A向B连续发送数据流Pb,Pb按照身份与位置分离网络体系中终端间通信过程到达B。步骤8 终端B根据数据流Pb判断终端A在发起攻击或其他恶意行为,B需要阻止来自A的数据。B向XTR2发送过滤请求报文Fkeq。过滤请求报文Fkeq中包含过滤目标EIDa, 过滤时间Tb,过滤请求源B的通信状态和通信状态有效期Ts等信息。步骤9 =XTR2验证过滤请求报文Fkeq的真实性,添加认证信息MACkp供代理服务器 PS2验证。XTR2然后向代理服务器PS2转发Fkeq。步骤10 =PS2验证Fkeq中的认证信息MACKP。验证成功后PS2储存终端B的通信状态信息,通信状态有效期Ts,过滤目标地址EIDa,过滤时间Tb等信息。PS2根据过滤请求报文 Feeq中的过滤目标EIDa,向过滤目标EIDa所在管理范围的代理服务器PS1发送过滤执行报文 Fdo,过滤执行报文Fdq包括过滤请求源EIDb,B的通信状态,过滤目标EIDa,过滤时间Tb。步骤11 代理服务器PS1验证Fdq的真实性,添加认证信息MACpk供XTR1验证,转发过滤执行报文Fm到XTR1。步骤12 =XTR1验证Fm中的认证信息MACra。验证成功后XTR1根据过滤源EIDB, 将通信状态标志Fi 1 ter加入到映射缓存的EIDfto-RLOC2条目中(即映射信息变为 EIDB-to-RLOC2-Filter,其中通信状态标志Filter包含B的通信状态,过滤目标EIDa和过滤时间Tb等信息)。XTR1向终端A转发Fm,告之发送到终端B的数据包进入过滤机制,在过滤时间Tb内的向B发送的数据包都将被丢弃。至此终端B完成对终端A恶意攻击数据包的过滤设置。Tb时间内终端A向终端B 发送的数据包到达XTR1时,XTR1查询映射缓存或代理服务器得知终端B要求过滤终端A发送到终端B的数据包,XTR1丢弃源为EIDa目的地为EIDb的数据包。
当终端B通信状态设置为允许部分连接状态时,未被允许的终端需要通过请求, 被允许后才能建立连接。A与B的通信连接建立的过程如下步骤13 终端A向B发送数据包Pf。步骤14 = XTR1查询映射缓存中是否存在EIDfto-RLOC2映射信息,若没有则向映射服务器MS1查询。步骤15 映射服务器MS1向XTR1返回EIDb的映射信息。步骤16 =XTR1向PS1发送连接询问报文Lkq,询问本次连接是否被允许。连接询问报文包括连接请求源EIDa,连接目的EIDb等信息。步骤17 =PS1验证连接询问报文Lkq的真实性。PS1向终端B所在管理范围的代理服务器PS2转发连接询问报文Lkq。步骤18 =PS2查询存储的EIDb的通信状态,连接请求源EIDa是否在拒绝连接列表内。若EIDa仍被拒绝,则返回连接回复报文Lkp到PS1,转到步骤23。否则PS2向连接询问报文Lkq添加MACpk,以便XTR2验证,并向B转发连接询问报文LKQ。步骤19 =XTR2验证Lkq中的认证信息MACpk,,向Lkq中添加认证信息MACke供终端验证,并转发连接询问报文Lkq到终端B。 步骤20 终端B验证Lkq中的认证信息MACke。根据连接请求源EIDa和终端B的网络状态,返回连接回复报文LKP。状态应答报文包含B的通信状态,通信状态有效期Ts,是否允许终端A的连接请求等信息。步骤21 =XTR2验证连接回复报文LKP,向Lkp添加认证信息MACKP,,并向PS2转发连接回复报文LKP。步骤22 =PS2验证Lkp中的认证信息MACKP,,验证正确时储存终端B的通信状态,通信状态有效期Ts,是否允许终端A的连接请求等信息。PS2发送连接回复报文Lkp到PS115步骤23 =PS1验证Lkp的真实性,添加认证信息MACpk到连接回复报文Lkp并转发给 XTR1。步骤24 =XTR1验证Lkp的认证信息MACPK,确认连接回复报文Lkp的真实性。将终端B的通信状态信息、是否允许终端A的连接请求等信息存储到映射缓存中对应的 EIDfto-RLOC2条目中。XTR1根据B是否允许终端A的连接请求等信息判断是否处理并转发数据包Pf。步骤25:xTR2处理数据包Pf包头并转发到终端B。xTR2向映射缓存中的 EIDfto-RLOC1条目加入终端A的默认通信状态允许EIDb与EIDa的通信,允许xTR2转发B 向A发送的数据。终端可以不定期的向代理服务器发送状态通告报文指定其通信状态。为了避免攻击,xTR可以限制通信状态通告报文的速率。代理服务器收集、储存管理范围内终端的通信状态,终端通信状态快到期时,代理服务器主动向终端发送状态查询报文以便更新通信状态。需要指出的是,一般情况下通信状态有效期Ts和过滤时间Tb大于映射信息在xTR的映射缓存的有效期TTL。代理服务器是一个逻辑功能模块,代理服务器的逻辑功能可以集成到映射服务器上,这样只需要在映射服务器中对应EID的映射信息条目中加入通信状态标志Filter就可以表示该终端的通信状态。终端通信状态随对应映射信息存储、传输和更新而不影响映射系统的基本功能,减少消息交互数量,降低通信延迟。 特别是,步骤21-23的连接回复报文可以不经过代理服务器组成的专用网络转发,可以通过XTR2和核心网中间路由器的路由传输到发送端的XTR1, XTR1根据连接回复报文的信息设置对应终端的通信状态标志。特别是,代理服务器的部署方式可以是分布式的,也可以是集中式的,或者其他形式。代理服务器间组成的专用网络可以快速通信,其专用网络的数据处理和传输速度较快, 不是终端间通信延迟的主要原因。特别是,代理服务器之间、代理服务器与XTR之间、xTR与终端之间的控制信息真实性验证方法可以使用数字签名,消息认证码MAC等验证方法。特别是,代理服务器的逻辑功能集成到映射服务器中,安全传输方法与映射系统有效结合,共同完成数据通信状态查询应答和映射信息查询应答的双重功能而互不影响, 且这样可以减少控制消息量,降低开销。根据本发明,终端设置通信状态表示终端通信意愿的方法,包括允许所有连接,允许部分连接,拒绝部分连接,拒绝所有连接等通信状态。根据本发明,引入代理服务器的逻辑功能,使通信状态标志与身份与位置分离网络体系的映射系统结合,将通信状态等安全参数内嵌于映射系统的映射信息中。根据本发明,身份与位置分离网络体系下终端发现受到恶意攻击时,发送过滤请求,要求阻止攻击数据流信息的传输过程,包括步骤8-12。根据本发明,终端设置通信状态为允许部分连接通信状态时,发送端发送连接数据包,完成连接建立的过程,包括步骤13-25。如图3,终端A和终端B分别位于不同的接入网。映射服务器组成的映射系统构成一个专用网络。映射服务器中集成代理服务器逻辑功能。xTR连接接入网与核心网,完成映射查询、数据过滤、数据包头操作(映射封装(Map & Encap)或地址替换)、数据包路由转发等功能。当终端A与终端B的连接已经建立,终端B发现终端A在进行恶意攻击行为,需要对A的数据进行过滤,请求过滤过程如下步骤1 终端B发送过滤请求数据包Fkeq。步骤2 =XTR2验证Fkeq的真实性,添加认证信息MACkp供代理服务器PS2验证,然后转发过滤数据包Fkeq到映射服务器MS2。步骤3 映射服务器MS2验证认证信息MACkp,确认Fkeq的真实性。在映射数据库的 EIDfto-RLOC2映射条目中加入B的通信状态标志Filter,向MS1发送过滤执行数据包FDQ。步骤4 =MS1验证过滤执行数据包Fdq的真实性,添加认证信息MACpk供XTR1验证, 然后转发Fdq到XTR1。步骤5 =XTR1验证认证信息MACpk,确认过滤执行数据包Fm的真实性。XTR1更新映射缓存的对应映射信息终端EIDb的通信状态标志,转发过滤执行数据包Fm到终端A,告之发送到终端B通信的数据包被过滤,过滤时间Tb。至此终端B完成对终端A恶意攻击数据包的过滤,终端A向终端B发送的数据包到达XTR1时,XTR1查询映射缓存得知终端B要求过滤终端A发送到终端B的数据包,XTR1 丢弃源为EIDa目的为EIDb的数据包。
当终端B的通信状态设置为允许部分通信时,终端A主动与终端B的连接建立过程如下步骤6 终端A向B发送数据包。步骤7 =XTR1缓存中没有映射信息,向映射服务器MS1查询EIDb的映射信息和通信状态标志信息,发送包含通信状态查询信息的映射查询报文。步骤8 =MS1验证映射查询报文的真实性,向MS2转发映射查询报文。步骤9 =MS2查询映射数据库,若MS2映射数据库没有B的通信状态标志是拒绝EIDa 与EIDb连接或拒绝信息已过期,则向终端B发送连接查询报文。若有,则在映射应答报文中加入拒绝连接信息,发送到XTR2,转到步骤12。步骤10 =XTR2转发连接查询报文到B,B返回连接回复报文到MS2。步骤11 =MS2向MS1发送包含终端B连接回复信息的映射应答报文。步骤12 =MS1验证映射应答报文的真实性,加入认证信息MACmk以便XTR1验证,转发映射应答报文到XTR1。步骤13 =XTR1验证嫩(^确认映射应答报文的真实性,将映射信息和连接回复信息储存在映射缓存中。终端B若允许连接,则完成数据包头操作,转发数据包。否则丢弃源为 EIDa目的为EIDb的数据包。步骤14 =XTR2完成数据包头操作,转发从A发送来的数据包到B。至此终端A完成与终端B连接建立过程。若终端A不是攻击者,则通信可以一直正常进行。
权利要求
1.一种基于身份与位置分离映射机制的DoS攻击防御方法,其特征在于,在身份与位置分离的映射系统基础上,向xTR映射缓存中的映射信息加入额外的通信状态标志,表示终端通信意愿,包括允许所有连接、允许部分连接、拒绝部分连接、拒绝所有连接;代理服务器使通信状态标志与身份与位置分离网络体系的映射系统结合,将通信状态等安全参数内嵌于映射系统的映射信息中,该xTR映射缓存中映射信息的通信状态标志通过询问代理服务器得到,该代理服务器通过询问其管理范围内的终端,收集、维护终端的通信状态,并应答xTR的通信状态查询;当终端发现受到恶意攻击时,发送过滤请求,要求阻止攻击数据流信息的传输过程;当终端设置通信状态为允许部分连接通信状态时,发送端发送连接数据包,完成连接建立的过程。
2.如权利要求1所述的DoS攻击防御方法,其特征在于,所述要求阻止攻击数据流信息的传输过程,包括下列步骤1)A向B连续发送数据流Pb,Pb按照身份与位置分离网络体系中终端间通信过程到达 B,终端B根据数据流Pb判断终端A在发起攻击或其他恶意行为,B需要阻止来自A的数据; B向XTR2发送过滤请求报文Fkeq ;过滤请求报文Fkeq中包含过滤目标EIDa,过滤时间Tb,过滤请求源B的通信状态和通信状态有效期Ts等信息;2)XTR2验证过滤请求报文Fkeq的真实性,添加认证信息MACkp供代理服务器PS2验证, XTR2然后向代理服务器PS2转发Fkeq ;3)PS2验证Fkeq中的认证信息MACkp,验证成功后PS2储存终端B的通信状态信息,通信状态有效期Ts,过滤目标地址EIDa,过滤时间Tb等信息,PS2根据过滤请求报文Fkeq中的过滤目标EIDa,向过滤目标EIDa所在管理范围的代理服务器PS1发送过滤执行报文FDQ,过滤执行报文Fdq包括过滤请求源EIDb,B的通信状态,过滤目标EIDa,过滤时间Tb信息;4)代理服务器PS1验证Fiw的真实性,添加认证信息MACpk供XTR1验证,转发过滤执行报文Fdo到XTR1 ;5)XTR1验证Fim中的认证信息MACpk,验证成功后XTR1根据过滤源EIDB,将通信状态标志 Filter加入到映射缓存的EIDB-to-RL0C2条目中,即映射信息变为EIDB-to-RLOC2_Filter, 其中通信状态标志Filter包含B的通信状态,过滤目标EIDa和过滤时间Tb等信息;XTR1 向终端A转发Fiw,告之发送到终端B的数据包进入过滤机制,在过滤时间Tb内的向B发送的数据包都将被丢弃;至此终端B完成对终端A恶意攻击数据包的过滤设置,Tb时间内终端A向终端B发送的数据包到达XTR1时,XTR1查询映射缓存或代理服务器得知终端B要求过滤终端A发送到终端B的数据包,XTR1丢弃源为EIDa目的地为EIDb的数据包。
3.如权利要求1所述的DoS攻击防御方法,其特征在于,所述完成连接建立的过程的步骤包括1)终端A向B发送数据包Pf;2)XTR1查询映射缓存中是否存在EIDfto-RLOC2映射信息,若没有则向映射服务器MS1 查询;3)映射服务器MS1向XTR1返回EIDb的映射信息;4)XTR1向PS1发送连接询问报文Lkq,询问本次连接是否被允许,连接询问报文包括连接请求源EIDa,连接目的EIDb等信息;5)PS1验证连接询问报文Lkq的真实性,PS1向终端B所在管理范围的代理服务器PS2转发连接询问报文Lkq;6)PS2查询存储的EIDb的通信状态,连接请求源EIDa是否被拒绝连接,若EIDa被拒绝, 则返回连接回复报文Lkp到PS1,转到11);否则,PS2向连接询问报文Lkq添加MACPK,以便XTR2 验证,并向B转发连接询问报文Lkq ;7)XTR2验证Lkq中的认证信息MACpk,,向Lkq中添加认证信息MACke供终端验证,并转发连接询问报文Lkq到终端B;8)终端B验证Lkq中的认证信息MACke;根据连接请求源EIDa和终端B的网络状态,返回连接回复报文Lkp ;状态应答报文包含B的通信状态,通信状态有效期Ts,是否允许终端A 的连接请求等信息;9)XTR2验证连接回复报文LKP,向Lkp添加认证信息MACKP,,并向PS2转发连接回复报文τ .ijEP ’10)PS2验证Lkp中的认证信息MACKP,,储存终端B的通信状态,通信状态有效期Ts,是否允许终端A的连接请求等信息;PS2发送连接回复报文Lkp到PS1 ;IDPS1验证Lkp的真实性,添加认证信息MACpk到连接回复报文Lkp并转发给XTR1 ;12)XTR1验证Lkp的认证信息MACpk,确认连接回复报文Lkp的真实性;将终端B的通信状态信息、是否允许终端A的连接请求等信息存储到映射缓存中对应的EIDfto-RLOC2映射条目中;XTR1根据B是否允许终端A的连接请求等信息判断是否处理并转发数据包Pf ;13)XTR2处理数据包Pf包头并转发到终端B,XTR2向映射缓存中的EIDfto-RLOC1条目加入终端A的默认通信状态允许EIDb与EIDa的通信,允许xTR2转发B向A发送的数据。
4.如权利要求1所述的DoS攻击防御方法,其特征在于,通信状态标志包含终端通信状态、通信状态有效期Ts、允许或拒绝的终端标识EID、过滤时间Tb等其他信息。
5.如权利要求1所述的DoS攻击防御方法,其特征在于,允许部分连接状态和拒绝部分连接状态互不排斥,可同时存在,未允许或拒绝的连接可以发起连接请求;允许所有连接是终端默认的连接状态;在允许部分连接状态,被允许的终端可以与其直接建立连接,其他未被允许的终端发起连接时需要询问代理服务器连接是否被允许,代理服务器返回被请求终端对该连接请求的决定;在拒绝部分连接状态,只需要阻止部分指定终端的连接请求,其他未被指定终端的连接可以直接建立,不受影响,拒绝部分连接状态可以拒绝某个终端的连接请求,也可以拒绝某个接入网内所有终端的连接请求;在拒绝所有连接状态,终端只接受所在接入网内其他终端的连接请求,不接受其他接入网的终端连接请求,当终端可以与其他接入网终端通信时,需要修改拒绝所有连接状态为其他通信状态。
6.如权利要求1所述的DoS攻击防御方法,其特征在于,代理服务器工作在控制平面,管理接入网中终端的通信状态标志,管理范围是通过xTR与其相连的接入网;所有代理服务器组成一个专用网络,代理服务器之间可以通过隧道或者其他链路通信;代理服务器之间可以完成密钥协商与分配,数据交换、转发与认证等功能; 代理服务器与管理范围内xTR可以完成密钥协商与分配,数据交换与认证等功能; MACkp是由xTR和代理服务器协商的密钥生成的消息认证码,可以完成消息从xTR到代理服务器的完整性验证;MACpk是由代理服务器和xTR协商的密钥生成的消息认证码,可以完成消息从代理服务器到xTR的完整性验证。
7.如权利要求1所述的DoS攻击防御方法,其特征在于,终端可以不定期的向代理服务器发送状态通告报文指定其通信状态; 为了避免攻击,xTR限制通信状态通告报文的速率;代理服务器收集、储存管理范围内终端的通信状态,终端通信状态快到期时,代理服务器主动向终端发送状态查询报文以便更新通信状态;一般情况下通信状态有效期Ts和过滤时间Tb大于映射信息在xTR的映射缓存的有效期 TTL。
8.如权利要求1所述的DoS攻击防御方法,其特征在于,代理服务器的逻辑功能可以集成到映射服务器上,只需要在映射服务器中对应EID的映射信息条目中加入通信状态标志Filter就可以表示该终端的通信状态;终端通信状态随对应映射信息存储、传输和更新而不影响映射系统的基本功能。
9.如权利要求1所述的DoS攻击防御方法,其特征在于,连接回复报文可以不经过代理服务器组成的专用网络转发,可以通过XTR2和核心网中间路由器的路由传输到发送端的 XTR1, XTR1根据连接回复报文的信息设置对应终端的通信状态。
10.如权利要求1所述的DoS攻击防御方法,其特征在于,代理服务器的部署方式可以是分布式的,也可以是集中式的,或者其他形式; 代理服务器之间、代理服务器与xTR之间、xTR与终端之间的控制信息真实性验证方法可以使用数字签名,消息认证码MAC等方法;代理服务器的逻辑功能可以集成到映射服务器中,安全传输方法与映射系统有效结合,共同完成通信状态查询应答和映射信息查询应答的双重功能而互不影响。
全文摘要
一种基于身份与位置分离映射机制的DoS攻击防御方法,在身份与位置分离网络体系的映射系统基础上,向xTR映射缓存中的映射信息加入额外的通信状态标志,代理服务器使通信状态标志与身份与位置分离网络体系的映射系统结合,该xTR映射缓存中映射信息的通信状态标志通过询问代理服务器得到,该代理服务器通过询问其管理范围内的终端,收集、维护终端的通信状态,并应答xTR的通信状态查询;当终端发现受到恶意攻击时,要求阻止攻击数据流的传输;当终端设置通信状态为允许部分连接时,发送端完成连接建立的过程。本发明可以防御DoS攻击,终端受到恶意攻击时可以主动请求防御,避免造成进一步的危害,且不影响终端其他通信连接。
文档编号H04L29/06GK102447700SQ201110404999
公开日2012年5月9日 申请日期2011年12月8日 优先权日2011年12月8日
发明者刘颖, 周华春, 唐建强, 张宏科 申请人:北京交通大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1