CN110417758B - 基于证书请求的安全邻居发现运行模式探测方法 - Google Patents
基于证书请求的安全邻居发现运行模式探测方法 Download PDFInfo
- Publication number
- CN110417758B CN110417758B CN201910636862.6A CN201910636862A CN110417758B CN 110417758 B CN110417758 B CN 110417758B CN 201910636862 A CN201910636862 A CN 201910636862A CN 110417758 B CN110417758 B CN 110417758B
- Authority
- CN
- China
- Prior art keywords
- certificate
- router
- send
- subnet
- operation mode
- 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
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- 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/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明属于通信技术领域,涉及一种基于证书请求的安全邻居发现运行模式探测方法,包含:探测节点发起授权委托发现ADD过程,请求路由器证书链;等待应答报文并分析路由器相应,判断认证中心是否为目标子网安全邻居发现SEND机制提供证书签发服务;提取路由器证书链,针对认证中心提供签发服务的情形和认证中心不提供证书签发服务的情形,通过目标子网内所含节点集探明目标子网SEND运行模式,构建与目标IPv6子网路由器身份认证关联的信息表。本发明克服IPv6路由器认证过程独立于ND机制给SEND运行探测带来的困难,可有效探明目标IPv6子网SEND机制的运行模式种类及认证中心所依赖的信任模型类型,有利提升IPv6网络SEND环境安全,保证网络通信安全性能,具有较强应用前景。
Description
技术领域
本发明属于通信技术领域,特别涉及一种基于证书请求的安全邻居发现运行模式探测方法。
背景技术
IPv6子网ND(Neighbor Discovery,邻居发现)安全机制SEND(Secure NeighborDiscovery,安全邻居发现)增强了IPv6子网邻居发现、路由器发现和重定向过程的安全性,越来越多的IPv6节点部署了SEND机制。然而,SEND机制本身也存在一定的安全隐患,也会遭受一些攻击,如CGA认证缺陷、时间-内存权衡攻击(time-memory trade-off attack)和路由器授权攻击等。目前,SEND协议方面的研究集中在协议分析与优化、安全性提高、应用扩展、地址生成提速、协议实现、轻量化等方面。扫描与信息收集攻击是下一代互联网仍需面对的安全威胁。然而,IPv6相关探测技术大都局限于拓扑发现、操作系统探测、蠕虫传播模型、隧道发现、路径最大传输单元(PMTU)探测等方面,SEND相关信息探测技术的研究尚未有效开展。
发明内容
为此,本发明提供一种基于证书请求的安全邻居发现运行模式探测方法,针对SEND过渡环境通过探测SEND运行模式,以保证SEND环境安全性。
按照本发明所提供的设计方案,IPv6路由器的认证过程独立于ND机制给SEND运行模式探测带来挑战,通过分析认证中心与SEND机制之间的相互关系,提供一种基于证书请求的安全邻居发现运行模式探测方法,包含:探测节点发起授权委托发现ADD过程,请求路由器证书链;等待应答报文并分析路由器相应,判断认证中心是否为目标子网安全邻居发现SEND机制提供证书签发服务;提取路由器证书链,针对认证中心提供签发服务的情形和认证中心不提供证书签发服务的情形,通过目标子网内所含节点集探明目标子网SEND运行模式,并构建与目标IPv6子网路由器身份认证关联的信息表,以实现SEND运行模式探测。
本发明的有益效果:
本发明克服IPv6路由器的认证过程独立于ND机制给SEND运行探测带来的困难,采用基于证书请求的方法发起授权委托发现,以请求路由器的认证路径,进而实施目标IPv6子网SEND机制运行模式探测,可有效探明目标IPv6子网SEND机制的运行模式种类及认证中心所依赖的信任模型类型,有利于提升IPv6网络SEND环境安全性能,保证网络通信安全,具有较强的应用前景。
附图说明:
图1为实施例中SEND运行模式探测流程图一;
图2为实施例中第Ⅰ类SEND运行模式示意;
图3为实施例中基于单认证中心的第Ⅱ类SEND运行模式示意;
图4为实施例中基于层级认证中心的第Ⅱ类SEND运行模式示意;
图5为实施例中基于分布式认证中心的第Ⅱ类SNED运行模式示意;
图6为实施例中SEND报文相关参数执行验证结果示意;
图7为实施例中SEND运行模式探测原理图;
图8为实施例中SOMD-CR方法实施的整体流程图;
图9为实施例中证书IP地址扩展字段合法性验证过程示意;
图10为实施例中IPv6子网ND安全机制探测实验拓扑结构示意;
图11为实施例中探测节发送CPS报文请求路由器证书时路由器应答的公告CPA报文示意;
图12为实施例中探测节点对CPA报文中证书链进行验证过程及探测结果示意;
图13为实施例中证书链合法性验证操作占用探测节点CPU资源示意。
具体实施方式:
为使本发明的目的、技术方案和优点更加清楚、明白,下面结合附图和技术方案对本发明作进一步详细的说明。
针对IPv6路由器的认证过程独立于ND机制给SEND运行探测带来的困难等的情形,本发明实施例,参见图1所示,提供一种基于证书请求的安全邻居发现运行模式探测方法,包含如下内容:
S101)探测节点发起授权委托发现ADD过程,请求路由器证书链;
S102)等待应答报文并分析路由器相应,判断认证中心是否为目标子网安全邻居发现SEND机制提供证书签发服务;
S103)提取路由器证书链,针对认证中心提供签发服务的情形和认证中心不提供证书签发服务的情形,通过目标子网内所含节点集探明目标子网SEND运行模式,并构建与目标IPv6子网路由器身份认证关联的信息表。
对SEND运行模式探测内容及探测原理进行分析,采用基于证书请求的方法发起授权委托发现过程,获悉认证中心对SEND机制运行提供服务支持的情况,通过请求并验证路由器的证书链,探明目标子网内各节点集的SEND运行模式种类及认证中心所依赖的信任模型类型,能够有效避免网络安全威胁,提升网络安全性能,为IPv6探测技术发展具有重要指导意义。
为对SEND运行模式进行探测,本发明实施例中,通过分析SEND的部署方式与运行特征,对SEND部署可能存在的运行模式进行分析和归类。SEND机制包含非对称密钥技术和基于证书的认证技术两部分内容,根据子网对ND不同的部署策略与安全需求,将其分为四类主要的运行模式,下面分别分析这些运行模式的运作机理及特征。
第Ⅰ类:应用非对称密钥技术却无认证中心支持,在没有认证中心(CertificateAuthority,CA)支持子网ND通信的情况下,子网内IPv6节点仍可借助非对称密钥技术提供的功能对ND报文实施保护。将其称为第Ⅰ类SEND运行模式,如图2所示。该运行模式的运作机理是:使用RSA非对称密钥实现通信方的源认证和SEND报文的完整性保护,使用时间戳选项和Nonce选项对抗重放攻击。该模式的运行特征是:子网内节点均使用非对称密钥生成自己的加密生成地址(Cryptographically Generated Address,CGA),并使用RSA密钥对报文进行签名,即子网中的报文携带有CGA选项、RSA签名选项等。然而,没有认证中心为子网的SEND机制提供证书签发服务,主机节点无法完成路由器身份认证,即不存在授权委托发现(Authorization Delegation Discovery,ADD)过程。将ND机制生成的报文分别记为NS(Neighbor Solicitation,邻居请求)、NA(Neighbor Advertisement,邻居公告)、RS(Router Solicitation,路由器请求)和RA(Router Advertisement,路由器公告),而将由SEND机制生成的对应报文分别记为SEND-NS、SEND-NA、SEND-RS和SEND-RA。SEND-NS[SLLA|CGA|Timestamp|Nonce|RSA],则表示携带有源链路层地址(SLLA)选项、CGA选项、时间戳(Timestamp)选项、Nonce选项和RSA签名选项的NS报文;SEND-NA中的TLLA指目标链路层地址选项。其他报文的标记方法,含义同上所述。而CPS[Trust Anchor]表示携带信任锚选项的CPS(Certification Path Solicitation,认证路径请求)报文,CPA[CertificationPath]表示路由器发送携带证书链的CPA(Certification Path Advertisement,认证路径公告)报文。
第II类:应用非对称密钥技术且有认证中心支持,IPv6子网在实现第Ⅰ类SEND运行模式的基础上,还可利用证书认证服务实现主机节点对路由器身份的合法性认证,可称之为第Ⅱ类SEND运行模式。在该运行模式中,SEND须借助于公钥基础设施(Public KeyInfrastructure,PKI)为子网提供可靠的证书管理服务。PKI通常借助CA把节点的公开密钥封装为数字证书,并对证书进行签名。此外,PKI还需信任模型来建立信任关系及管理证书,其常用的信任模型主要有:1)单信任模型。该结构简单、容易实现证书管理,模型中的所有节点都信任唯一的CA,且该CA的公开密钥是子网中唯一的信任锚,每个认证路径都起始于该信任锚。2)严格层级结构模型。其具备单向性的证书路径,规模易扩展,可生成从根CA到路由器简单明确的、高可信的认证路径。3)分布式信任结构模型。由于存在多个信任锚,该模型灵活性好,但认证路径发现(Certification Path Discovery,CPD)困难,且从路由器到信任锚之间的认证路径不确定,还存在证书环路的可能。
第Ⅱ类SEND运行模式在这三种不同信任模型的支持下,又可分为三种不同的类型:
基于单认证中心的第Ⅱ类SEND运行模式,如图3所示,单认证模型中唯一的CA(如Cisco认证服务器)为整个子网中的所有节点签发和管理证书。子网中的所有节点都信任该CA,包含于可信实体证书中的公开密钥成为PKI体系中所有节点的唯一信任锚,路由器的认证路径起始于该CA的公开密钥。该运行模式仍使用SEND选项保护ND报文的安全。此外,当主机节点接收到路由器发送的SEND-RA报文后,将发起授权委托发现过程,且路由器应答的CPA报文中仅含有一个证书。
基于层级认证中心的第Ⅱ类SEND运行模式,如图4所示,该SEND运行模式建立在主从关系的认证结构之上。图4中的CA通常称为根CA(Root CA),它充当信任的根或信任锚,是认证的起点,所有的节点都信任该CA。在根CA的下面是多层中间CA,它们从属于根CA也称为子CA。在该运行模式中,各认证中心必须按照严格的层级结构完成证书的签名与颁发,具体实施过程如下:路由器R从认证中心获得自己的认证(获得签发证书),认证中心也从它的上一级认证中心获得自己的认证(获得签发证书),依次类推直到被主机节点信任的根CA签发证书为止。在接收到路由器发送的RA报文之后,主机节点发起授权委托发现过程,执行对路由器身份的合法性认证,即对路由器发送的证书链进行验证。在证书验证时,沿着层级关系的树形结构往上找,可构成一条到信任锚的证书链。然而,证书签名的验证过程则沿相反的方向,从根证书开始并信任根CA的公开密钥,依次往下验证每一个证书中的签名,直到路由器证书的签名。该模式中,路由器发送的CPA应答报文中所携带的证书不止一个。
基于分布式认证中心的第Ⅱ类SEND运行模式,该运行模式的运作原理与基于层级认证中心的SEND运行模式类似,然而该模式中信任锚的选取不是唯一的。如图5中所示,CA1和CA2都是认证体系中的根CA,其公开密钥都可作为信任锚,用作认证的起点。各个CA间可相互认证,因此该模式最大的特点是路由器可有到达多个信任锚的多条认证路径。另外,该模式也应部署证书撤销列表服务器,但为使图示简洁而未在图中展现出来。另外,需要注意的一个问题是在上述三种SEND运行模式中,路由器发送的CPA报文中并不携带根CA的证书,而是从被信任锚签名的证书开始,直到路由器自身的证书为止。
第III类:未应用非对称密钥技术却有认证中心支持,在SEND机制中,授权委托发现过程独立于ND机制,即CPS和CPA报文独立于其他的ND报文而存在或使用。因此,该运行模式中的主机节点不使用非对称密钥提供加密与签名服务,属于非SEND节点,仅应用授权委托发现功能实现对路由器的身份认证,具体过程见图6所示。该模式虽未应用CGA地址生成与RSA签名技术,但实现了授权委托发现功能,本文仍将其归类为SEND机制运行的一种模式,并将其称为第Ⅲ类SEND运行模式。
第IV类:未应用非对称密钥技术也无认证中心支持,该运行模式是常规的ND机制实现,在该模式中子网不使用SEND机制对ND通信实施保护,即子网内节点不使用CGA机制、不使用签名技术,也不执行授权委托发现操作。本发明实施例中,仍将其作为一种不安全的SEND运行模式实现,并称之为第Ⅳ类SEND运行模式或ND运行模式。
邻居发现ND自身内建的特性及SEND部署与运行特征会对探测带来了诸多挑战,下面将阐述SEND运行模式探测过程中遇到的难点问题:
1.影响SEND探测实施层次,难以从子网外实施探测。经理论分析和实验验证,从目标子网外部对SEND机制实施探测很困难,且几乎是不可能的。理由如下:
1)ND内建的保护机制对探测的影响。IPv6子网ND机制要求RS、RA和NS报文的源IPv6地址必须是链路本地地址或未指定地址,且所有ND报文的跳限制(Hop Limit)字段的值必须是255。源地址范围验证和跳限制字段赋值最大化策略,都将攻击的范围局限在子网内部。网关丢弃来自子网外部攻击者发送的伪造ND报文,因为这类ND报文的跳限制值不再是255。SEND作为ND机制的扩展,同时也继承了这些安全特性。
2)SNED部署与运行特征对探测的影响。SEND是为解决IPv6链路层的安全威胁所开发的弥补性方案,为子网内的通信控制提供安全保障,使得从目标子网外部发起的探测行为无法与SNED机制进行交互,从而也无法完成探测。
为对目标IPv6子网SEND运行模式实施探测,从物理位置看,本发明实施例中可立足于目标子网内部的探测节点实施SEND探测;从逻辑层次看,探测节点结合链路层与网络层参数信息构造恰当的探测报文执行探测。
2.路由器认证过程独立于ND机制,给SEND运行模式探测带来挑战。路由器认证过程(即ADD过程)独立于ND机制而存在,即CPS和CPA报文独立于其他ND报文而使用。因此,可能存在以下几种情形:子网内的ND节点集可能应用ADD对路由器执行身份认证(第Ⅲ类模式),也可能未应用任何安全措施(第Ⅳ类模式);SEND节点集应用ADD对路由器执行身份认证(第Ⅱ类模式),也可能未启用ADD(第Ⅰ类模式)。从CGA参数类型来看,目标IPv6子网内的节点集可能存在的情形有三种:ND节点集、ND节点集与SEND节点集共存、SEND节点集。尤其是对于过渡场景而言,可能有多种模式共存,给SEND运行模式探测带来了挑战。此外,SEND机制中路由器认证依赖于证书的签发与验证,且SEND机制要求使用具有IP地址扩展字段的X.509v3格式的证书。许多工具都可以用来授予证书,例如Linux下的OpenSSL(Open SecureSockets Layer)就可根据申请节点的公开密钥授予其对应的证书。然而,目前只有很少的服务器支持签发包含有IP地址扩展的证书,已知的有Cisco IOS的证书服务器。因此,如何判断认证中心为目标子网的SEND机制提供证书的签名与颁发服务,成为必须解决的一个难题。
拟采取的解决途径是:当探测节点接收到路由器发送的RA报文后,发起授权委托发现过程,请求路由器的证书链;等待响应并对结果进行分析判断。若路由器以携带合法证书链的CPA报文进行应答,则表明认证中心为目标子网的SEND机制提供服务;否则表明无认证中心为目标子网的SEND机制运作提供服务支持。
3.信任锚获取给探测带来的困难。SEND节点在授权委托发现过程中,需要在CPS报文中填充信任锚选项,也就是填充请求节点所信任的CA实体的信任锚。接收并验证含有该CA签发的证书后,请求节点才相信该路由器是合法的,也才会将该路由器作为自己的默认网关。获取信任锚及发起授权委托发现过程是开展SEND运行模式探测的关键环节。然而,在解决上一个难题时,探测又面临另一个问题:如何获取信任锚并发起授权委托发现过程。
4基于证书请求的SEND运行模式探测。为了解和掌握目标子网中SEND的部署与运行情况,开展SEND运行模式探测方法研究。深入分析SEND原理、部署与运行特征,针对探测期间遇到的难点,提出相应的解决方法,进而提出基于证书请求的SEND运行模式探测(SENDOperation Mode Detection based on Certificate Request,SOMD-CR)方法。
本发明实施例中,参见图7所示,通过明确是否有CA为目标IPv6子网的SEND机制提供服务支持、路由器拥有的证书链(认证路径)、目标子网SEND运行模式的种类及认证中心所依赖的信任模型类型;基于认证中心的公开密钥(信任锚),探测节点发起ADD过程,请求路由器的证书链;等待应答报文并分析路由器的响应行为,据此可获悉认证中心是否为目标子网SEND机制提供证书签发服务;提取证书链,构建目标子网的信任模型,最终探明目标子网SEND的运行模式。
为获悉认证中心是否为目标子网的SEND机制提供证书签发服务,探测节点必须发起授权委托发现操作。本发明实施例中,进一步地,探测节点发起授权委托发现ADD过程前,首先获取根认证中心CA的信任锚。进一步地,探测节点获取根认证中心CA信任锚过程中,首先寻找本地证书存储区是否存储有根认证中心的证书,找到根认证中心CA的证书后,执行证书撤销列表检查,确认该证书在有效期内;并验证证书签名合法性,提取根认证中心CA的公开密钥及所拥有的IP地址范围;本地未存储根认证中心CA证书的情形,探测节点执行证书申请操作,获取所有可能存在的根认证中心CA证书。进一步地,获取根认证中心CA证书的途径,包括:向公开发布证书的文件服务器或目录服务器申请根CA的证书;从注册中心RA申请根CA的证书;通过密钥交换协议获取。
探测节点首先寻找本地证书存储区是否存储有根CA的证书。分两种情况进行讨论:1)本地存储有根CA的证书,探测节点在本地发现已存储有根CA的证书,则说明有认证中心为目标子网提供证书服务,但不一定用于支持SEND运作。找到根CA的证书后,探测节点还需完成以下操作:首先,执行证书撤销列表检查,确认该证书仍在有效期内;其次,验证证书签名的合法性;最后,提取根CA的公开密钥及所拥有的IP地址范围。2)本地未存储根CA的证书,探测节点在本地检索不到根CA的证书,此时还不能断定目标子网没有部署CA实体。此时,探测节点执行证书申请操作,获得所有可能存在的根CA的证书。CA是高可信的实体机构,其生成的证书不可伪造。探测节点获取CA证书的途径有:①向公开发布证书的文件服务器,或目录服务器申请根CA的证书。②从注册中心(Registration Authority,RA)申请根CA的证书。其中,注册中心是一个实现证书注册和管理功能的独立机构,作为节点用户和CA之间的一个接口,完成和节点用户交互的部分证书管理功能。③通过密钥交换协议来获得。成功获得根CA的证书后,探测节点执行证书有效性检查和证书签名验证,最后提取出根CA的公开密钥及所拥有的IP地址范围。
进一步地,本发明实施例中,获取信任锚后,探测节点主动发送安全邻居发现路由请求报文触发路由器应答,并接收目标子网内路由器发送的安全邻居发现路由器公告报文。
在获得信任锚之后,探测节点(SEND节点)主动发送SEND-RS报文触发路由器的应答。探测节点在接收到SEND-RA报文之后就发起授权委托发现过程,等待接收应答并分析路由器的响应行为。具体的操作如下:首先,探测节点向FF02::2(链路本地范围所有路由器多播地址)发送SEND-RS[SLLA|CGA|Timestamp|Nonce|RSA]报文。其次,接收目标子网内路由器发送的SEND-RA应答报文。该报文将携带新定义的选项、一个或多个前缀信息选项、路由信息选项或MTU选项等,其形如SEND-RA[TLLA|…|Prefix|CGA|Timestamp|Nonce|RSA]。若探测节点是ND节点,则发送RS报文触发路由器的应答。
进一步地,本发明实施例中,探测节点依据所获取的信任锚,发送认证路径请求CPS报文请求路由器证书链。
依据所拥有的信任锚,探测节点发送CPS报文请求路由器的证书链。其中,CPS报文携带所获得的所有信任锚,用于请求路由器所拥有的所有证书。CPS报文可携带一个或多个信任锚选项。探测节点在CPS报文中携带自己所获得的所有CA的信任锚,并将“组件”(Component)字段的值设置为65535,目的在于检索目标路由器拥有的所有证书。
进一步地,本发明实施例中,路由器接收到证书链请求后,若探测节点接收到路由器利用认证路径公告CPA进行应答,则确认目标路由器支持授权委托发现功能,认证中心CA支持目标子网SEND机制运作;否则,探测节点判定路由器不支持授权委托发现功能,认证中心CA不支持目标子网SEND机制运作。
参见图8所示,以是否接收到CPA报文为依据,探测节点判断CA是否为目标子网的SEND机制提供服务支持。路由器在接收到证书链请求后,会有两种不同的响应行为,具体处理情况分别如下:(1)路由器用CPA报文对认证请求进行应答,则探测节点就可确认目标路由器支持授权委托发现功能,也可确定CA支持目标子网SEND机制的运作。(2)若接收不到任何CPA报文,探测节点就认为路由器不支持授权委托发现功能。该路由器无法识别CPS报文,会丢弃请求报文而不做任何响应。这种情况下,探测节点就可断定CA不为目标子网的SEND机制提供支持。
进一步地,本发明实施例中,针对认证中心不提供证书签发服务的情形,依据目标子网内所含的节点集,设定SEND节点集运行于应用非对称密钥技术无认证中心支持的第Ⅰ类运行模式,设定邻居发现ND节点集运行于未应用非对称密钥技术无认证中心支持的第Ⅳ类运行模式。
进一步地,本发明实施例中,针对认证中心CA支持目标子网SEND机制运作的情形,探测节点对路由器发送证书链的合法验证,以确认被授权路由器合法性,并获取路由器合法证书链;针对认证中心CA支持下的目标子网内节点集,设定SEND节点集运行于应用非对称密钥技术有认证中心支持的第Ⅱ运行模式,设定ND节点集运行于未应用非对称密钥技术有认证中心支持的第Ⅲ运行模式。
探明在认证中心支持下的目标子网SEND运行模式种类中,探测节点需对路由器发送的证书链进行合法性验证,以便确认被授权路由器的合法性,进而得出结论。分两种情况进行讨论:(1)路由器没有找到从自身到被请求信任锚的证书链,则路由器在应答的CPA报文中不携带任何证书,仅包含被请求信任锚的选项。由于探测节点发送CPS报文时在信任锚选项中填充了所有已获得的信任锚,但路由器仍没有到达任何一个根CA的认证路径。认为探测出错,结束探测。(2)当路由器找到从自身到被请求信任锚的认证路径后,路由器就发送包含证书链的CPA报文。路由器在发送证书链时,不发送根CA的证书,而是从被根CA签名的证书开始,按顺序发送,路由器自身拥有的证书最后才被发送。这样的策略有利于请求节点执行证书签名验证,在接收到所有的证书之前,请求节点就可开始对证书进行合法性验证。证书签名及合法性验证,以图4中的认证模型为例,证书签名验证的具体步骤分别如下:
首先,探测节点验证首个证书的合法性。探测节点使用根CA的公开密钥K0验证根CA在颁发证书Ci时生成的数字签名Si(包含于证书“签名”字段中)的合法性。其次,检查扩展字段中地址范围的合法性。探测节点提取出Ci中所包含的地址范围,并检查其是否包含在上一级CA的地址范围之内,具体过程如图9所示。图中,CR{Prefix-R}指路由器证书CR中IP地址扩展字段中携带的地址/前缀信息,其他类似表达形式的含义与之相同。紧接着,提取CAi的公开密钥。探测节点确认证书Ci合法有效之后,就从Ci中提取出CAi的公开密钥Ki,用于验证下一级认证中心CAj证书的合法性。依此类推,直到成功验证路由器所拥有的证书为止。如果成功验证证书CR的合法性,则探测节点可认为该路由器是具备公告子网前缀或路由转发数据包功能的合法实体;同时也确定路由器所拥有的证书合法有效。
进一步地,本发明实施例中,针对认证中心CA支持目标子网SEND机制运作的情形,探测节点对路由器发送证书链的合法验证,以确认被授权路由器合法性,并获取路由器合法证书链;探测节点以所提取的合法证书链作为判断依据,在获取信任锚的过程中,只获得仅有的一个信任锚且在接收到的证书链中仅有一个被信任锚签名的路由器证书,则目标子网SEND机制基于单CA的信任模型运作;若目标子网中仅有一个唯一的信任锚,且证书链表明从路由器到达信任锚经过多个不同的认证中心CA实体,则目标子网SEND机制基于层级CA的信任模型运作;若目标子网中有多个信任锚,且证书链表明部分CA实体支持双向认证,则目标子网SEND机制基于分布式CA的信任模型运作。
基于上述内容,存储路由器拥有的合法证书链,建立与路由器认证相关的信息表。具体情况可如表1所示。
表1目标IPv6子网路由器认证相关信息表
其中,表1中的“---”表示在该运行模式中,可能还存在具备公告子网前缀或路由转发数据包权限的路由器,或可能存在到达某一信任锚的证书链。以证书链Cm[CA1签名]←Ci1←Ci2←...←CR3为例,其表示从CA1签发的证书开始,中间包含可能存在的各子CA的证书,直到路由器自身拥有的证书为止。在后续工作中,探测节点可以周期性地执行证书撤销列表检查以更新证书链,确保证书的合法有效。
为验证本发明实施例中探测方法的可行性,下面结合相关实验做进一步解释说明:
基于上述实施例中的探测方法,以SOMD-CR探测工具实现相关实验,通过搭建IPv6实验环境,对其功能与性能进行实验验证,并对实验结果进行分析。
在实验中,使用7台主机、3台交换机和1台路由器搭建IPv6实验环境,如图10所示。IPv6实验拓扑环境中各主机节点的主要软硬件配置信息如表2所示:
表2 IPv6实验环境中各节点主要软硬件配置信息
参与实验的路由器R则是通过在一台PC上安装MikroTik RouterOS路由操作系统而实现路由功能的软路由。RouterOS可将标准的PC主机转变为专业路由器,实现路由系统的大部分功能,具有较高的性价比,是低成本高性能的路由器系统。在实验中,使用5.6版本的RouterOS构建路由器R。使用两台主机节点作为CA实体为路由器签发证书,主要测试SOMD-CR工具探测目标子网内各节点集的SEND运行模式的有效性。
节点要想获得CA签发的证书是需要付费的,且实验是一个独立的IPv6子网环境。因此,在实验场景中,在节点D5和D7上安装OpenSSL工具,使其具备证书签发能力并负责为路由器签发证书。使用两级认证的策略构建一个层级信任模型,为路由器R签发证书。D5作为根CA,D7作为次级CA。D5为D7的证书请求进行签名,D7为路由器R的证书请求进行签名。其签名过程如下:首先,根CA作为本次IPv6实验子网内的信任锚,生成自己的RSA密钥对CA1.key并为自己签发证书CA1.pem;次级CA也生成自己的密钥对CA2.key,同时生成证书请求CA2.crs;将该证书请求拷贝到节点D5上,节点D5为证书请求进行签名生成证书CA2.crt(不含私钥),将其与私钥绑定,生成次级CA的证书CA2.pem。其次,路由器R生成自己的RSA密钥对Router.key和证书请求Router.crs;将证书请求拷贝到节点D7,节点D7为路由器的证书请求进行签名生成证书Router.crt,将其与私钥绑定,生成路由器的证书Router.pem。最后,将根CA的证书CA1.pem拷贝到各SEND节点。
探测节点采用主动发送SEND-RS报文的方法触发路由器R的响应,等待并接收路由器R公告的SEND-RA报文,如图11所示,在接收到SEND-RA报文后,探测节点就立即发送CPS报文请求路由器的证书,而路由器则公告CPA报文进行应答。探测节点对CPA报文中的证书链进行验证,其验证过程及探测结果如图12所示,在探测过程中,探测节点所接收到的证书链仅含有两个证书,分别是次级CA和路由器R所拥有的证书。
通过对证书链中证书的合法性进行验证,可判断认证中心为目标子网的SEND机制提供证书签发服务。因此,可得出结论:目标子网内的SEND节点集运行于第Ⅱ类SEND运行模式,且认证中心基于层级CA的信任模型来管理和签发证书。而对于ND节点集而言,在接收到RA报文之后不会发送CPS报文请求路由器的证书,证明目标子网内的ND节点集运行于第Ⅳ类SEND运行模式。
通过以上实验结果分析可知,基于本发明实施例中探测方法实现的SOMD-CR工具,其探测结果与事实相符。且在实验中,探测的资源开销主要集中于证书链的合法性验证操作,其占用探测节点CPU资源的情况如图13所示,箭头所指的地方就是执行证书验证时所对应的CPU资源消耗量,接近占用了CPU计算资源的30%,在整个探测过程中,执行证书验证所占用的CPU资源较多,但SOMD-CR借助OpenSSL工具加载证书,以验证证书的合法性,采用该策略可明显降低执行证书验证所需的CPU时间片(仅需0.0058秒),因此对系统影响不大。在整个探测过程中,探测节点仅发送了一个用于触发路由器公告SEND-RA报文的SEND-RS报文,探测产生的额外流量可忽略不计;此外,发送RS请求符合实际情况,因此,探测不会对目标IPv6子网流量造成影响。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对步骤、数字表达式和数值并不限制本发明的范围。
基于上述的方法,本发明实施例还提供一种服务器,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述的方法。
基于上述的方法,本发明实施例还提供一种计算机可读介质,其上存储有计算机程序,其中,该程序被处理器执行时实现上述的方法。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种基于证书请求的安全邻居发现运行模式探测方法,其特征在于,包含:
探测节点发起授权委托发现ADD过程,请求路由器证书链;
等待应答报文并分析路由器响应,判断认证中心是否为目标子网安全邻居发现SEND机制提供证书签发服务;
提取路由器证书链,针对认证中心提供签发服务的情形和认证中心不提供证书签发服务的情形,通过目标子网内所含节点集探明目标子网SEND运行模式,并构建与目标IPv6子网路由器身份认证关联的信息表;
SEND机制包含非对称密钥技术和基于证书的认证技术两部分内容,根据子网对ND不同的部署策略与安全需求,将其分为四类运行模式,其中,第Ⅰ类:应用非对称密钥技术却无认证中心支持;第II类:应用非对称密钥技术且有认证中心支持;第III类:未应用非对称密钥技术却有认证中心支持;第IV类:未应用非对称密钥技术也无认证中心支持。
2.根据权利要求1所述的基于证书请求的安全邻居发现运行模式探测方法,其特征在于,探测节点发起授权委托发现ADD过程前,首先获取根认证中心CA的信任锚。
3.根据权利要求2所述的基于证书请求的安全邻居发现运行模式探测方法,其特征在于,探测节点获取根认证中心CA信任锚过程中,首先寻找本地证书存储区是否存储有根认证中心的证书,找到根认证中心CA的证书后,执行证书撤销列表检查,确认该证书在有效期内;并验证证书签名合法性,提取根认证中心CA的公开密钥及所拥有的IP地址范围;本地未存储根认证中心CA证书的情形,探测节点执行证书申请操作,获取所有可能存在的根认证中心CA证书。
4.根据权利要求3所述的基于证书请求的安全邻居发现运行模式探测方法,其特征在于,获取根认证中心CA证书的途径,包括:向公开发布证书的文件服务器或目录服务器申请根CA的证书;从注册中心RA申请根CA的证书;通过密钥交换协议获取。
5.根据权利要求2或3或4所述的基于证书请求的安全邻居发现运行模式探测方法,其特征在于,获取信任锚后,探测节点主动发送安全邻居发现路由请求报文触发路由器应答,并接收目标子网内路由器发送的安全邻居发现路由器公告报文。
6.根据权利要求2或3或4所述的基于证书请求的安全邻居发现运行模式探测方法,其特征在于,探测节点依据所获取的信任锚,发送认证路径请求CPS报文请求路由器证书链。
7.根据权利要求6所述的基于证书请求的安全邻居发现运行模式探测方法,其特征在于,路由器接收到证书链请求后,若探测节点接收到路由器利用认证路径公告CPA进行应答,则确认目标路由器支持授权委托发现功能,认证中心CA支持目标子网SEND机制运作;否则,探测节点判定路由器不支持授权委托发现功能,认证中心CA不支持目标子网SEND机制运作。
8.根据权利要求1所述的基于证书请求的安全邻居发现运行模式探测方法,其特征在于,针对认证中心不提供证书签发服务的情形,依据目标子网内所含的节点集,设定SEND节点集运行于应用非对称密钥技术无认证中心支持的第Ⅰ类运行模式,设定邻居发现ND节点集运行于未应用非对称密钥技术无认证中心支持的第Ⅳ类运行模式。
9.根据权利要求1所述的基于证书请求的安全邻居发现运行模式探测方法,其特征在于,针对认证中心CA支持目标子网SEND机制运作的情形,探测节点对路由器发送证书链的合法验证,以确认被授权路由器合法性,并获取路由器合法证书链;针对认证中心CA支持下的目标子网内节点集,设定SEND节点集运行于应用非对称密钥技术有认证中心支持的第Ⅱ运行模式,设定ND节点集运行于未应用非对称密钥技术有认证中心支持的第Ⅲ运行模式。
10.根据权利要求1所述的基于证书请求的安全邻居发现运行模式探测方法,其特征在于,针对认证中心CA支持目标子网SEND机制运作的情形,探测节点对路由器发送证书链的合法验证,以确认被授权路由器合法性,并获取路由器合法证书链;探测节点以所提取的合法证书链作为判断依据,在获取信任锚的过程中,只获得仅有的一个信任锚且在接收到的证书链中仅有一个被信任锚签名的路由器证书,则目标子网SEND机制基于单CA的信任模型运作;若目标子网中仅有一个唯一的信任锚,且证书链表明从路由器到达信任锚经过多个不同的认证中心CA实体,则目标子网SEND机制基于层级CA的信任模型运作;若目标子网中有多个信任锚,且证书链表明部分CA实体支持双向认证,则目标子网SEND机制基于分布式CA的信任模型运作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910636862.6A CN110417758B (zh) | 2019-07-15 | 2019-07-15 | 基于证书请求的安全邻居发现运行模式探测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910636862.6A CN110417758B (zh) | 2019-07-15 | 2019-07-15 | 基于证书请求的安全邻居发现运行模式探测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110417758A CN110417758A (zh) | 2019-11-05 |
CN110417758B true CN110417758B (zh) | 2020-05-05 |
Family
ID=68361485
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910636862.6A Active CN110417758B (zh) | 2019-07-15 | 2019-07-15 | 基于证书请求的安全邻居发现运行模式探测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110417758B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111984322B (zh) * | 2020-09-07 | 2023-03-24 | 北京航天数据股份有限公司 | 一种控制指令传输方法及装置 |
CN114244541A (zh) * | 2020-09-08 | 2022-03-25 | 四零四科技股份有限公司 | 凭证转移系统及凭证转移方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101247642B (zh) * | 2007-02-14 | 2012-12-19 | 华为技术有限公司 | 安全邻居发现方法、网络设备和移动台 |
CN101145915B (zh) * | 2007-10-10 | 2011-08-10 | 中国科学院计算技术研究所 | 一种可信路由器认证系统和方法 |
US10257161B2 (en) * | 2012-05-22 | 2019-04-09 | Cisco Technology, Inc. | Using neighbor discovery to create trust information for other applications |
CN104219239B (zh) * | 2014-08-29 | 2017-12-05 | 南京邮电大学 | 一种基于邻居发现的LoWPAN节点安全接入控制方法 |
CN106209897B (zh) * | 2016-07-28 | 2020-04-07 | 重庆邮电大学 | 一种基于代理的软件定义网络分布式多粒度控制器安全通信方法 |
US10652950B2 (en) * | 2017-11-16 | 2020-05-12 | Cisco Technology, Inc. | Method and system for providing signed user location information |
CN108234503B (zh) * | 2018-01-11 | 2020-12-11 | 中国电子科技集团公司第三十研究所 | 一种网络节点的安全邻居自动发现方法 |
-
2019
- 2019-07-15 CN CN201910636862.6A patent/CN110417758B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110417758A (zh) | 2019-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6684930B2 (ja) | ブロックチェーンに基づくアイデンティティ認証方法、装置、ノード及びシステム | |
Mick et al. | LASeR: Lightweight authentication and secured routing for NDN IoT in smart cities | |
US8266427B2 (en) | Secure mobile IPv6 registration | |
EP2859700B1 (en) | Using neighbor discovery to create trust information for other applications | |
US11956273B2 (en) | Discovering trustworthy devices using attestation and mutual attestation | |
EP2443803B1 (en) | Gateway certificate creation and validation | |
US7653813B2 (en) | Method and apparatus for address creation and validation | |
US11570242B2 (en) | Attestation-based scheme for validating peering setups for critical infrastructure protocols | |
US11277442B2 (en) | Verifying the trust-worthiness of ARP senders and receivers using attestation-based methods | |
US11212318B2 (en) | Verifying service advertisements using attestation-based methods | |
Jalalzai et al. | DNS security challenges and best practices to deploy secure DNS with digital signatures | |
Matsumoto et al. | Authentication challenges in a global environment | |
CN110417758B (zh) | 基于证书请求的安全邻居发现运行模式探测方法 | |
US20230054738A1 (en) | Advertising bgp destination secure path requirement in global internet | |
Liu et al. | Secure name resolution for identifier-to-locator mappings in the global internet | |
KR100856918B1 (ko) | IPv6 기반 네트워크상에서의 IP 주소 인증 방법 및IPv6 기반 네트워크 시스템 | |
CN115580498B (zh) | 融合网络中的跨网通信方法及融合网络系统 | |
US11558198B2 (en) | Real-time attestation of cryptoprocessors lacking timers and counters | |
CN110401646B (zh) | IPv6安全邻居发现过渡环境中CGA参数探测方法及装置 | |
Krähenbühl et al. | Pervasive Internet-wide low-latency authentication | |
KR100953068B1 (ko) | 인터넷 환경에서 보안 이웃 탐색 방법 | |
JP2007166552A (ja) | 通信装置及び暗号通信方法 | |
US20240195868A1 (en) | Attestation-based scheme for validating peering setups for critical infrastructure protocols | |
Krähenbühl et al. | Ubiquitous Secure Communication in a Future Internet Architecture | |
Matsumoto et al. | Designing a global authentication infrastructure |
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 |