CN108055285B - 一种基于ospf路由协议的入侵防护方法和装置 - Google Patents
一种基于ospf路由协议的入侵防护方法和装置 Download PDFInfo
- Publication number
- CN108055285B CN108055285B CN201810019982.7A CN201810019982A CN108055285B CN 108055285 B CN108055285 B CN 108055285B CN 201810019982 A CN201810019982 A CN 201810019982A CN 108055285 B CN108055285 B CN 108055285B
- Authority
- CN
- China
- Prior art keywords
- router
- message
- lsu
- hash value
- trusted
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/14—Routing performance; Theoretical aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1466—Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种基于OSPF路由协议的入侵防护方法和装置,应用于路由器,所述方法包括:当接收到LSU报文时,获取所述LSU报文的报文信息以及获取发送所述LSU报文的路由器的PCR值;读取携带于所述LSU报文中的签名信息;比较对所述LSU报文的报头信息完成hash运算后得到的报头hash值与发送所述LSU报文的路由器的PCR值一起进行hash运算后得到的验证hash值,与基于发送所述LSU报文的路由器的公钥对所述签名信息进行解密后得到的签名hash值是否相同;如果不相同,丢弃所述LSU报文。采用本申请提供的技术方法,可以缓解路由器的运算工作、降低传输带宽以及提高路由器的效率。
Description
技术领域
本申请涉及网络通信技术领域,特别涉及一种基于OSPF路由协议的入侵防护方法和装置。
背景技术
OSPF(Open Shortest Path First,开放式最短路径优先)是路由协议一种内部网关协议,应用于单一自治系统,用于计算路由。路由器基于OSPF路由协议计算路由的过程分为:发现邻居并维护邻居,传递LSA报文(Link State Advertisement,链路状态广播),基于LSA报文计算路由。其中,LSA报文在传递的过程中携带于LSU(Link State Update,链路状态更新)报文中,同一自治系统内的各路由器的数据库中保存有相同的LSA报文。
在现有技术中,攻击者会在路由器传递LSA报文时拦截LSA报文,通过修改LSA报文头部的内容进而来攻击自治系统,从而影响到网络安全。为了解决这一问题,数字签名技术应运而生。
在采用数字签名技术的OSPF路由协议中,发送LSA报文的路由器需要对LAS报文进行签名,接收到LSA报文的路由器需要对该LSA报文进行验证,只有当该LSA报文通过验证后,才基于该LSA报文对数据库进行更新,其中数据库中保存着自治系统中各路由器生成的LAS报文。
然而,在采用数字签名的OSPF路由协议中,路由器每发送一个LSA报文就需要对该LSA报文进行签名,并且路由器每接收到一个LSA报文就需要对该LSA报文进行验证。路由器对LSA报文进行签名以及对LSA报文进行验证的过程对于路由器的运算要求比较高,传输带宽比较高,因此会对路由器的效率产生较大的影响。
发明内容
有鉴于此,本申请提供一种基于OSPF路由协议的入侵防护方法和装置,应用于路由器,用于缓解路由器的运算工作、降低传输带宽以及提高路由器的效率。
具体地,本申请是通过如下技术方案实现的:
一种基于OSPF路由协议的入侵防护方法,应用于路由器,所述路由器包括可信模块,所述可信模块用于基于可信计算平台进行自己所在的所述路由器进行可信计算得到对应的PCR值,所述路由器与可信第三方连接,所述可信第三方用于保存与其连接的各路由器通过可信计算得到的PCR值,所述方法包括:
当接收到LSU报文时,获取所述LSU报文的报文信息以及获取发送所述LSU报文的路由器的PCR值;
读取携带于所述LSU报文中的签名信息;其中,所述签名信息为发送所述LSU报文的路由器,基于自己的私钥对所述LSU报文的报头信息完成hash运算后得到的报头hash值与自己的PCR值一起进行hash运算后得到的签名hash值进行加密后得到的信息;
比较对所述LSU报文的报头信息完成hash运算后得到的报头hash值与发送所述LSU报文的路由器的PCR值一起进行hash运算后得到的验证hash值,与基于发送所述LSU报文的路由器的公钥对所述签名信息进行解密后得到的签名hash值是否相同;
如果不相同,将所述LSU报文丢弃。
一种基于OSPF路由协议的入侵防护装置,应用于路由器,所述路由器包括可信模块,所述可信模块用于基于可信计算平台进行自己所在的所述路由器进行可信计算得到对应的PCR值,所述路由器与可信第三方连接,所述可信第三方用于保存与其连接的各路由器通过可信计算得到的PCR值,所述装置包括:
获取单元,用于当接收到LSU报文时,获取所述LSU报文的报文信息以及获取发送所述LSU报文的路由器的PCR值;
读取单元,用于读取携带于所述LSU报文中的签名信息;其中,所述签名信息为发送所述LSU报文的路由器,基于自己的私钥对所述LSU报文的报头信息完成hash运算后得到的报头hash值与自己的PCR值一起进行hash运算后得到的签名hash值进行加密后得到的信息;
比较单元,用于比较对所述LSU报文的报头信息完成hash运算后得到的报头hash值与发送所述LSU报文的路由器的PCR值一起进行hash运算后得到的验证hash值,与基于发送所述LSU报文的路由器的公钥对所述签名信息进行解密后得到的签名hash值是否相同;
丢弃单元,用于如果不相同,将所述LSU报文丢弃。
本申请提出的技术方法带来的有益效果:
在本申请中,各路由器中的可信模块通过可信计算平台对自己所在的路由器进行可信计算,从而防止攻击者的路由器(即不可信的路由器)接入网络。同时,由于攻击者通过对LSA报文的链路序号攻击和最大链路年龄攻击时会造成携带LSA报文的LSU报文的报头信息的改变,因此基于LSU报文的报头信息是否发生改变就可以确定携带于该LSU报文中的任一LSA报文是否被修改。一方面,由于LSU报文在传输时可以携带多个LSA报文,因此,在保证通过签名技术预防LSU报文中的LSA报文被攻击的情况下,通过对LSU报文的报头信息以及发送该LSU报文的路由器的PCR值进行签名,可以实现对该LSU报文中的LSA报文进行统一签名的效果,避免对各LSA报文进行分别签名。另一方面,省略了对LSU报文进行解析获取LSA报文的过程,因此,采用本申请提供的技术方法,可以缓解路由器的运算工作、降低传输带宽以及提高路由器的效率。
附图说明
图1为LSA报文的报文头部结构示意图;
图2为最大链路序号攻击的示意图;
图3为采用数字签名技术的OSPF的原理示意图;
图4为基于数字签名技术的LSA报文结构图;
图5为本申请实施例一示出的一种基于OSPF路由协议的入侵防护方法的流程图;
图6为本申请实施例二示出的一种基于OSPF路由协议的入侵防护装置所在路由器的一种硬件结构图;
图7为本申请实施例二示出的一种基于OSPF路由协议的入侵防护装置。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
请参见图1,图1为LSA报文的报文头部结构示意图。
如图1所示,LSA报文的头部包括链路年龄字段、选项字段、链路类型字段、链路状态标识字段、通告路由器字段、链路序号字段、链路校验和字段以及长度字段。
其中,针对上述字段OSPF协议作出如下规定:
1)、链路年龄的值从零开始,最大值为3600。路由器生成LSA报文时,该LSA报文头部中的链路年龄字段中的值为零。路由器将LSA报文在域内防洪时,LSA报文每经过一个路由器,该路由器会将该LSA报文头部中的链路年龄字段的值加一。另外,保存在数据库中的LSA报文每过一秒,报文头部中的链路年龄字段的值加一。当链路年龄字段的值到达最大值时,表示该LSA报文已过期,需要将该LSA报文从数据库中移除。
2)、由链路类型、链路状态标识以及通告路由器作为LSA报文的唯一标识。为了维护链路状态,路由器会周期性发送LSA报文。因此,如果某一链路当前周期的状态与上一周期的状态没有发生改变时,则当前周期发送的标识该链路的LSA报文中的链路类型、链路状态标识以及通告路由器,与上一周期发送的标识该链路的LSA报文中的链路类型、链路状态标识以及通告路由器相同。换言之,由于由链路类型、链路状态标识以及通告路由器作为LSA报文的唯一标识,路由器接收到LSA报文时,本端保存LSA报文的数据库中可能已经保存有相同的LSA报文。
3)、链路序号主要用来发现过时或者重复的LSA报文。链路序号从0X80000001开始,路由器每新产生一个LSA报文,链路序号加1,当链路序号超过最大值0X7FFFFFFF时,将该LSA报文从数据库中删除,然后从头开始发送链路序号0X80000001。
4)、链路校验和是对除了链路年龄字段之外的所有内容(包括OSPF报头和报文内容)进行计算,得到校验和。路由器在发送LSA报文之前会进行校验和的计算。
在实际应用中,路由器在接收到相同的LSA报文时,在数据库中只会保存一份LSA报文。因此,路由器在接收到相同的LSA报文后,需要决定保存哪一份LSA报文。
在现有技术中,当路由器接收到LSA报文时,发现数据库中存在相同的LSA报文,数据库只会保存最新的LSA报文,在这样的情况下,路由器会基于下述规则对数据库中的LSA报文进行更新:
1、拥有较新的链路序号的LSA报文作为最新的LSA报文,如果两个相同的LSA报文中的链路序号相同,则不进行更新;
其中,由于路由器每新产生一个LSA报文,链路序号加1,因此,上述拥有较新的链路序号的LSA报文拥有较大的链路序号。
2、拥有较大的链路校验和的LSA报文作为最新的LSA报文,如果两个报文的链路校验和相同,则不进行更新;
3、链路年龄设置为最大值的LSA报文作为最新的LSA报文,如果两个报文的链路年龄均未设置为最大值,则不进行更新。
其中,在现有技术中,如果数据库中没有保存与接收到的LSA报文相同的LSA报文,则直接将接收到的LSA报文保存至数据库。
根据上述OSPF协议作出的规定,如果路由器之间发送的LSA报文未加密和认证,那么攻击者就可以截取LSA报文,根据需要将LSA报文修改后重新发送出去。很明显,OSPF协议存在着被攻击者攻击的安全隐患。现有技术中,攻击者的攻击方式有:
1、链路序号加一攻击
当攻击者截取到LSA报文后,可以将该LSA报文的链路序号字段中的链路序号加一,并重新计算链路校验和重新发送出去。其中,链路序号加一后重新计算得到的链路校验和变大。当除了该LSA报文的源发送路由器之外的其余路由器接收到攻击者发送的该LSA报文后,由于该LSA报文的链路校验和比数据库中保存的相同LSA报文的链路校验和大,因此,各路由器将更新该LSA报文。
当该LSA报文的源发送路由器接收到攻击者发送的该LSA报文后,根据OSPF的定义,源发送路由器将发送具有正确的链路状态,且具有更大链路序号的LSA报文。各路由器接收到源发送路由器发送的该LSA报文后,由于该LSA报文具有更大的链路校验和,因此会在数据库中更新该LSA报文,从而使得将攻击者发送的该LSA报文删除。攻击者为了维持攻击状态,会再次将该LSA报文中的链路序号加一,重新计算链路校验和后发送出去。除了该LSA报文的源发送路由器之外的其余各路由器又将在数据库中更新该LSA报文,该LSA报文的源发送路由器将继续具有正确的链路状态,且具有更大链路序号的LSA报文,各路由器又将在数据库中更新该LSA报文。攻击者持续地进行链路序号加一攻击,将会造成整个网络的拓扑结构震荡不稳。
2、最大链路年龄攻击
当攻击者截取到LSA报文后,可以将该LSA报文中的链路年龄字段中的链路年龄设置为最大值(3600),然后再将该LSA报文重新发送出去。当除了该LSA报文的源发送路由器以外的其余各路由器接收到攻击者发送的该LSA报文后,由于链路年龄达到了最大值,根据OSPF的规定,会将该LSA报文从数据库中删除。当该LSA报文的源发送路由器接收到攻击者发送的该LSA报文后,根据OSPF的定义,源发送路由器将发送具有正确的链路状态,且具有更大链路序号的LSA报文。
各路由器接收到源发送路由器发送的具有正确的链路状态,且具有更大链路序号的LSA报文后,可以将该LSA报文保存至数据库。攻击者为了维持攻击,将会再次将该LSA报文中的链路年龄字段中的链路年龄设置为最大值,然后再次将该LSA报文发送出去。除了该LSA报文的源发送路由器以外的其余各路由器将会再次将该LSA报文从数据库中删除,源发送路由器将会再次发送的具有正确的链路状态,且具有更大链路序号的LSA报文。攻击者持续地通过将LSA报文中的链路年龄设置为最大值进行攻击,将会造成整个网络的拓扑结构震荡不稳。
3、最大链路序号攻击
当攻击者截取到LSA报文后,可以将该LSA报文中的链路序号字段中的链路序号设置为最大值(0X7FFFFFFF),然后再将该LSA报文重新发送出去。根据OSPF协议的规定,除了该LSA报文的源发送路由器之外的各路由器接收到拥有最大链路序号的LSA报文时,将会把该LSA报文作为最新的LSA报文,并在数据库中更新该LSA报文。
当该LSA报文的源发送路由器接收到攻击者发送的拥有最大链路序号的LSA报文时,根据OSPF的规定,源发送路由器将重新发送具有正确的链路状态,且具有最小的链路序号的LSA报文。当各路由器接收到源发送路由器发送的具有正确的链路状态,且具有最小的链路序号的LSA报文时,由于数据库中保存有链路序号更大的相同LSA报文,因此,不会在数据库中更新该LSA报文,从而导致各路由器中一直保存着错误的LSA报文,直到该LSA报文过期(一个小时)。如图2所示,图2为最大链路序号攻击的示意图。
为了解决攻击者基于OSPF协议进行攻击的问题,现有技术中,采用了数字签名技术。请参见图3,图3为采用数字签名技术的OSPF的原理示意图。
采用数字签名技术的路由器拥有一对公钥和私钥。各路由器可以将各自的公钥进行泛洪,使得各路由器保存所有路由器的公钥。
当路由器生成LSA报文时,该路由器可以从该LSA报文中的头部选择重要的字段生成LSA摘要。该路由器调用自己的私钥对该LSA摘要进行签名,并携带于该LSA报文后将该LSA报文发送出去,如图4所示,图4为基于数字签名技术的LSA报文结构图。
当对端路由器接收到该LSA报文后,可以从该LSA报文中获取携带于该LSA报文的签名信息。然后,对端路由器可以调用发送该LSA报文的路由器的公钥对该签名信息进行验证,得到通过验证后的LSA摘要。同时,对端路由器可以从该LSA报文的头部选择重要的字段生成LSA摘要,其中,发送该LSA报文的路由器选择的字段与接收该LSA报文的路由器选择的字段相同。对端路由器可以判断验证后得到的LSA摘要,与从该LSA报文的头部选择重要的字段生成的LSA摘要是否相同。如果相同,可以确定该LSA报文未被攻击者修改,之后再判断是否在数据库中更新该LSA报文。如果不相同,可以确定该LSA报文被攻击者进行了修改,对端路由器可以之间丢弃该LSA报文。因此,攻击者将无法通过修改链路序号进行攻击。
此外,采用数字签名技术的OSPF协议规定,只有LSA报文的源发送路由器可以将链路年龄字段的链路年龄设置为最大值。因此,攻击者将无法通过将LSA报文的链路年龄字段中的链路年龄设置为最大值进行攻击。
综上所述,采用数字签名技术的OSPF可以防止攻击者通过修改链路序号和将链路年龄设置为最大值进行攻击,然而,路由器每发送一个LSA报文均需要对该LSA报文进行签名,路由器每接收到一个LSA报文均需要对该LSA报文进行验证,因此需要路由器具有较大的运算能力、较大的带宽,这将会导致路由器的转发效率的下降。
实施例一
为了解决现有技术中基于OSPF路由协议的攻击,本申请实施例一提出了一种新的基于OSPF路由协议的入侵防护方法。请参见图5,图5为本申请实施例一示出的一种基于OSPF路由协议的入侵防护方法的流程图,应用于路由器,具体执行以下步骤:
步骤501:当接收到LSU报文时,获取所述LSU报文的报文信息以及获取发送所述LSU报文的路由器的PCR值;
步骤502:读取携带于所述LSU报文中的签名信息;其中,所述签名信息为发送所述LSU报文的路由器,基于自己的私钥对所述LSU报文的报头信息完成hash运算后得到的报头hash值与自己的PCR值一起进行hash运算后得到的签名hash值进行加密后得到的信息;
步骤503:比较对所述LSU报文的报头信息完成hash运算后得到的报头hash值与发送所述LSU报文的路由器的PCR值一起进行hash运算后得到的验证hash值,与基于发送所述LSU报文的路由器的公钥对所述签名信息进行解密后得到的签名hash值是否相同;
步骤504:如果不相同,将所述LSU报文丢弃。
在本实施例中,各路由器包括可信模块,所述可信模块用于基于TCG(TrustedComputing Group,可信计算平台)对自己所在的路由器进行可信计算,得到对应的PCR值。各路由器还均与可信第三方建立了连接。其中,可信第三方用于保存与其连接的各路由器发送的PCR值。此外,上述可信第三方还用于当路由器需要获取任一路由器的PCR值时,提供该路由器PCR值。
其中,上述PCR值用于辨别接入网络中的路由器是否可信。如果接入网络中的路由器为正常的路由器,那么均能通过可信计算平台计算得到对应的PCR值,即可以表明该路由器可信。如果接入网络中的路由器为攻击者的路由器,那么该路由器不会通过可信计算平台计算得到对应的PCR值,即可以表明该路由器不可信。
另外,在本实施例中,各路由器在生成LSU报文后,在发送该LSU报文之前,均采用签名技术对该LSU报文进行签名。采用签名技术的路由器均有一对密钥(包括私钥和公钥),路由器可以将各自的公钥在网络中进行广播,将各自的公钥发送至其余各路由器,使得网络中的任一路由器均保存一份各路由器的公钥。
当路由器完成初始化后,可以基于TCG(Trusted Computing Group,可信计算平台)进行可信计算,得到PCR值,并将所述PCR值发送可信第三方。当可信第三方接收到路由器发送的PCR值后,可以建立并保存该PCR值与发送该PCR值的路由器的ID之间的对应关系。
在本实施例中,当路由器生成LSU报文时,该路由器可以获取该LSU报文的头部信息。基于hash算法对该LSU报文的头部信息进行hash计算,得到头部hash值。此外,该路由器还可以获取自己的PCR值,并对头部hash值和PCR值一起进行hash运算,得到签名hash值。然后,该路由器可以调用私钥对该签名hash值进行加密生成签名信息,并将该签名信息携带于该LSU报文中后将该LSU报文发送出去。
其中,当该LSU报文在传输过程中,被攻击者通过对LSU报文中的LSA报文进行链路序号攻击或者最大链路年龄攻击时,均会导致该LSU报文的报头信息发生改变。因此,接收到LSU报文的路由器可以通过判断报头信息是否发生改变来确定LSU报文是否被攻击。
在本实施例中,当该路由器接收到LSU报文后,可以判断该LSU报文是否为发送该LSU报文的路由器首次发送的LSU报文;如果是,该路由器可以向可信第三方发送获取发送该LSU报文的路由器的PCR值的请求,可信第三方接收到该请求后,可以从PCR值与路由器ID的对应关系中查找与该请求对应的PCR值。如果否,该路由器可以从本地记录的各路由器的PCR值中获取到发送该LSU报文的路由器的PCR值。
一方面,当该路由器接收到可信第三方返回的发送该LSU报文的路由器的PCR值后,可以确定发送该LSU报文的路由器为可信路由器。
另一方面,当该路由器没有接收到可信第三方返回的发送该LSU报文的路由器的PCR值,可以确定发送该LSU报文的路由器为不可信路由器,该路由器可以直接将该LSU报文丢弃。
在本实施例中,当该路由器获取到发送该LSU报文的路由器的PCR值后,该路由器可以获取该LSU报文中的报头信息,并基于hash算法对该报头信息进行hash运算得到报头hash值,然后对该报头hash值和获取到的发送该LSU报文的路由器的PCR值一起进行hash运算,得到验证hash值。
此外,该路由器还可以读取该LSU报文中携带的签名信息,并可以从本地保存的各路由器的公钥中查找到发送该LSU报文的路由器的公钥。基于该公钥,该路由器可以对从该LSU报文中读取到的签名信息进行解密,从而获取到该签名信息中的签名hash值。
由于LSU报文在传输过程可能会被攻击者攻击,因此,路由器接收到LSU报文后,需要对该LSU报文进行辨别,确定是否被攻击者攻击,即确定该LSU报文是否可信。只有在确定该LSU报文可信之后才能基于该LSU报文对数据库中的LSA报文进行更新。其中,LSU报文中携带若干LSA报文,LSA报文在网络中传输时是通过携带于LSU报文中后进行传输的。
在本实施例中,当该路由器获取到验证hash值和签名hash值后,可以通过比较该验证hash值与该签名hash值是否相同来判断该LSU报文是否可信。
当该验证hash值与该签名hash值不相同时,该路由器可以确定该LSU报文在传输过程中被攻击者攻击了,即该LSU报文不可信。在这样的情况下,该路由器可以直接将该LSU报文丢弃。
当该验证hash值与签名hash值相同时,该路由器可以确定该LSU报文在传输过程中没有被攻击者攻击,即该LSU报文可信。在这样的情况下,该路由器可以基于该LSU报文对本地的数据库中的LSA报文进行更新。
其中,通过解析LSU报文后可以从LSU报文中获取LSA报文,上述基于该LSU报文对本地的数据库中的LSA报文进行更新的过程即为根据LSU报文中的LSA报文对本地的数据库中的LSA报文进行更新的过程。数据库中的LSA报文的具体更新过程请参见现有的相关技术,在此不再进行赘述。
综上所述,在本申请中,各路由器中的可信模块通过可信计算平台对自己所在的路由器进行可信计算,从而防止攻击者的路由器(即不可信的路由器)接入网络。同时,由于攻击者通过对LSA报文的链路序号攻击和最大链路年龄攻击时会造成携带LSA报文的LSU报文的报头信息的改变,因此基于LSU报文的报头信息是否发生改变就可以确定携带于该LSU报文中的任一LSA报文是否被修改。一方面,由于LSU报文在传输时可以携带多个LSA报文,因此,在保证通过签名技术预防LSU报文中的LSA报文被攻击的情况下,通过对LSU报文的报头信息以及发送该LSU报文的路由器的PCR值进行签名,可以实现对该LSU报文中的LSA报文进行统一签名的效果,避免对各LSA报文进行分别签名。另一方面,省略了对LSU报文进行解析获取LSA报文的过程,因此,采用本申请提供的技术方法,可以缓解路由器的运算工作、降低传输带宽以及提高路由器的效率。
实施例二
与前述一种基于OSPF路由协议的入侵防护方法的实施例一相对应,本申请还提供了一种基于OSPF路由协议的入侵防护装置的实施例二。
本申请一种基于OSPF路由协议的入侵防护装置的实施例可以应用在路由器上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在路由器的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图6所示,为本申请一种基于OSPF路由协议的入侵防护装置所在路由器的一种硬件结构图,除了图6所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的路由器通常根据该基于OSPF路由协议的入侵防护的实际功能,还可以包括其他硬件,对此不再赘述。
请参见图7,图7为本申请实施例二示出的一种基于OSPF路由协议的入侵防护装置,应用于路由器,所述路由器包括可信模块,所述可信模块用于基于可信计算平台进行自己所在的所述路由器进行可信计算得到对应的PCR值,所述路由器与可信第三方连接,所述可信第三方用于保存与其连接的各路由器通过可信计算得到的PCR值,所述装置包括:获取单元710、读取单元720、比较单元730、丢弃单元740。
所述获取单元710,用于当接收到LSU报文时,获取所述LSU报文的报文信息以及获取发送所述LSU报文的路由器的PCR值;
所述读取单元720,用于读取携带于所述LSU报文中的签名信息;其中,所述签名信息为发送所述LSU报文的路由器,基于自己的私钥对所述LSU报文的报头信息完成hash运算后得到的报头hash值与自己的PCR值一起进行hash运算后得到的签名hash值进行加密后得到的信息;
所述比较单元730,用于比较对所述LSU报文的报头信息完成hash运算后得到的报头hash值与发送所述LSU报文的路由器的PCR值一起进行hash运算后得到的验证hash值,与基于发送所述LSU报文的路由器的公钥对所述签名信息进行解密后得到的签名hash值是否相同;
所述丢弃单元740,用于如果不相同,将所述LSU报文丢弃。
其中,当所述获取单元710用于获取发送所述LSU报文的路由器的PCR值时,所述获取单元710具体用于:
判断接收到的所述LSU报文是否为发送所述LSU报文的路由器首次发送的LSU报文;
如果是,从所述可信第三方获取发送所述LSU报文的路由器的PCR值;
如果否,从本地记录的若干路由器的PCR值中获取发送所述LSU报文的路由器的PCR值。
另外,所述获取单元710,还用于当生成LSU报文时,获取所述LSU报文的报头信息。
所述丢弃单元740,还用于如果未从所述可信第三方获取到发送所述LSU报文的路由器的PCR值,丢弃所述LSU报文。
在本实施例中,所述装置还包括:
更新单元,用于当所述验证hash值与所述签名hash值相同时,基于所述LSU报文对本地的数据库中的LSA报文进行更新;其中,所述LSU报文中携带了LSA报文。
报头hash值运算单元,用于对所述LSU报文的报头信息进行hash运算得到报头hash值。
签名hash值运算单元,用于对所述报头hash值与自己的PCR值一起进行hash运算,得到签名hash值。
加密单元,用于基于自己的私钥对所述签名hash值进行加密得到签名信息,并将所述签名信息携带于所述LSU报文后将发送所述LSU报文。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (6)
1.一种基于OSPF路由协议的入侵防护方法,应用于路由器,其特征在于,所述路由器包括可信模块,所述可信模块用于基于可信计算平台进行自己所在的所述路由器进行可信计算得到对应的PCR值,所述路由器与可信第三方连接,所述可信第三方用于保存与其连接的各路由器通过可信计算得到的PCR值,所述方法包括:
当接收到LSU报文时,获取所述LSU报文的报文信息以及获取发送所述LSU报文的路由器的PCR值;在接入网络且作为攻击者的路由器无法进行可信计算得到PCR值的情况下,如果未从所述可信第三方获取到发送所述LSU报文的路由器的PCR值,丢弃所述LSU报文;
如果可以从所述可信第三方获取到发送所述LSU报文的路由器的PCR值,读取携带于所述LSU报文中的签名信息;其中,所述签名信息为发送所述LSU报文的路由器,基于自己的私钥对所述LSU报文的报头信息完成hash运算后得到的报头hash值与自己的PCR值一起进行hash运算后得到的签名hash值进行加密后得到的信息;
比较对所述LSU报文的报头信息完成hash运算后得到的报头hash值与发送所述LSU报文的路由器的PCR值一起进行hash运算后得到的验证hash值,与基于发送所述LSU报文的路由器的公钥对所述签名信息进行解密后得到的签名hash值是否相同;
如果不相同,将所述LSU报文丢弃;
当所述验证hash值与所述签名hash值相同时,基于所述LSU报文对本地的数据库中的LSA报文进行更新,以便于防范作为攻击者的路由器攻击本地的数据库中的LSA报文;其中,所述LSU报文中携带了LSA报文。
2.根据权利要求1所述的方法,其特征在于,所述获取发送所述LSU报文的路由器的PCR值,包括:
判断接收到的所述LSU报文是否为发送所述LSU报文的路由器首次发送的LSU报文;
如果是,从所述可信第三方获取发送所述LSU报文的路由器的PCR值;
如果否,从本地记录的若干路由器的PCR值中获取发送所述LSU报文的路由器的PCR值。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当生成LSU报文时,获取所述LSU报文的报头信息;
对所述LSU报文的报头信息进行hash运算得到报头hash值;
对所述报头hash值与自己的PCR值一起进行hash运算,得到签名hash值;
基于自己的私钥对所述签名hash值进行加密得到签名信息,并将所述签名信息携带于所述LSU报文后将发送所述LSU报文。
4.一种基于OSPF路由协议的入侵防护装置,应用于路由器,其特征在于,所述路由器包括可信模块,所述可信模块用于基于可信计算平台进行自己所在的所述路由器进行可信计算得到对应的PCR值,所述路由器与可信第三方连接,所述可信第三方用于保存与其连接的各路由器通过可信计算得到的PCR值,所述装置包括:
获取单元,用于当接收到LSU报文时,获取所述LSU报文的报文信息以及获取发送所述LSU报文的路由器的PCR值;在接入网络且作为攻击者的路由器无法进行可信计算得到PCR值的情况下,如果未从所述可信第三方获取到发送所述LSU报文的路由器的PCR值,丢弃所述LSU报文;
读取单元,用于如果可以从所述可信第三方获取到发送所述LSU报文的路由器的PCR值,读取携带于所述LSU报文中的签名信息;其中,所述签名信息为发送所述LSU报文的路由器,基于自己的私钥对所述LSU报文的报头信息完成hash运算后得到的报头hash值与自己的PCR值一起进行hash运算后得到的签名hash值进行加密后得到的信息;
比较单元,用于比较对所述LSU报文的报头信息完成hash运算后得到的报头hash值与发送所述LSU报文的路由器的PCR值一起进行hash运算后得到的验证hash值,与基于发送所述LSU报文的路由器的公钥对所述签名信息进行解密后得到的签名hash值是否相同;
丢弃单元,用于如果不相同,将所述LSU报文丢弃;当所述验证hash值与所述签名hash值相同时,基于所述LSU报文对本地的数据库中的LSA报文进行更新,以便于防范作为攻击者的路由器攻击本地的数据库中的LSA报文;其中,所述LSU报文中携带了LSA报文。
5.根据权利要求4所述的装置,其特征在于,当所述获取单元用于获取发送所述LSU报文的路由器的PCR值时,所述获取单元具体用于:
判断接收到的所述LSU报文是否为发送所述LSU报文的路由器首次发送的LSU报文;
如果是,从所述可信第三方获取发送所述LSU报文的路由器的PCR值;
如果否,从本地记录的若干路由器的PCR值中获取发送所述LSU报文的路由器的PCR值。
6.根据权利要求4所述的装置,其特征在于,所述装置还包括:
所述获取单元,还用于当生成LSU报文时,获取所述LSU报文的报头信息;
报头hash值运算单元,用于对所述LSU报文的报头信息进行hash运算得到报头hash值;
签名hash值运算单元,用于对所述报头hash值与自己的PCR值一起进行hash运算,得到签名hash值;
加密单元,用于基于自己的私钥对所述签名hash值进行加密得到签名信息,并将所述签名信息携带于所述LSU报文后将发送所述LSU报文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810019982.7A CN108055285B (zh) | 2018-01-09 | 2018-01-09 | 一种基于ospf路由协议的入侵防护方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810019982.7A CN108055285B (zh) | 2018-01-09 | 2018-01-09 | 一种基于ospf路由协议的入侵防护方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108055285A CN108055285A (zh) | 2018-05-18 |
CN108055285B true CN108055285B (zh) | 2020-12-04 |
Family
ID=62126972
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810019982.7A Active CN108055285B (zh) | 2018-01-09 | 2018-01-09 | 一种基于ospf路由协议的入侵防护方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108055285B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108881315B (zh) * | 2018-08-29 | 2021-04-27 | 南京航空航天大学 | 一种基于nfv的检测和恢复双lsa攻击ospf协议的方法及系统 |
CN114978519A (zh) * | 2021-02-22 | 2022-08-30 | 中国移动通信有限公司研究院 | 报文发送方法、签名信息的生成方法及设备 |
CN114157419B (zh) * | 2021-11-29 | 2023-08-08 | 军事科学院系统工程研究院网络信息研究所 | 一种基于ospf的安全路由协议方法和系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104486082A (zh) * | 2014-12-15 | 2015-04-01 | 中电长城网际系统应用有限公司 | 认证方法和路由器 |
CN105049354A (zh) * | 2015-08-14 | 2015-11-11 | 电子科技大学 | 一种基于ospf的可信路由方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9253075B2 (en) * | 2012-12-19 | 2016-02-02 | Palo Alto Research Center Incorporated | Dynamic routing protocols using database synchronization |
-
2018
- 2018-01-09 CN CN201810019982.7A patent/CN108055285B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104486082A (zh) * | 2014-12-15 | 2015-04-01 | 中电长城网际系统应用有限公司 | 认证方法和路由器 |
CN105049354A (zh) * | 2015-08-14 | 2015-11-11 | 电子科技大学 | 一种基于ospf的可信路由方法 |
Non-Patent Citations (1)
Title |
---|
《基于可信计算技术的OSPF路由协议研究》;李兆斌等;《计算机工程与设计》;20110916;第32卷(第9期);第2947页左栏第3-8段、第2948页左栏第1段,图2、图3 * |
Also Published As
Publication number | Publication date |
---|---|
CN108055285A (zh) | 2018-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111386674B (zh) | 通信系统中的终端身份保护方法 | |
CN111585890B (zh) | 基于SRv6的网络路径验证方法及系统 | |
Sultana et al. | A lightweight secure scheme for detecting provenance forgery and packet dropattacks in wireless sensor networks | |
Legner et al. | {EPIC}: every packet is checked in the data plane of a {Path-Aware} Internet | |
US8843751B2 (en) | IP address delegation | |
KR20130031660A (ko) | 컨텐츠 이름 기반의 네트워크 장치 및 컨텐츠 이름 생성 방법, 그리고 인증 방법 | |
CN108055285B (zh) | 一种基于ospf路由协议的入侵防护方法和装置 | |
CN114389835B (zh) | 一种IPv6选项显式源地址加密安全验证网关及验证方法 | |
CN109698791B (zh) | 一种基于动态路径的匿名接入方法 | |
US7139679B1 (en) | Method and apparatus for cryptographic protection from denial of service attacks | |
Altisen et al. | SR3: Secure resilient reputation-based routing | |
CN112839062B (zh) | 夹杂鉴权信号的端口隐藏方法和装置、设备 | |
Wong et al. | Network infrastructure security | |
US8364949B1 (en) | Authentication for TCP-based routing and management protocols | |
CN115664740B (zh) | 基于可编程数据平面的数据包转发攻击防御方法及系统 | |
WO2022174739A1 (zh) | 报文发送方法、签名信息的生成方法及设备 | |
CN104486082A (zh) | 认证方法和路由器 | |
Altisen et al. | SR3: secure resilient reputation-based routing | |
US20230421360A1 (en) | Automatic generation and update of connectivity association keys for media access control security protocol | |
JP5889177B2 (ja) | データベースシステム及びその更新方法 | |
Ming-Hao | The security analysis and attacks detection of OSPF routing protocol | |
Yang | A Secure and Accountable Mesh Routing Algorithm | |
Liu et al. | 3S: three‐signature path authentication for BGP security | |
Ham | BGP Route Attestation: Design and Observation Using IPV6 Headers | |
CN112187865B (zh) | 开放式最短路径优先报文处理方法及拟态设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |