[黄卓君 刘志华 蔡学龙]
互联网中不同AS(Autonomous System,自治系统)通过BGP(Border Gateway Protocol,边界网关协议)建立域间邻居关系并宣告相应的路由前缀实现互联互通,由于互联网协议设计的互信特点,AS能够通告其不拥有的IP(Internet Protocol,互联网协议)前缀,即通告非法路由。若无监控机制,这些非法通告将大范围传播并“污染”更多AS甚至整个互联网,影响通信的可用性、完整性和保密性。近年来基于最新版本BGPv4(Border Gateway Protocol version 4,边界网关协议版本4)协议的互联网路由泄露、路由劫持等安全事件层出不穷,故障波及范围大,对国家、运营商、客户造成了严重影响,BGPv4安全缺陷一度被认为是全球互联网最严重的安全漏洞。
目前发生的主要安全事件可分为两大类:路由泄露和路由劫持。路由泄露典型场景:A是运营商,B是A的客户且自带AS,当客户B向上游A宣告路由时,除了发布自身及下游资源之外,还发布了其他上游或Peer(例如C)的路由,则可能导致访问C的互联网流量错误地穿透A及B再到达C,即发生路由泄露。路由劫持典型场景:上游A和客户B,如果B由于错误配置或恶意篡改,发布了不属于自身AS的IP前缀,从而将访问该IP前缀的互联网流量非法引导至B,则发生路由劫持。
图1列举了近十年重大的BGP安全事件,这些事件涉及范围广,对整个互联网的可用性和稳定性都造成了不同程度的影响。
图1 近十年重大BGP安全事件
基于对国际BGP路由安全事件的跟踪与分析,本文提出互联网域间路由安全智能管控解决方案,通过路由数据库建模及在线关联分析,实现对路由泄露、路由劫持(含错误路由事件)的实时监测,并进一步实施策略控制避规安全风险,逐步建设自动闭环管理的互联网域间路由智能管控能力,为促进绿色安全互联网环境的建立提供理论与实践意义的参考。
图2是域间路由(BGP)安全智能管控方案示意图,由防伪认证信息库、路由策略分析监测、路由智能管控3个功能模块组成,对接收及发布的BGP路由进行合法合规性监测与控制,3个模块可独立工作,也可整合联动形成域间路由安全智能管控系统从而实现对域间路由的自动可控管理。
互联网路由防伪认证信息库:基于网络自有IP地址/路由库以及IRR(Internet routing registry,互联网路由注册)、ROA(route origin authorization,路由起源授权)等路由信息库进行多维数据采集建模,构建具有防伪认证意义的关系型全球路由数据库。
图2 域间路由安全智能管控方案示意图
路由策略分析监测:开展基于目标策略驱动的路由实时在线动态监测,利用防伪认证信息库进行路由及策略比对,分析识别不合规的AS以及非法发布的路由前缀,从而及时发现路由泄露与路由劫持并提示告警。
路由智能管控:基于路由策略分析监测的告警信息,进一步通过路由智能管控模块以黑白名单形式过滤非法路由,从而保证域间路由安全。
路由注册(routing registries)是指公有AS所有者主动将自己的路由信息、路由策略信息注册到公共数据库以便于数据的全球化共享查询。目前被广泛使用的分布式路由注册数据库是IRR,其数据库信息来源于AFRINIC(Africa Internet Network Information Center,非洲互联网络信息中心)、RIPE NCC(RIPE Network Coordination Centre,欧洲IP网络资源协调中心)、NTT(Nippon Telegraph &Telephone,日本电报电话公司)、Level3、RADB(Routing asset database,路由资产数据库)等组织,IRR提供了一种全球网络注册路由及策略信息并基于此验证BGP宣告内容正确性的方式,具有一定的公信力。
AS所有者向IRR发起路由注册时,主要注册的object对象包含AS、AS-SET、route/route6 等,其中AS对象包括AS号与归属团体信息(部分运营商还注册与其它AS连接与路由通告关系),AS-SET对象包括AS成员关系,Route/route6对象描述了IPv4(Internet Protocol version 4,互联网协议版本4)/IPv6(Internet Protocol version 6,互联网协议版本6)Prefix与ASN(Autonomous System Number,自治系统号)之间的对应关系。IRR采用RPSL(routing policy specification language,选路策略规范语言)作为描述语言,AS所有者根据与相邻AS的关系及传递策略描述其网络的输入、输出策略。其他AS通过查询IRR数据库,可以鉴别某条路由的起源属性,还可以验证该路由的宣告是否违反了AS之间的路由策略,因此可作为发生路由泄露和路由劫持的关键判断依据。
IRR目前在互联网运营商中广泛采用,但其自主自愿注册原则无法保证数据的完整性,同时由于缺乏认证与授权措施,数据容易遭到篡改,无法保证数据的准确性,完整性与准确性的缺失制约了IRR在防止路由泄露与劫持方面的应用。
相比于IRR,ROA信息库则是基于PKI(public key infrastructure,公钥基础设施)公钥体系、对IP路由前缀Prefix与AS号对应关系进行数字签名认证后建立的数据库,安全可信度较高。RPKI(resource public key infrastructure,资源公钥基础设施)用于证书的发布以及对路由通告合法性的验证。ROA认证及证书通过分布式的RPKI证书库系统(RPKI repository system)实现,互联网每台 BGP 路由器都可以从自己所属的ISP(Internet Service Provider,互联网服务提供商)分发点进行ROA认证并获取证书。由于目前RPKI无法在增强安全与降低开销及部署难度方面取得平衡,截止至2019年7月,全球互联网70万路由中仅约12%进行了ROA认证,远远无法满足路由认证需求,也无法完整有效地防御路由泄露与路由劫持。
防伪认证信息库的设计理念,是综合IRR路由库完整性以及ROA路由信息安全可靠性的优势,达到完整、准确、可靠的效果。同时,AS所有者可以进一步融合本网IP地址库、ROA路由起源认证信息库、互联网路由注册IRR信息库等多维度信息,按照不同优先级别排序,构建属于自己的路由防伪认证信息库,如图3。其中本网/本地IP地址库是指以AS所有者自身申请的IP地址为基础建立的本地地址库。
图3 互联网路由防伪认证信息库
路由防伪认证信息库可分为两部分:一个是AS合规性数据库,基于IRR路由数据库中提取的AS、ASSET、路由注册信息等建立,主要针对路由泄露场景。另一个是路由归属合法性数据库,基于ROA路由起源认证信息库/RPKI路由认证库及IRR信息库中提取的路由认证注册信息,并叠加本地库数据建立而成,主要针对路由劫持场景。由于全球网络路由注册与变更经常发生,为保证的路由防伪认证信息库的有效性与准确性,信息库需定期与各数据库同步,及时更新路由信息。
对于路由归属合法性数据库,由于采集了多个组织来源的IP路由数据库,可能会存在重复且冲突的情况。基于可靠性考虑,建议AS所有者首先以本地地址库作为最高可信级别;以ROA路由起源认证信息库作为第二可信级别;以IRR路由数据库作为更次之的可信级别,目前全球包括RADB及各大NIC(Network Information Center,网络信息中心)/ISP等在内,大概有25个IRR路由注册数据库,AS所有者可以选择其中主要的几个或者全部做镜像并自定义优先级排序,建立自用的IRR信息库。对于路由归属合法性数据库,当一个prefix在多个路由数据库中出现冲突(归属不同AS)时,将按照“路由归属本地库”→“路由ROA认证库”→ 排序后的“IRR路由注册数据库”的查询顺序进行合法性和归属关系验证。
基于路由防伪认证信息库中AS合规性数据库、路由归属合法性数据库,可分析监测网络中是否出现路由泄露和路由劫持,为进一步实施路由管控策略提供输入与依据。如需实现在线监测,则将路由分析监控模块加载到网络中(例如装载在服务器并接入网络),作为AS所有者网络中的RR(Route Reflector,路由反射器)Client获取RR反射的路由更新信息,实时跟踪监测网络的路由变化。
装载了路由分析监控模块(或者整个域间路由安全智能管控系统)的服务器将作为网络的RR Client获取路由信息,提取需监测的某个特定AS1的路由条目(只针对网间第一个AS为该AS1的条目),并与合规性数据库中该AS1已注册的AS-SET/下游客户AS-member信息进行比对,判断条件是收到路由条目AS-PATH的最后一个AS是否包含在该AS1的下游客户AS-SET中,只允许属于该AS1本身或其下游客户AS列表中的路由通过,如AS1发布了超出上述范围的路由(视为非合规路由),则认为发生路由泄露。域间路由安全智能管控系统可产生路由安全告警、生成异常路由分析报告或者直接过滤(具体管控手段视实际需要设定)。
路由分析监控模块需根据路由防伪认证信息库及RR反射的路由更新消息及时且自动修正判断结果及响应,维护路由的合规性。
路由分析监控模块从RR反射获取路由信息后,提取需监测的某个Prefix的路由关系:Prefix、Originator、AS-PATH、Origin AS(即AS-PATH中最后一个AS)等信息。随后针对Prefix,遵循本地库 → ROA → 排序IRR的次序在路由归属合法性数据库中按最优最长匹配查询其对应的路由归属AS(例如AS2),比对Origin AS与AS2是否一致,一致则表示路由正常,否则提示发生路由劫持并进一步产生路由安全告警、生成异常路由分析报告或者直接过滤(具体管控手段视实际需要设定)。
路由归属合法性数据库虽然整合了全球大部分组织的路由数据库,但仍不能达到100%的路由覆盖,或者新增路由不能实时同步更新,故查询匹配的结果除了“正常”、“异常”(劫持)之外,少量情况下会由于Prrfix在数据库中无法匹配到AS2而出现“未知”状态,此时需要人工干预判断。
同样地,路由分析监控模块需根据路由防伪认证信息库及RR反射的路由更新消息及时且自动修正判断结果,并触发响应机制(包括告警的撤销、提示以及路由控制列表的增删改等)。
为了营造一个更安全更“干净”的全球互联网络,主要应从两方面完善路由管控机制:AS所有者应保证自身路由合法性,同时不接收不传递外来的非法路由。
一方面,每个AS所有者都应该从自身网络做起,规范互联网IP地址及路由的注册和管理机制。AS所有者应该自觉、及时地在IRR上进行自有路由的注册,至少包括route/route6及AS/AS-SETS等信息;条件允许时,尤其是ISP、大型ICP(Internet Content Provider,网络内容服务商),建议同时进行ROA路由认证,这已经是国际主流互联网运营商的发展趋势。如AS所有者缺乏路由注册能力,则建议上游AS协助其完成路由信息的注册工作。这对健全、净化全球互联网路由,防范路由安全事故具有重要意义,也是实现BGP路由安全智能管控方案的基础及关键环节。尤其对于ISP及大型ICP来说,应考虑将路由注册工作嵌入业务运营及生产流程,并作为日常运维工作看待。
另一方面,AS所有者还应具备路由监测管控能力,在网络边缘过滤不合规不合法的路由,不进一步向互联网其他AS扩展。在健全互联网路由注册机制基础上,完成防伪认证信息库建模、路由分析监测之后,BGP路由安全智能管控方案的最后一个环节是针对监测结果进行管控。有条件的AS所有者,可以通过BGP路由安全智能管控系统与网管联动方式下发配置策略到边缘路由器,直接自动过滤非法路由;在条件不具备、或担心误操作、或需要针对个别AS/Prefix特殊化处理的情况下,可通过告警及报表输出的方式,由运维人员根据告警信息进行人工处理。无论哪种方式,目的是不允许非法路由穿透本网并向更远方扩展。
AS所有者接收路由时如监测到路由泄露或路由劫持,需部署适当的路由策略以控制/过滤非法路由(无论自动或者人工方式)。具体的控制策略可以多种多样,不一而足,以下给出的示例策略具有一定的通用型,但也仅供参考。
(1)针对路由泄露的路由控制策略
对于需要监测的对象B,在与其互联的端口配置AS黑/白名单,并应用到EBGP(External Border Gateway Protocol,外部边界网关协议)import路由策略上,实现基于AS的路由管控。白名单是指根据B的AS-SET列表里面下游AS member及其递归关系,生成白名单aspath white-list(在路由智能管控模块中自动完成),并允许白名单上AS的路由通过;黑名单则是根据路由分析监测模块提交的异常路由警告,针对不在B下游客户范围内的AS(即B泄露的AS)设置黑名单as-path black-list,并对黑名单上AS的路由实行封堵。若B未注册AS-SET信息,为安全起见,建议仅允许B起源的路由前缀通过,并督促/帮助B尽快在IRR上完成路由注册。
(2)针对路由劫持的路由控制策略
针对路由分析监测模块提交的异常路由(路由劫持)IP Prefix 清单,通过配置黑名单方式过滤非法路由,并将其部署应用在路由器的EGBP import路由策略上。
截止至2019年7月,AFRINIC、LEVEL3、NTTCOM、RISQ等25个IRR路由注册数据库中已注册的AS记录接近6.4万,已注册的IPv4地址族路由IP/Prefix记录接近235万,IPv6地址族路由IP/Prefix记录接近21万,上述记录为多个数据库累加结果,有重复。基于IANA(The Internet Assigned Numbers Authority,互联网数字分配机构)RPKI的APNIC(Asia-Pacific Network Information Center,亚太互联网络信息中心)认证数据库中IPv4记录接近8万条,IPv6记录接近1.5万条,即目前完成ROA认证的路由只占全球70万路由的12%。
在某运营商开展的实验案例中,基于本地库及ROA、IRR镜像建立了IPv4路由归属数据库,获取并整合为全网69.9万条路由,接近全球路由量。通过对网络实际接收路由与路由归属数据库的比对分析,记录某个时间段监测到发生路由劫持10万条,其中ROA认证异常记录占8%,IRR注册异常记录占58%,剩余34%为未注册异常记录,这34%需要人工进一步排查分析。
从理论分析、现网数据和实验案例来看,本文提出的路由管控方案具有合理性和实用性,并可预见,随着注册认证机制的规范与普及,本方案对于规避防范路由安全事件风险将会更有效、更全面。
针对BGPv4协议的互联网路由泄露/路由劫持监测与防护研究已成为当前网络安全热点之一,本文所阐述的域间路由安全智能管控方案综合考虑IRR路由注册和ROA认证的优势资源进行建模,并通过黑白名单的方式对路由泄露和路由劫持场景进行管控,从而达到维护巩固网络安全的目的。但由于路由注册认证尚未在全球范围内强制性要求,因此在实际部署过程中可能会存在漏判误判的情况。此外,全球路由安全管理机制尚未规范化,实际应用中还需要考虑业务、政策、法律等方面的风险规避。但随着各ISP、大型ICP甚至国家层面对网络安全的日益重视,网络安全监控策略机制也必然会不断探索中逐步走向成熟并得到推广应用。