CN110401646B - IPv6安全邻居发现过渡环境中CGA参数探测方法及装置 - Google Patents
IPv6安全邻居发现过渡环境中CGA参数探测方法及装置 Download PDFInfo
- Publication number
- CN110401646B CN110401646B CN201910636864.5A CN201910636864A CN110401646B CN 110401646 B CN110401646 B CN 110401646B CN 201910636864 A CN201910636864 A CN 201910636864A CN 110401646 B CN110401646 B CN 110401646B
- Authority
- CN
- China
- Prior art keywords
- node
- cga
- send
- message
- neighbor discovery
- 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/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
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
本发明属于通信技术领域,特别涉及一种IPv6安全邻居发现过渡环境中CGA参数探测方法及装置,该方法包含:以目标子网内主机节点所发送的报文作为截获对象并解析;依据报文解析结果判断目标子网内节点是否应用安全邻居发现SEND机制,建立用于确定目标子网SEND机制作用覆盖范围的参数信息表。本发明通过对目标子网内活跃节点的CGA参数实施探测,并进一步通过实施被动嗅探和主动探测相结合的方式来获悉各节点是否运行SEND机制以及配置参数信息,进而探明目标子网SEND机制的作用覆盖范围,有效保证SEND过渡环境中SEND和邻居发现通信的安全性,有利于提升IPv6网络通信安全性能,具有较强的应用前景。
Description
技术领域
本发明属于通信技术领域,特别涉及一种IPv6安全邻居发现过渡环境中CGA参数探测方法及装置。
背景技术
邻居发现(neighbor discovery,ND)协议负责发现同一链路上的节点、获取链路层地址、检测重复地址、发现路由器和维护到活动邻居节点的路径可达性信息等任务,是IPv6协议簇的重要协议之一。然而,ND协议易遭受哄骗(spoofing)、拒绝服务(denial ofservice)、重放(replay)、重定向(redirect)和恶意路由器(rogue router)等各类攻击,因为它假定链路上所有节点之间可相互信任,但该假设在一些场合下并不适用,恶意用户可通过伪造ND消息模仿合法节点,进而开展攻击。为此,IETF设计了安全邻居发现(secureneighbor discovery,SEND)协议来保护ND消息。SEND使用加密生成地址(cryptographically generated address,CGA)、数字签名和X.509证书来保证消息完整性,阻止IPv6地址偷窃和重放攻击,并提供验证路由器授权的机制。SEND是保护ND的不错选择,使得IPv6更加安全,越来越多的IPv6节点部署了SEND机制。然而,SEND机制本身也存在一定的安全隐患,也会遭受一些攻击,如CGA认证缺陷、时间-内存权衡攻击(time-memorytrade-off attack)和路由器授权攻击等。
目前,SEND协议方面的研究集中在协议分析与优化、安全性提高、应用扩展、地址生成提速、协议实现、轻量化等方面。扫描与信息收集攻击是下一代互联网仍需面对的安全威胁。然而,IPv6相关探测技术大都局限于拓扑发现、操作系统探测、蠕虫传播模型、隧道发现、路径最大传输单元(PMTU)探测等方面,SEND相关信息探测技术的研究尚未有效开展。
发明内容
为此,本发明提供一种IPv6安全邻居发现过渡环境中CGA参数探测方法及装置,保证SEND过渡环境中SEND和邻居发现的安全性。
按照本发明所提供的设计方案,一种IPv6安全邻居发现过渡环境中CGA参数探测方法,包含:以目标子网内主机节点所发送的报文作为截获对象并解析;依据报文解析结果判断目标子网内节点是否应用安全邻居发现SEND机制,建立用于确定目标子网SEND机制作用覆盖范围的参数信息表。
更进一步地,本发明还提供一种IPv6安全邻居发现过渡环境中CGA参数探测装置,包含:包含:解析模块和探测模块,其中,
解析模块,用于以目标子网内主机节点所发送的报文作为截获对象并解析;
探测模块,用于依据报文解析结果判断目标子网内节点是否应用安全邻居发现SEND机制,建立用于确定目标子网SEND机制作用覆盖范围的参数信息表。
本发明的有益效果:
本发明以目标子网内主机节点所发送的报文作为截获对象并解析;依据报文解析结果判断目标子网内节点是否应用安全邻居发现SEND机制,建立用于确定目标子网SEND机制作用覆盖范围的参数信息表;通过对目标子网内活跃节点的CGA参数实施探测,获悉各节点是否运行SEND机制以及配置参数信息,进而探明目标子网SEND机制的作用覆盖范围,提高SEND和邻居发现的安全性,有利于提升IPv6网络通信安全性能,具有较强的应用前景。
附图说明:
图1为实施例中参数探测流程图一;
图2为实施例中参数探测流程图二;
图3为实施例中参数探测装置示意图;
图4为实施例中CGA参数探测实验环境示意;
图5为实施例中探测节点截获的SEND报文示意;
图6为实施例中SEND报文相关参数执行验证结果示意。
具体实施方式:
为使本发明的目的、技术方案和优点更加清楚、明白,下面结合附图和技术方案对本发明作进一步详细的说明。
CGA是一种将公开密钥与IPv6地址绑定的技术,可提供节点地址所有权证明(address ownership proof),以防范IP地址欺骗,它是SEND机制运作的基础。CGA参数探测可获悉目标节点CGA地址防破解的安全强度、识别目标节点、探测地址配置策略、粗粒度判断操作系统版本,也可为攻击者实施中间人、拒绝服务等各类攻击奠定基础。SEND机制引入了一种新的地址生成方法——加密生成地址(CGA),定义了四个新的ND选项与用于路由器认证的两类报文。因此,SEND机制包含非对称密钥技术和基于证书的认证技术,提供除机密性之外的端到端邻居发现通信安全。SEND使用新定义的ND选项能提供地址所有权证明、报文完整性保护、重放攻击保护及路由器身份认证等功能,其中,(1)基于散列的地址所有权证明,为防止IPv6地址欺骗,SEND节点在对外宣称自己的地址之前,使用公开密钥和辅助参数生成CGA地址,同时也确定CGA参数。使用CGA参数填充CGA选项,并利用生成的CGA地址发送携带该选项的ND报文。SEND接收方则基于CGA选项中携带的公开密钥和CGA地址,验证ND报文源地址的合法性。因此,SEND机制要求SEND节点在所有的邻居请求(neighborsolicitation,NS)报文、邻居公告(neighbor advertisement,NA)报文和路由器请求(router solicitation,RS)报文中必须使用CGA选项(使用未指定地址的RS报文除外),而在路由器公告(router advertisement,RA)报文和重定向报文中则为可选;(2)基于签名的报文完整性保护,为认证ND报文的发送者即是公钥拥有者,并确保报文的完整性,RSA签名选项被SEND节点用来保护所有ND报文,但使用未指定IPv6地址(::/128)作为源地址的RS报文除外。RSA签名选项位于SEND报文(由SEND机制生成的ND报文)中所有选项的最后,其签名的内容包括一个128位的CGA报文类型标签、报文源和目的IPv6地址、ICMPv6报头、ND报文特定数据和RSA签名选项之前的所有选项。因此,覆盖大量的字段信息和多层数据载荷的签名策略,使得攻击者难以对SEND报文实施破坏而不被发现。
CGA是SEND机制运作的基础,其借鉴自认证地址(self-certifying address,SCA)的思想,CGA不依赖任何全局性的可信授权认证机构或实体,即可实现主机或域证明其拥有自己所声称的地址。若将主机节点作为实体,CGA地址作为身份标识,则这种绑定机制很容易遭受女巫攻击。因此,CGA机制的本质则是将公开密钥看作一个实体,将CGA地址看作节点的身份标识。由散列函数的计算结果无碰撞和逆向还原明文不可行等性质,可保证公开密钥与CGA地址之间形成一一对应的绑定关系。在对外宣称自己的地址之前,SEND节点必须使用密钥对来生成属于自己的CGA地址,并在所发送的所有ND报文中携带CGA选项。CGA选项中包含ND通信不可或缺的CGA参数,同时也有通信接收方执行CGA地址验证所需的内容。由于密钥获取或分发的随意性及IPv6地址编码特性,基于非对称密钥的CGA机制存在以下性质:①地址变换可匿名,对于SEND节点的密钥对而言,没有验证其合法性的必要,也没有相应的检查机制来验证密钥对的真实性,同时密钥有效期的限制也使得节点的密钥需经常更换。因此,子网中的任何节点都可基于合法的子网前缀和公开密钥生成一个CGA地址。节点可根据CGA生成算法使用不同的随机值生成多个CGA地址。此外,节点也可使用新的密钥对来生成新的CGA地址,实现对同一链路本地其他节点的匿名,从而实现对通信的隐私保护。②SEND节点无特权,SEND机制并不赋予CGA地址更多的信任与特权,即使一个节点被授权使用CGA地址,并不意味着这个地址就存在,也不意味着该节点在网络上具有任何的特权。CGA机制只是简单地将一个公开密钥与一个IPv6地址进行绑定,防止其他节点冒充身份,而SEND节点本身在通信的过程中并没有任何特殊的权限。③地址形式无差别。没有机制能证明一个IPv6地址不是CGA地址。IPv6地址的64位接口标识符作为一个整体而存在,没有特殊的格式及编码要求,因此无法把CGA地址与其他形式的IPv6地址区分开来,如基于扩展唯一标识符(EUI-64)的IPv6地址或IPv6隐私扩展地址。网络中的任意一个节点均可基于链路的子网前缀和公开密钥生成CGA地址,甚至可不借助任何合法的密钥对就可生成“可被验证”的CGA地址。
邻居发现协议自身内建的特性及SEND机制部署与运行特征会对CGA参数探测产生影响,CGA参数探测难点具体如下:(1)对探测实施层次的影响,经理论分析和实验验证,从目标子网外部对SEND实施探测很困难,且几乎是不可能的。理由如下:1)邻居发现协议内建的保护机制对探测的影响。IPv6子网ND机制要求RS、RA和NS报文的源IP地址必须是链路本地地址或未指定地址,且所有ND报文的跳限制(hop limit)字段的值必须是255。源地址范围验证和跳限制字段赋值最大化策略,都将攻击的范围局限在子网内部。网关丢弃来自子网外部攻击者发送的伪造ND报文,因为这类ND报文的跳限制值不再是255。SEND作为ND机制的扩展,同时也继承了这些安全特性。2)SEND部署与运行特征对探测的影响。SEND是为解决IPv6链路层的安全威胁所开发的弥补性方案,为子网内的通信控制提供安全保障,使得从目标子网外部发起的探测行为无法与内网ND安全机制进行交互,从而也无法完成探测。为成功对目标IPv6子网的CGA参数实施探测,从物理位置看,本文立足于目标子网内部的探测节点实施探测;从逻辑层次看,探测节点结合链路层与网络层参数信息构造恰当的探测报文执行探测。(2)目标子网向SEND机制过渡场景处理,出于配置策略或安全需求,目标子网同一链路可能正在从不安全的链路过渡到应用SEND机制的安全链路,处于同时运行ND机制和SEND机制的过渡时期。此时,在过渡场景中存在两个方面的难题:1)子网中同时存在ND节点和SEND节点。在探测过程中,获悉部分节点ND机制的实现方式,并不能确切得出目标子网已部署SEND机制的结论。2)SEND节点可能采用不同的策略与不同类型的节点进行通信。出于计算性能开销等方面的考虑,SEND节点可能采用无任何安全特性的ND实现方式与ND节点进行通信,而采用安全的SEND实现方式与SEND节点进行通信。(3)绑定关系有效性更新,通过对CGA机制性质的分析可知,目标节点可能采用地址变换的方法实施隐私通信。为保证所构建的目标子网节点部分参数信息表的有效性,探测节点还必须对绑定关系进行周期性检查,给探测工作带来了困难。由于采用地址变换技术需要极大的计算开销,探测节点可根据目标节点的属性来推断可能的更新频率,对表项信息进行有效性更新;也可在跟踪过程中,根据目标节点地址变换的频率来推断出其在链路中的重要性及价值。为此,本发明实施例,参见图1所示,提供一种IPv6安全邻居发现过渡环境中CGA参数探测方法,包含如下内容:
S101)以目标子网内主机节点所发送的报文作为截获对象并解析;
S102)依据报文解析结果判断目标子网内节点是否应用安全邻居发现SEND机制,建立用于确定目标子网SEND机制作用覆盖范围的参数信息表。
进一步地,本发明实施例中,作为截获对象的报文包含邻居发现ND报文或安全邻居发现SEND报文。
进一步地,本发明实施例中,判断是否应用SEND机制中,首先探测节点被动嗅探主机节点报文来判定该主机节点是否为SEND节点;根据判定结果,对不是SEND节点的情形,探测节点通过向主机节点主动发送SEND邻居请求报文,依据主机节点反馈来判定是否为SEND节点。
根据IPv6节点邻居缓存条目有效生存期的性质可知:当缓存条目过期后节点再次发起通信前,为确保通信方可达,节点必须发送请求报文进行可达性确认。因此,参见图2所示,在整个探测过程中优先选取被动方式执行探测,即探测节点被动接收活跃主机节点发送的ND报文或SEND报文,解析报文并进行分析判断。当无法得出结论时,则采用主动发送探测报文的方法触发目标节点的响应,为下一步判断目标节点是否应用CGA机制打下基础。
进一步地,本发明实施例中,被动嗅探过程中,通过判断截获报文对象中是否携带CGA选项,对携带CGA选项的主机节点,则标记该主机节点为SEND节点,应用安全发现SEND机制;对被动嗅探结果中主机节点未携带CGA选项的情形,探测节点主动发送带有CGA选项的合法SEND邻居请求报文,触发主机节点响应行为,若主机节点以SEND邻居公告报文应答,则标记该主机节点为SEND节点,启用安全发现SEND机制。
确认CGA机制应用的目的是确认目标节点是否应用CGA机制,即确认被截获的ND报文中是否携带有CGA选项。ND报文可携带任意类型、任意数量的已定义的ND选项,探测节点利用ICMPv6协议解析ND报文,并在ND报头之后逐个查找“类型”字段值为11的选项(CGA选项)。实施过程中需分两种情况分别进行处理:1)ND报文携带有CGA选项。解析报文并检索到CGA选项存在,表明该节点已应用CGA机制,是SEND节点。2)ND报文未携带CGA选项。该情况下还不能断定目标节点没有应用CGA机制,探测节点主动发送携带有CGA选项的合法SEND-NS[SLLA|CGA|Timestamp|Nonce|RSA]报文,触发目标节点的响应行为。如果目标节点能以SEND-NA[TLLA|CGA|Timestamp|Nonce|RSA]报文进行应答,表明该节点应用CGA机制,仍将该类节点记为SEND节点,并继续执行后面的探测,否则该节点未应用CGA机制,将其记为类型Ⅰ节点后结束探测。
进一步地,本发明实施例中,针对应用安全邻居发现SEND机制的主机节点截获对象报文,首先提取报文中表示源IPv6地址的CGA地址,及包含CGA选项的CGA参数;然后验证公开密钥与CGA地址绑定的对应关系,对通过验证的报文执行数字签名合法性验证,以确定报文发送者地址所有权证明和报文完整性,并建立参数信息表。
进一步地,本发明实施例中,通过CGA地址验证确定CGA地址与公开密钥绑定关系的正确性;通过截获对象报文中RSA签名选项验证数字签名合法性。
进一步地,本发明实施例中,针对截获对象报文中没有RSA签名选项的情形,将目标主机节点绑定信息添加至参数信息表。
参见图2所示,当确认SEND报文中含有CGA选项时,提取报文的CGA地址(即源IPv6地址)及包含于CGA选项中的CGA参数,执行CGA地址验证算法,确定CGA地址与公开密钥绑定关系的正确性。当验证算法执行成功后,表明该CGA地址与公开密钥具有一一对应的关系,但是此时还不足以断定目标节点就是该公开密钥的真正拥有者(拥有可签名的私钥),还需进一步执行签名验证。在确认CGA地址与公开密钥绑定关系正确的基础上,从所截获的SEND报文中检索出“类型”值为12的RSA签名选项,执行数字签名的合法性验证,以完成ND报文发送者的地址所有权证明和报文完整性验证。这一步也分两种情况进行处理:1)选项集中没有RSA签名选项,说明该节点没有应用签名技术。可能的原因是缺乏计算能力无法实现数字签名,而仅应用CGA机制来实现CGA地址与公开密钥的绑定认证。仍然在欲建立的参数信息表中添加该节点的相关绑定信息,并将其标记为类型Ⅱ节点。2)SEND报文携带RSA签名选项。依据RSA签名选项的数据结构,提取出数字签名(记为S),并对该数字签名进行合法性验证。如果验证成功,则在欲建立的参数信息表中为其添加对应的参数信息,并将其标记为类型Ⅲ节点,否则认为所截获到的报文不合法,将其丢弃。
进一步地,本发明实施例中,参数信息表中包含用于标记节点安全防护级别的节点类型表项,SEC值表项,绑定关系表项和RSA签名情况表项,其中,节点类型表项依据报文是否存在CGA选项、公开密钥与CGA地质绑定对应关系及RSA签名合法性验证结果进行节点类型标记。优选的,绑定关系表项包含MAC地址子表项、CGA地址子表项和公开密钥表项。
在确认目标节点CGA机制的应用情况及验证RSA签名合法性的基础上,以CGA机制的相关参数、节点的相关地址、节点应用签名技术的情况为内容,创建一个目标IPv6子网内节点部分参数信息表,具体情况如表1所示:
表1目标IPv6子网内节点部分参数信息表
其中,表中的符号“---”表示其他节点的相关参数信息
从该表1中可获悉目标IPv6子网ND机制的过渡状态,也可掌握目标子网所部署SEND机制的作用覆盖范围。为应对目标子网在过渡时期对ND节点和SEND节点制定不同的安全策略,按照ND实现方式的不同,本发明实施例中可将子网内的节点划分为两类:SEND节点集和ND节点集。当目标IPv6子网实现ND机制时,则子网中仅有ND节点集;若实现SEND机制时,则子网中仅有SEND节点集;若处于过渡时期,则两种节点集同时存在。此外,该表还展现了目标子网内具备不同安全强度的节点。一方面,SEC值暴露了节点CGA地址抗暴力破解的强度。另一方面,相比于SEND节点而言,类型Ⅰ节点缺乏安全防护特性,很可能成为攻击者实施IPv6内网探测与攻击的首选目标。类型Ⅱ节点未应用RSA签名机制,也存在安全漏洞,仍可能成为攻击者实施内网中间人攻击的目标。而绑定关系的建立则可对抗节点的隐私通信。
进一步地,基于上述方法,本发明实施例还提供一种IPv6安全邻居发现过渡环境中CGA参数探测装置,参见图3所示,包含:解析模块101和探测模块102,其中,
解析模块101,用于以目标子网内主机节点所发送的报文作为截获对象并解析;
探测模块102,用于依据报文解析结果判断目标子网内节点是否应用安全邻居发现SEND机制,建立用于确定目标子网SEND机制作用覆盖范围的参数信息表
为验证本发明实施例中技术方案的可行性,下面在Ubuntu 10.10下借助Python2.6.6、libpcap 1.1.1-2和OpenSSL 0.9.8o-01实现CGA-PD探测工具,并搭建实验环境测试其实现方案的有效性。
搭建如图4所示的ND节点与SEND节点共存的IPv6子网ND机制过渡环境,包含7台PC主机、3台交换机和1台路由器,各节点的主要软硬件配置信息如表2所示:
表2IPv6实验环境中各节点主要配置
其中,节点D5和D7在作为ND节点参与实验的同时,也将作为认证中心为路由器签发证书。因此,在这两个节点上还需安装OpenSSL工具来签发证书。此外,参与实验的路由器R则是通过在一台PC上安装MikroTik RouterOS路由操作系统而实现路由功能的软路由。RouterOS可将标准的PC主机转变为专业路由器,实现路由系统的大部分功能,具有较高的性价比,是低成本高性能的路由器系统。在本实验中,使用5.6版本的RouterOS构建路由器R。
如图4所示的IPv6子网环境中,节点D1、D2、D3、D5、D7和路由器R为SEND节点,节点D4和D6为ND节点,同时D2作为探测节点。然而,为能够正常运行SEND机制,SEND节点还须安装必要的工具并满足依赖关系,具体的情况如表3所示:
表3SEND机制运行所需工具
需安装的工具 | 版本信息 |
ip6tables | 1.4.4-2ubuntu3 |
scapy | 2.1.0-1 |
libssl0.9.8 | 0.9.8o-1ubuntu4.1 |
libnetfilter-queue-dev | 0.0.17-1 |
python-setuptools | 0.6.14-3ubuntu1 |
python-m2crypto | 0.20.1-1ubuntu4 |
此外,还需对系统环境做必要的设置。SEND节点还需配置内核包过滤工具ip6tables,通过在ip6tables的INPUT链和OUTPUT链中添加过滤规则,以使得诸如CPS报文等SEND报文能顺利进出网络接口。
运行CGA-PD探测工具,首先完成对目标IPv6子网内活跃节点的ND机制实现方式探测,并获取各SEND节点相关的CGA参数,保存相关参数信息并显示。
1、探测节点生成属于自己的CGA地址并监听网络接口,采用被动嗅探或主动探测的方法截获目标子网内活跃节点所发送的SEND报文。
由图5可看出来,在截获到的NA报文中携带有SEND新定义的CGA选项、时间戳选项、Nonce选项和位于报文最后的RSA签名选项。探测节点可提取出报文中必要的参数信息,执行相关验证。
2、探测节点解析被截获的SEND报文,提取CGA选项和RSA签名选项,执行CGA地址与公开密钥的绑定关系验证以及RSA签名合法性验证。
由图6可见,探测节点生成自己的CGA地址并将其指派给接口eth0,同时初始化邻居缓存并监听SEND报文。当截获到一个SEND-NA报文后,探测节点提取CGA参数,执行CGA地址验证,成功后继续执行RSA签名验证。只要验证过程中有任一操作出错,则验证失败,否则探测节点将使用该节点的地址更新邻居缓存,并将该缓存标记为“安全”。探测节点继续实施探测,直到邻居表项不再增长。此时探测节点可获悉目标子网内所有活跃节点的ND机制实现方式,并记录相关参数。
实验结果分析
①探测的准确性。当SEC值为2时,一台普通PC的CPU生成CGA地址所需的时间平均为3.2小时,而值为3时则需要约24年的时间。因此,考虑到CGA地址生成的时间和计算资源开销,实验中各SEND节点的SEC值均设置为1,且探测节点能够将其正确解析,并成功执行验证。CGA-PD也能准确探测出子网内节点集分布。
②探测的时间开销。实施探测的时间开销主要集中在执行CGA地址验证和RSA签名验证操作上。本实验中,探测节点执行验证操作的时间开销如表4所示。
表4执行验证操作所需时间开销
由表4可看出,相比于CGA地址生成,验证操作所需的时间开销极小,而执行CGA地址验证所需的时间比执行RSA签名验证所需的时间开销更小。总之,执行探测的时间开销很小,能在很短时间内完成探测任务,对系统影响极小。同时也证明了首先执行CGA地址验证,其次才执行RSA签名验证策略的合理性。
③探测对目标子网流量的影响。采用半主动嗅探的策略,探测节点所产生的额外探测流量(两个SEND-NS报文)对于子网通信而言,可忽略不计,不会对子网流量产生影响。
④感知节点的隐私通信。在本实验环境下开展探测的过程中还发现,在每次系统重启之后,SEND节点都使用不同的CGA地址进行通信。因此,该探测工具为每个目标SEND节点创建“MAC地址-CGA地址-公开密钥”的表项,可有效感知目标节点的隐私通信。
并非所有的系统和设备都支持SEND机制的运作,目标子网可能处于向SEND机制过渡的应用场景给SEND机制的探测带来了困难。本发明实施例中在SEND原理基础上,以其运行基础——CGA为出发点,进行CGA参数探测,采用被动嗅探与主动探测相结合的手段,通过对目标子网内活跃节点的CGA参数实施探测,可获悉各节点是否运行SEND机制以及配置参数信息,进而可探明目标子网SEND机制的作用覆盖范围,有效保证SEND和邻居发现的通信安全性能。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对步骤、数字表达式和数值并不限制本发明的范围。
基于上述的方法,本发明实施例还提供一种服务器,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述的方法。
基于上述的方法,本发明实施例还提供一种计算机可读介质,其上存储有计算机程序,其中,该程序被处理器执行时实现上述的方法。
本发明实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在这里示出和描述的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制,因此,示例性实施例的其他示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (8)
1.一种IPv6安全邻居发现过渡环境中CGA参数探测方法,其特征在于,
以目标子网内主机节点所发送的报文作为截获对象并解析;
依据报文解析结果判断目标子网内节点是否应用安全邻居发现SEND机制,建立用于确定目标子网SEND机制作用覆盖范围的参数信息表;
判断是否应用SEND机制中,首先探测节点被动嗅探主机节点报文来判定该主机节点是否为SEND节点;根据判定结果,对不是SEND节点的情形,探测节点通过向主机节点主动发送SEND邻居请求报文,依据主机节点反馈来判定是否为SEND节点;
被动嗅探过程中,通过判断截获报文对象中是否携带CGA选项,对携带CGA选项的主机节点,则标记该主机节点为SEND节点,应用安全发现SEND机制;对被动嗅探结果中主机节点未携带CGA选项的情形,探测节点主动发送带有CGA选项的合法SEND邻居请求报文,触发主机节点响应行为,若主机节点以SEND邻居公告报文应答,则标记该主机节点为SEND节点,启用安全发现SEND机制。
2.根据权利要求1所述的IPv6安全邻居发现过渡环境中CGA参数探测方法,其特征在于,作为截获对象的报文包含邻居发现ND报文或安全邻居发现SEND报文。
3.根据权利要求1所述的IPv6安全邻居发现过渡环境中CGA参数探测方法,其特征在于,针对应用安全邻居发现SEND机制的主机节点截获对象报文,首先提取报文中表示源IPv6地址的CGA地址,及包含CGA选项的CGA参数;然后验证公开密钥与CGA地址绑定的对应关系,对通过验证的报文执行数字签名合法性验证,以确定报文发送者地址所有权证明和报文完整性,并建立参数信息表。
4.根据权利要求3所述的IPv6安全邻居发现过渡环境中CGA参数探测方法,其特征在于,通过CGA地址验证确定CGA地址与公开密钥绑定关系的正确性;通过截获对象报文中RSA签名选项验证数字签名合法性。
5.根据权利要求4所述的IPv6安全邻居发现过渡环境中CGA参数探测方法,其特征在于,针对截获对象报文中没有RSA签名选项的情形,将目标主机节点绑定信息添加至参数信息表。
6.根据权利要求3所述的IPv6安全邻居发现过渡环境中CGA参数探测方法,其特征在于,参数信息表中包含用于标记节点安全防护级别的节点类型表项,SEC值表项,绑定关系表项和RSA签名情况表项,其中,节点类型表项依据报文是否存在CGA选项、公开密钥与CGA地质绑定对应关系及RSA签名合法性验证结果进行节点类型标记。
7.根据权利要求4所述的IPv6安全邻居发现过渡环境中CGA参数探测方法,其特征在于,绑定关系表项包含MAC地址子表项、CGA地址子表项和公开密钥表项。
8.一种IPv6安全邻居发现过渡环境中CGA参数探测装置,其特征在于,基于权利要求1所述的IPv6安全邻居发现过渡环境中CGA参数探测方法实现,包含:解析模块和探测模块,其中,
解析模块,用于以目标子网内主机节点所发送的报文作为截获对象并解析;
探测模块,用于依据报文解析结果判断目标子网内节点是否应用安全邻居发现SEND机制,建立用于确定目标子网SEND机制作用覆盖范围的参数信息表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910636864.5A CN110401646B (zh) | 2019-07-15 | 2019-07-15 | IPv6安全邻居发现过渡环境中CGA参数探测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910636864.5A CN110401646B (zh) | 2019-07-15 | 2019-07-15 | IPv6安全邻居发现过渡环境中CGA参数探测方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110401646A CN110401646A (zh) | 2019-11-01 |
CN110401646B true CN110401646B (zh) | 2020-05-05 |
Family
ID=68325555
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910636864.5A Active CN110401646B (zh) | 2019-07-15 | 2019-07-15 | IPv6安全邻居发现过渡环境中CGA参数探测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110401646B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111984322B (zh) * | 2020-09-07 | 2023-03-24 | 北京航天数据股份有限公司 | 一种控制指令传输方法及装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101022418A (zh) * | 2007-03-14 | 2007-08-22 | 华为技术有限公司 | Hmip认证方法、设备及系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070113075A1 (en) * | 2005-11-10 | 2007-05-17 | Ntt Docomo, Inc. | Secure route optimization for mobile network using multi-key crytographically generated addresses |
CN101299668A (zh) * | 2008-06-30 | 2008-11-05 | 华为技术有限公司 | 一种通信的建立方法、系统和装置 |
CN101640631B (zh) * | 2008-07-28 | 2011-11-16 | 成都市华为赛门铁克科技有限公司 | 一种数据包处理的方法和装置 |
CN101577675B (zh) * | 2009-06-02 | 2011-11-09 | 杭州华三通信技术有限公司 | IPv6网络中邻居表保护方法及邻居表保护装置 |
CN101572712B (zh) * | 2009-06-09 | 2012-06-27 | 杭州华三通信技术有限公司 | 一种防止伪造报文攻击的方法和中继设备 |
-
2019
- 2019-07-15 CN CN201910636864.5A patent/CN110401646B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101022418A (zh) * | 2007-03-14 | 2007-08-22 | 华为技术有限公司 | Hmip认证方法、设备及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110401646A (zh) | 2019-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AlSa'deh et al. | Secure neighbor discovery: Review, challenges, perspectives, and recommendations | |
EP1779589B1 (en) | Arrangement for tracking ip address usage based on authenticated link identifier | |
Al-Ani et al. | Match-prevention technique against denial-of-service attack on address resolution and duplicate address detection processes in IPv6 link-local network | |
US11924043B2 (en) | Establishing trust relationships of IPv6 neighbors using attestation-based methods in IPv6 neighbor discovery | |
Beck et al. | Monitoring the neighbor discovery protocol | |
Srinath et al. | Detection and Prevention of ARP spoofing using Centralized Server | |
Hassan et al. | Enhancing security for IPv6 neighbor discovery protocol using cryptography | |
Zhang et al. | Research on IPv6 neighbor discovery protocol (NDP) security | |
Shah et al. | Optimizing security and address configuration in IPv6 SLAAC | |
Alsadeh et al. | Cryptographically Generated Addresses (CGAs): Possible attacks and proposed mitigation approaches | |
Ahmed et al. | Improving security for IPv6 neighbor discovery | |
KR100856918B1 (ko) | IPv6 기반 네트워크상에서의 IP 주소 인증 방법 및IPv6 기반 네트워크 시스템 | |
CN110401646B (zh) | IPv6安全邻居发现过渡环境中CGA参数探测方法及装置 | |
Ahmed et al. | Secure neighbor discovery (SeND): Attacks and challenges | |
Al-Ani et al. | Ndpsec: neighbor discovery protocol security mechanism | |
Praptodiyono et al. | Improvement of address resolution security in IPv6 local network using trust-ND | |
Xiaorong et al. | Security analysis for IPv6 neighbor discovery protocol | |
Machana et al. | Leveraging Secure Hash Algorithm for Securing IPv6 Protocols SLAAC and DAD. | |
Yoganguina et al. | Proposition of a model for securing the neighbor discovery protocol (NDP) in IPv6 environment | |
Haitao et al. | The security issues and countermeasures in Mobile IP | |
Ahmed et al. | Denial of service attack over secure neighbor discovery (SeND) | |
An et al. | Analysis of SEND protocol through implementation and simulation | |
KR100953068B1 (ko) | 인터넷 환경에서 보안 이웃 탐색 방법 | |
Song et al. | Anonymous-address-resolution model | |
Younes | Modeling and performance analysis of a new secure address resolution protocol |
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 |