一种报文处理方法及系统技术方案

技术编号:8685443 阅读:181 留言:0更新日期:2013-05-09 05:05
本发明专利技术公开了一种报文处理方法,包括:接收侧收到来自发送侧的报文,所述报文至少携带鉴定序列号INum;接收侧将所述报文的INum与滑动窗口的窗头值LNum和/或滑动窗口的窗尾值HNum进行比较,判断是否丢弃所述报文。本发明专利技术还相应地公开了一种报文处理系统。通过本发明专利技术,滑动窗口依据窗头值(最小值)进行滑动,且滑动窗口的大小是不固定的,所以能够有效的抵抗重放攻击,对于延迟报文有很好的处理效果,增强系统安全性及可靠性。

【技术实现步骤摘要】

本专利技术涉及通信网络路由安全技术,尤其涉及一种报文处理方法及系统
技术介绍
重放攻击又称重播攻击,是一种常见的网络攻击方法,攻击者首先截获在通信双方在某次交互过程中由其中一方发送的数据包,并在以后某个合适的时机向该数据包的接收端重新发送截获的数据,如果在所述数据包中没有包含足够的信息使接收端能够判断出该数据包是第一次发送的数据包还是重发的数据包,攻击者就能够冒充通信双方中的一方来欺骗另一方,以达到攻击的目的。重放攻击会不断恶意或欺诈性地重复一个有效的数据传输,重放攻击可以由发起者,也可以由拦截并重发该数据的敌方进行。攻击者利用网络监听或者其他方式盗取认证凭据,之后再把它重新发给认证服务器。通常采用加密和IPSec中重放窗口来抵抗重放攻击。中间系统到中间系统(IS-1S)协议是目前在网络中应用最广泛的内部网关路由协议之一,该路由协议使用三大类报文=Hello报文、链路状态数据包(LSP)和序列号数据包(SNP),Hello报文用来建立和维持IS-1S路由之间的邻接关系;LSP用来承载和泛洪路由器的链路状态信息,并且LSP是路由器进行最短路径优先(SPF)技术的依据;SNP用来进行链路状态数据库的同步,并且用来对LSP进行请求和确认。根据不同的IS-1SPDU类型和特定的网络环境,紧跟在各种类型IS-1SPDU之后的是 TLV(Type/Length/Value)字段,PDU 包头与 TLV 字段构成了一个完整的 IS-1SPDU。TLV字段用来通告各种不同的路由选择信息,其中包括:LSP ID、LSP序列号、LSP校验和、区域关联状态等。当一台运行IS-1S路由器接入网络中后,它产生的第一个LSP的序列号为I。当网络环境发生变化时,路由器将重新生成LSP,并将LSP序列号加I。同样,当到达LSP的刷新间隔时,路由器将刷新此LSP并扩散到网络中,这时LSP序列号也同样加I。可以看出,LSP序列号主要用于使路由器能够识别一个LSP的新旧版本,不能用来抵抗重放攻击。Internet协议安全性(IPSec)是一种开放标准的框架结构,通过使用加密的安全服务以确保在Internet协议(IP)网络上进行保密而安全的通讯。反重播窗口确保每个IP包的唯一性,保证信息万一被截取复制后,不能再被重新利用、重新传输回目的地址。该特性可以防止攻击者截取破译信息后,再用相同的信息包冒取非法访问权。IS-1S使用人工配置密钥,并且,在报文传输过程中,密钥更新困难。IS-1S使用手工密钥配置,IPSec配置参数较多,对于IS-1S这种大型网络如果使用IPSec来增强IS-1S的安全性,IPSec配置困难,需要非常大的人力资源进行管理,所以对于手工配置的IS-1S不易使用IPSec中的抵抗重放窗口来预防重放攻击。并且,由于现有IPSec抗重放攻击滑动窗口是按照窗口最大值进行滑动,对于延迟的数据包有可能被误认为是重播数据包,进而会将有效的数据包丢弃。RFC3567、RFC5304、RFC5310 详细介绍了 IS-1S 使用 Hashed MessageAuthentication Code-Message Digest 5(HMAC-MD5)和Hashed Message AuthenticationCode-Secure Hash Algorithm(HMAC-SHA)密钥算法来增强IS-1S的安全性,但是使用这两种算法不能用来防止重放攻击。
技术实现思路
有鉴于此,本专利技术的主要目的在于提供一种报文处理方法及系统,能够有效抵挡重放攻击,增强系统安全性及可靠性。为达到上述目的,本专利技术的技术方案是这样实现的:一种报文处理方法,包括:接收侧收到来自发送侧的报文,所述报文至少携带鉴定序列号INum ;接收侧将所述报文的INum与滑动窗口的窗头值LNum和/或滑动窗口的窗尾值HNum进行比较,判断是否丢弃所述报文。该方法还包括:发送侧向接收侧发送报文,其中,发送侧发送的第一个报文的INum为手工配置或默认配置,之后,发送新报文时,INum增加I。所述接收侧将所述报文的INum与滑动窗口的窗头值LNum和/或滑动窗口的窗尾值HNum进行比较,判断是否丢弃所述报文为:INum > HNum,且INum与HNum的差值小于预先设置的阈值,则判定所述报文为有效报文;INum > HNum,且INum与HNum的差值不小于预先设置的阈值,则判定所述报文为无效报文,丢弃所述报文;INum < LNum,则判定所述报文是重播报文,丢弃所述报文;INum位于接收窗口内,则查找接收窗口内是否有相应的记录。所述INum > HNum,且INum与HNum的差值小于预先设置的阈值的情况下,该方法还包括:HNum位置有记录,则将HNum的值保存在滑动窗口内,并且将滑动窗口窗尾值HNum设置为INum。所述INum位于接收窗口内的情况下,该方法还包括:INum = LNum,则重新设置窗口的大小或者移动窗口 ;否则,遍历滑动窗口,如果窗口内有与INum相应的记录,则认为所述报文为重播报文,丢弃所述报文,如果窗口内没有与INum相应的记录,则将所述INum插入到窗口中相应位置。所述重新设置窗口的大小或者移动窗口为:INum = LNum,并且窗口中LNum+1的位置没有记录,重设窗头值或者移动窗口一个位置;重设窗头值的情况下,将LNum设置为LNum+1,并且给新的窗头值设置一个生存时间,超过所述生存时间,自动将窗头值置” I ” ;滑动窗口的情况下,将窗口向右滑动一个单位,此时窗头值LNum和窗尾值HNum都增加1,并且给新的窗头值设置一个生存时间,超过所述生存时间,自动将该窗头值置” I”;INum = LNum,并且窗头值后有连续的η记录不为空,重设窗头值或者移动窗口 η+1个位置;重设窗头值的情况下,将LNum设置为LNum+n+1,并且给新的窗头值设置一个生存时间,超过所述生存时间,自动将窗头值置” I ” ;滑动窗口的情况下,将窗口向右滑动η+1个单位,此时窗头值和窗尾值都增加n+1,,并且给新的窗头值设置一个生存时间,超过所述生存时间,则自动将窗头值置” I ”。该方法还包括:如果重新设置窗头值后,窗口大小不小于预先设定的最小窗口值,则只需要重新设置窗头值,不需要滑动窗口 ;如果重新设置窗头值后,窗口大小小于比预先设定的最小窗口值,则需要滑动窗口。所述接收侧接收到的报文还包括报文序列号,接收侧判定不需要丢弃所述报文后,该方法还包括:判断是否需要更新数据库,具体为:接收侧在数据库中搜索对应的记录,若记录不存在,则将其加入数据库中,并广播新数据库内容;若数据库中的报文序列号小于所述报文的报文序列号,就替换为新报文,并广播新数据库内容。一种报文处理系统,该系统包括报文接收模块、判断模块和执行模块;其中,所述报文接收模块,用于接收来自发送侧的报文,所述报文至少携带鉴定序列号INum ;所述判断模块,用于将所述报文的INum与滑动窗口的窗头值LNum和/或滑动窗口的窗尾值HNum进行比较,判断是否丢弃所述报文;所述执行模块,用于根据判断模块的判断结果执行相应的操作。所述判断模块将所述报文的INum与滑动窗口的窗头值LNum和/或滑本文档来自技高网
...

