文/李杰 郑志延
基于PIV架构的IPv6真实源地址验证及实现研究
文/李杰1,2郑志延1
互联网业已成为信息社会的重要支柱,承担着促进社会进步的关键使命。然而,当前互联网对于IP数据报文的分发机理却存在着结构性缺陷,即从体系结构上不具备数据报文级别的真实性验证。该结构性缺陷可被恶意攻击者加以利用,通过伪造报文I P源地址假冒源端用户来实施不法攻击,而接收方却不能判别报文中的源IP地址的真实性,也就无法确定分组是否来自真实的发送方。因此,IP源地址假冒已经成为攻击者扰乱互联网运营秩序、加害服务提供商、蓄意制造恶性安全事件的重要载体,终将导致无辜用户和互联网运营商利益受到侵害。汲取历史经验,面向未来发展,下一代互联网已将可信任列入其重要特征,无论网络规模的日益拓展以及商业应用的日益丰富,可信和可靠的特性将是下一代互联网的极为关切和着力解决的重点课题。当前下一代互联网进入到蓬勃的大发展时期,学术界和工业界已经达成共识,IP源地址的真实性验证是互联网的安全运营和可持续发展的核心问题,下一代互联网只有提供高度可信的网络服务,才能满足未来发展的需求。
图1 扩展MPLS AS间数据报文真实源地址验证
近年来,清华大学等单位针对目前互联网存在的安全性弱、可信度低等主要问题,在重点解决互联网真实地址访问技术难题的基础上,提出了基于真实IPv6源地址的网络寻址体系结构(SAVA),设计和实现了可信任的互联网基础设施、安全服务和典型应用,这期间清华大学已在IETF完成1项RFC5210标准,提交4项标准草案,并以此为基础推动IETF成立专门工作组SAVI,使中国参与IETF国际标准方面实现了新的突破,产生了重要的国际影响。目前,真实IPv6源地址验证体系结构的实现系统已经在中国教育科研网络(C N G ICERNET2)上部署和运行,并且吸引了多家国内外机构、运营商和设备制造商参与实现,国内主要有:CERNET2、中国电信、中国移动等,国际上主要有:第三代跨欧亚信息网络(TEIN3)、第二代泛欧洲教育和科研数据网络(GEANT2)、亚太高等计算机网络日本站(APAN-JP)、第二代韩国研究环境开放网络(KREONet2)。上述机构都拥有多个全局独立的自治域,为学术界和工业界的致力于解决源地址假冒的科研工作及实验提供了多自治域的、开放的实验平台,为解决下一代互联网的安全隐患提供了重要保证,成为可信任下一代互联网的重要技术基础。
SAVA设计和实现了一种包括接入、域内、域间源地址验证三个层次的真实IPv6源地址网络寻址系统,分别在主机、IP地址前缀和自治域粒度上保证源IP地址的真实性。其中,自治域(AS)间IPv6真实源地址验证,其目标是确保自治域间往来报文的源I P地址可信可靠,由于自治域是封闭独立的管理域,管理者通常会综合考虑其自身的经济、政治、军事等多维利益,更多是不透明的、非对称的独立决策,因此这一层面的源地址验证也更加棘手,也是整个可信任的互联网体系结构中最为复杂的。
近年来,域间真实源地址验证方法研究取得了一些有益的进展,典型的有Bremler-Barr等人提出的基于源-目的自治域对应密钥的域间IP欺骗过滤机制SPM,在SPM中每对互为通信对端的自治域维护一对私密的、唯一的密钥来验证源地址的真实性,源域通过添加密钥可保证源地址的真实性,目的域通过检查密钥来验证源地址的真实性。SPM适合应用在早期的部署真实地址寻址机制的自治域较少、分布稀疏的网络环境中,采用该方案可实现自治域粒度的真实源地址验证。APPA改进了SPM机制,由部署验证机制的自治域集群组建信任联盟,联盟内每一成员自治域各自维护与所有潜在通信对端自治域的一对分别用来生成和验证标签的状态机,源域依据相应状态机生成确保源于本域的数据报文源地址真实性的标签并添加在报文扩展头中,目的域依据同样的状态机来验证标签,若验证通过则判定源地址是真实可信的,从而实现源地址前缀的验证。然而,在现有的较为典型的基于标签的域间IPv6真实源地址验证方法中,对于报文的验证仍然基于对报文的IP头进行分析和处理,这种机制使得路由器转发层面必须维护数量庞大的转发表项,同时也使得参与验证的路由设备必须对每一单位报文的IP头进行分析和处理,从一定程度上增大了验证开销,使得验证延迟增大、效率降低,由成员变化带来的影响辐射整个联盟范围,导致信任联盟的增量部署难以实现。
图2 ABR对来自域内报文的处理流程
图3 ABR对来自域外报文的处理流程
基于PIV架构的IPv6真实源地址验证方法是一种依托扩展多协议标签交换(MPLS)网络的、引入端到端的轻量级的真实性认证机制的自治域间真实源地址验证方法,其排除了网络拓扑、路由路径的影响,无需中间节点参与验证,部署本方法的AS可有效实现自治域粒度的真实地址访问。
基本思想
本方法提出一种具有全局唯一性的、用于认证报文源地址真实性和标识报文源发性的新型MPLS标签,定义为SID。启用该标签的自治域定义为扩展MPLS AS,邻接的扩展MPLS AS依据隶属关系、路由策略、网络结构、数据通信频度和经济、政治、军事利益等现实情况组建信任联盟(Trust Alliance,TA)。信任联盟由扩展MPLS AS作为单位成员,在信任联盟内部成员自治域间协商启用跨域扩展MPLS网络,通过实现源端级过滤防御、源端真实性和源发性认证以及目的端验证的维P三IV验证架构,构建出一种具有自主过滤伪造报文功能和抵御源地址攻击能力的信任联盟体系结构。从整体上看,信任联盟就是具有源地址假冒过滤功能的、支持层次化标签交换路径和面向连接的扩展MPLS域。
扩展MPLS AS间数据通信
在TA成员AS间互访的通信场景中,成员AS间依托扩展MPLS网络分别协商和分配域内转发和域间转发的标签,建立自治域内转发和自治域间转发的标签交换路径(LSP),并依据域内和域间标签转发表对收到的报文进行转发。在本方法提出的扩展MPLS网络中,源端扩展MPLS AS出口自治域边界路由器(ABR)依据验证规则对收到来自域内流向域外的报文启动第一级防御机制(Prevention)检查并过滤本域发出的假冒报文,完成源地址真实性认证,实现“自律”;而后启动第二级防御机制(Identification)在通过验证的合法报文中MPLS扩展头部将本域对应的全局唯一、私密的SID封装入标签栈底,完成报文源发性标识防止本域前缀被他人伪造,即实现“律他”,然后将标签栈顶用于域内级别转发的标签替换为域间级别的标签,将报文送入域间LSP上下游的相邻的扩展MPLS AS,当相邻扩展MPLS AS的入口ABR收到报文后,并不处理MPLS标签头部最内层的SID标签和用于域间转发的域间级别标签,而是在域间级别标签外侧封装用于本域内部级别标签转发的标签,向它的下游域内的内部网关协议(IGP)邻居标签交换路由器(LSR)转发数据报文,当报文沿着域内LSP到达本域的出口ABR时由其剥去MPLS标签头部最外层的域内级别转发的标签,保留中间层的用于域间转发的域间级别标签和最内层的SID标签,将报文送入域间LSP上下游的扩展MPLS AS。同理,报文在域间转发过程中途经的所有中间扩展MPLS AS都不处理MPLS标签头部最内层的SID标签(标签栈底标签)。直至报文送达目的端扩展MPLS AS的入口边界时,由该扩展MPLS A S的入口A B R启动第三级防御机制(Validation),其依据验证规则验证该SID真实性和有效性,若验证合法则移除报文头部的SID,继续向域内它的下游LSR转发,报文沿着域内LSP在LSR间依据域内MPLS标签转发,直至被送达目的端用户。参见图1。
技术实现
在数据层面,在信任联盟TA成员间互访的通信场景中,本方法依托扩展MPLS网络为每个MPLS转发等价类(FEC)分配的域内和域间级别的标签,启动标签驱动的路由和转发,报文在源端添加SID,在目的端验证并去除。在其他场景下,数据报文延用传统IP网络即基于目的地址转发。在这一过程中,成员自治域的边界路由器(ABR)根据到达数据报文流向,依据验证规则运行防御和验证处理流程来过滤假冒(其数据层面的处理流程如图2、3所示)。
在功能层面,本方法在功能上扩展了传统的MPLS,引入了认证源地址真实性和标识数据报文源发性的SID标签,SID始终处在标签栈底,只在报文到达目的端时才出栈验证,SID既作为真实性验证依据,又为假冒追溯提供了可能。数据报文的路由、转发和验证完全是基于MPLS标签驱动的:一方面,路由设备仅根据短而定长的SID来标识地址的源发性和验证地址的真实性,省去了传统基于标签的验证方案中在报文IP头部的标签添加、验证和解除的计算开销,降低了每单位数据报文的验证复杂度、缩减了验证延迟;另一方面,数据报文依据封装在2.5层MPLS头部的短而定长的域内和域间标签进行转发,省去了传统基于IP转发的软件查找IP路由的复杂过程,排除了网络拓扑、路由路径的影响,无需中间节点参与验证,不给运营网络和域间路由协议带来负面影响,确保了数据报文跨域传输的高速高效。同时,我们构建的跨域扩展MPLS网络继承了传统MPLS的面向连接特性,可以有效实现服务质量提升,根据不同用户需求提供网络资源预留和合理分配,提升网络运营的成本效益比率,避免不必要的网络资源耗费,因此具有一定的部署激励。
在安全机制层面,本方法着重考虑了以下4点关键设计:(1)基于PIV架构的多级防御机制,在源端确保了数据报文的真实性和源发性,有效实现了防止假冒他人的“自律机制”和抵御他人假冒的“律他机制”,在目的端的验证最终实现了信任联盟范围内的真实地址访问;(2)SID信息的加密和隔离机制,SID信息由源域私密生成,他域无法仿冒,终端用户在收到数据报文前其中的SID信息就已经处理和去除了,故抑制了恶意终端的攻击行为,而且当网络安全状况恶化时,信任联盟成员自治域还可周期性更新SID信息,重新生成验证规则(如图4所示);(3)时间同步防御窃听攻击,一方面,在主干网络上攻击者很难实施窃听攻击,另一方面,本方法同时利用时间戳和网络授时协议(NTP)启动信任联盟范围内的时间同步,防御窃听攻击;(4)安全信道机制,SID信息在联盟范围内的分发采用的是内嵌在BGP路由宣告报文中捎带发布机制,因为路由系统的封闭性和多重安全机制确保了SID信息宣告始终处在路由宣告安全信道中,同时当需要更新SID信息时,本方法还采用TCP拦截防御和Diffie-Hellman协议来构建SID信息交互的安全信道,如图4所示。
图4 基于SID信息交互的验证规则建立和更新SID信息在安全信道中的交互
图5 方法在CNGI-CERNET2上试验性部署
实验部署
目前,真实IPv6源地址验证体系结构(SAVA)的实现系统已经在CNGICERNET2网络上试验性部署、运行和测试,并且吸引了多家国内外机构、运营商和设备制造商参与实现,这些机构都拥有多个全局独立的自治域编号,为域间真实源地址验证方案提供了一个多自治域的实验环境。依据CNGI-CERNET2实际网络环境和运营状况,在域间源地址验证方案实验性部署时,我们选取了北京边界、上海边界、合肥边界和厦门边界4个独立自治域作为实验部署点和实验数据监测点,实验目的是在在不影响原有设备功能、性能和正常运行的前提下,通过增加板卡或系统固件升级的方式,增加源地址验证功能,在4个自治域间搭建跨域扩展MPLS网络,组建CNGI-CERNET2信任联盟,分别在4个自治域节点增设高性能测试服务器,构建了3种跨自治域通信场景,对本方法进行了系统测试。部署可行方案示意图如图5所示,实验结果表明本方法可以有效实现自治域粒度的真实地址访问功能。
本文依托真实源地址验证体系结构(SAVA),提出了一种新型的自治域间真实源地址验证方法,该方法在信任联盟成员自治域间协商组建跨域扩展MPLS网络并引入了具有认证源地址真实性和源发性的自治域源标识SID,实现了源端级过滤、源端真实性和源发性标记以及目的端验证的三维PIV验证架构,构建出一种具有自主过滤伪造报文功能和抵御源地址假冒攻击能力的信任联盟体系结构。
(作者单位:1为清华大学计算机科学与技术系;2为国防信息学院)