【技术保护点】
一种报文处理方法,其特征在于,该方法包括:接收侧收到来自发送侧的报文,所述报文至少携带鉴定序列号INum;接收侧将所述报文的INum与滑动窗口的窗头值LNum和/或滑动窗口的窗尾值HNum进行比较,判断是否丢弃所述报文。

【技术特征摘要】
1.一种报文处理方法,其特征在于,该方法包括: 接收侧收到来自发送侧的报文,所述报文至少携带鉴定序列号INum ; 接收侧将所述报文的INum与滑动窗口的窗头值LNum和/或滑动窗口的窗尾值HNum进行比较,判断是否丢弃所述报文。2.根据权利要求1所述的方法,其特征在于,该方法还包括:发送侧向接收侧发送报文,其中,发送侧发送的第一个报文的INum为手工配置或默认配置,之后,发送新报文时,INum增加I。3.根据权利要求1所述的方法,其特征在于,所述接收侧将所述报文的INum与滑动窗口的窗头值LNum和/或滑动窗口的窗尾值HNum进行比较,判断是否丢弃所述报文为: INum > HNum,且INum与HNum的差值小于预先设置的阈值,则判定所述报文为有效报文; INum > HNum,且INum与HNum的差值不小于预先设置的阈值,则判定所述报文为无效报文,丢弃所述报文; INum < LNum,则判定所述报文是重播报文,丢弃所述报文; INum位于接收窗口内,则查找接收窗口内是否有相应的记录。4.根据权利要求3所述的方法,其特征在于,所述INum> HNum,且INum与HNum的差值小于预先设置的阈值的情况下,该方法还包括: HNum位置有记录,则将HNum的值保存在滑动窗口内,并且将滑动窗口窗尾值HNum设置为 INum。5.根据权利要求3所述的方法,其特征在于,所述INum位于接收窗口内的情况下,该方法还包括: INum = LNum,则重新设置窗口的大小或者移动窗口 ;否则,遍历滑动窗口,如果窗口内有与INum相应的记录,则认为所述报文为重播报文,丢弃所述报文,如果窗口内没有与INum相应的记录,则将所述INum插入到窗口中相应位置。6.根据权利要求5所述的方法,其特征在于,所述重新设置窗口的大小或者移动窗口为: INum = LNum,并且窗口中LNum+1的位置没有记录,重设窗头值或者移动窗口一个位置;重设窗头值的情况下,将LNum设置为LNum+1,并且给新的窗头值设置一个生存时间,超过所述生存时间,自动将窗头值置” I ” ;滑动窗口的情况下,将窗口向右滑动一个单位,此时窗头值LNum和窗尾值HNum都增加1,并且给新的窗头值设置一个生存时间,超过所述生存时间,自动将该窗头值置” I”; INum = LNum,并且窗头值后有连续的η记录不为空,重设窗头值或者移动窗口 η+1个位置;重设窗头值的情况下,将LNum设置为LNum+n+1,并且给新的窗头值设置一个生存时间,超过所述生存时间,自动将窗头值置” I ” ;滑动窗口的情况下,将窗口向右滑动η+1个单位,此时窗头值和窗尾值都增加η+1,,并且给新的窗头值设置一个生存时间,超过所述生存时间,则自动将窗头值置” I”。7.根据权利要求5或6所述的方法,其特征在于,该方法还包括:如果重新设置窗头值后,窗口大小不小于预先设定的最小窗口值,则只需要重新设置窗头值,不需要滑动窗口 ;如果重新设直窗头值后,窗口大小小于比预先设定的最小窗口值,则需要滑动窗口。8.根据权利要求1所述的方法,其特征在于,所述接收侧接收到的报文还包括报文序列号,接收侧判定不需要丢弃所述报文后,该方法还包括:判断是否需要更新数据库,具体为: 接收侧在数据库中搜索对应的记录,若记录不存在,则将其加入数据库中,并广播新数据库内容; 若数据库中的报文序列号小于所述报文的报文序列号,就替换为新报文,并广播新数据...

【专利技术属性】
技术研发人员:苗忠明梁小萍韦银星
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1