聂 嘉 徐新然 雷 缙
1(中国民航大学安全科学与工程学院 天津 300300) 2(中国民航大学电子信息与自动化学院 天津 300300)
随着民航空中交通量的迅猛增长以及对民航通信能力和服务水平要求的不断提高,实现整个民航领域内各单位间高效的业务交互及内部资源共享成为民航领域的关键问题.在传统民航系统中通信以点到点的方式进行,但不同机构所使用的系统、所传输数据异构并且相互间缺乏统一的接口标准,这使得通信系统进一步开发及维护产生巨大的开销.SWIM概念的提出则为上述问题提供了有效的解决方案[1-2].
图1 SWIM架构示意图
从系统体系的角度而言,SWIM就是通过建立系统级的信息管理体系,构建一种低成本高效益的空管数据信息交换模式,为不同的用户在正确的时间提供正确的服务;从数据共享的角度而言,SWIM技术将通用的操作画面提供给所有空管数据用户,允许实时分享航空业数据;从网络的角度而言,SWIM是一个大规模分布式集成的网络系统[3-4],采用面向服务的设计结构,通过对不同的系统提供统一的SWIM核心服务的形式,解决这些系统间的信息互通问题,从而适应系统未来发展的需要[5].
大量民航运行的相关数据在SWIM网络中传输、共享,甚至很多有较高紧急度的数据或保密级别较高的数据处于薄弱的安全机制下,成为黑客恶意入侵的目标.针对民航系统的网络攻击越来越频繁,数据安全威胁和系统隐患问题也越来越严重,信息安全成了民航信息化管理机构关心的话题[6].本文在分析SWIM概念架构的功能基础上,研究SWIM的数据共享安全问题和隐患,并以此提出SWIM的安全治理建议,为我国SWIM系统建设提供参考.
SWIM概念经过十几年的发展与完善,已形成包括IP网络层、SWIM基础设施层、信息交换模型信息交换服务层和SWIM应用层的5层操作架构.
SWIM架构如图1所示:接入系统代表已与SWIM连接的独立空中交通管理系统;适配器主要利用航班信息交换模型、飞行信息交换模型和气象信息交换模型对空中交通管理异构数据进行规范并将统一格式后的数据整合为服务信息;数据引接系统提供了基础设施层的核心功能,包括数据解析、设备安全,服务管理、认证授权等服务,其中,安全网关是接入节点的一种具体表现形式;虚拟信息池本质上是所有SWIM节点所传输的信息集合,其中包含地空通信、地面通信、导航、监视、气象等空中交通管理数据[7].
SWIM的可操作架构分为SWIM基础设施层、信息交换模型信息交换服务层和SWIM应用层,下面是SWIM系统5个核心服务层的功能详述:
1) 在IP网络层,提供包括硬件在内的综合电信服务.它是不同利益相关者的互连网络基础结构的集合,这些将是专用/公用互联网协议网络.在我国SWIM系统部署中,IP网络层主要功能是对民航空管相关单位基础设施数据的引接、对通信传输协议和数据格式的转换[8].
2) 在SWIM基础设施层,提供共享信息的基础结构.它是SWIM的核心,类似于信息中心网络.SWIM在基础设施层构建虚拟信息池,由于信息缓存在ICN路由内存中,可以快速对兴趣包作出响应,满足民航系统低时延、高并发、高可靠的需求.而支持基础设施层信息池形成和流动的关键技术为数据的命名、路由和缓存.另外,基础设施层还提供其他的核心服务,例如共享信息管理和综合服务管理.信息管理主要包括数据的订阅发布、请求响应以及数据治理功能;综合服务管理主要包括企业服务管理、SWIM用户的认证授权以及服务安全性[9].
3) 在信息交换模型层,使用特定于主题的标准来共享上述信息交换服务的信息.信息交换模型定义了应用程序交换的数据的语法和语义,包括对信息内容、结构和格式进行详细的阐述.信息交换模型层和信息交换服务层共同定义了SWIM系统中可以交换的应用消息单元.目前主要的交互模型有航班数据交换模型、航行情报交换模型和气象信息交换模型[10].
4) 在信息交换服务层,包含每一个空管系统相关的信息域和跨域交互的定义,在适当时遵循治理规范并由SWIM利益相关者达成共识,并形成我国民航SWIM系统运行的一套标准.SWIM利益相关者作为信息提供者和信息消费者的身份,利用上述达成的共识标准定义的信息交换服务,通过支持SWIM的应用程序进行交互和协同工作[11].
5) 在SWIM应用层,开发和应用基于SWIM交互的应用系统和程序.支持空管局、机场和航空公司等组织,以及高校科研人员和航空爱好者等个人作为信息提供者和信息消费者使用,通过SWIM业务系统的应用程序进行交互.
SWIM的出现彻底改变了传统民航相关系统之间点到点的数据共享方式,实现了实时高质的信息共享,提高了系统内的运行控制能力,增强了跨系统的协同决策能力,但同时也带来了诸多的安全隐患.
SWIM是一项集信息技术、控制技术、通信技术等前沿技术的综合性技术,任意一个环节的薄弱都会造成整个系统面临严重的安全隐患.SWIM系统技术使用分层的面向服务的体系结构,并实现了从应用程序集中到数据服务集中的过渡,在这种情况下可以利用SWIM体系结构.该架构可以使民航服务系统和信息技术基础设施分离,从而保持应用开发和信息技术基础设施建设之间的松散耦合和互操作性,可以提供高效的信息共享和民航信息可重用协同调度以及管理的交换机制,实现各类民航服务系统之间的互联互通[12].传统的民航信息系统与SWIM民航信息系统对比如图2所示.SWIM架构使用面向服务的架构,核心服务之间具有低耦合度的特点,由传统的点对点式数据交互转变成以SWIM为核心的共享架构,减少了原有系统之间的高度互相依赖,使所有系统都可以相互连接进行信息共享,同时降低了信息共享的成本,增强了引接通道管理能力,有利于空管系统之间的通信,提高了信息的利用率[13].
图2 传统的民航信息系统与SWIM民航信息系统图
由于SWIM是架设在现有民航空管设备的基础上的对空管通信、导航、监视、气象等数据的信息解析转换的共享平台,所以SWIM需要与空管现有大部分系统设备进行连接,使现有空管系统脱离“信息孤岛”的现状.然而,向SWIM的过渡对安全性来说是一个真正的挑战,因为它意味着:空管各系统从基于点对点交换的通信发展到以网络为中心的交换,同时信息交换数量增加,攻击面也随之增加[14].因此,SWIM的运行存在诸多安全隐患,可能会出现航空运行信息被恶意篡改、隐私数据泄露、机密信息被窃取等问题.这些问题破坏了航空数据的安全性,影响了民航系统的正常运行.
SWIM由SWIM基础设施、信息和对应的信息交换服务以及面向SWIM的应用等要素组成,其中每个要素都可能存在相对脆弱的隐患部分.以下将从SWIM的基础设施层、信息交换层和应用层3个方面分析SWIM面临的主要安全隐患.
2.2.1 基础设施层安全隐患分析
SWIM基础设施层中的 “虚拟信息池”为SWIM的核心部分,其基础结构中有大量的数据在流通交互,提供的不同核心服务确保各种面向SWIM的应用服务正常运行.但是基础设施层的很多硬件设施和软件系统处在无人监控、无人管理的环境中,任意一起严重事故都将导致 SWIM 核心服务以及面向SWIM的应用服务无法正常工作[15].目前针对SWIM基础设施层中存在的主要隐患如表1所示.
表1 基础设施层隐患
SWIM基础设施层是一个基于信息中心网络的大型分布式网络系统,其作用是提供共享信息的基础结构.由于网络技术的进步,大型网络信息化系统遭受恶意攻击和极端灾难的可能性越来越大.因此,针对SWIM面临遭受恶意攻击和灾难的威胁下,比如数据引接传感器终端设备、缓存路由设备和交换机设备等硬件设施出现故障,在遭受不可抗力(如自然灾害、战争等)时可能出现通信线路被破坏或者部分系统连接中断和硬件设施的老化等后果,SWIM的生存能力、关键服务的可用性、连续性和可靠性是需要重点解决的问题.同时,由于SWIM对全部民航机构开放应用接口,并且为用户提供远程操作系统的功能,与此同时,也存在恶意入侵系统、破坏基础网络和非法获取数据等隐患,比如拒绝服务攻击、信息窃听、伪装和虚假路由信息等,从而使得SWIM的基础结构、传输路径和核心服务等受到破坏[16].相应地,SWIM也存在安全信息和事件管理能力不足的问题,从而导致共享数据过程缺乏可监管性和可追溯性,以信息中心网络为基础的SWIM基础设施层面临巨大的信息安全隐患.
2.2.2 信息交换层安全隐患分析
SWIM中的数据一般包括即时航空运行数据、常规航空情报数据、航空业保密信息以及大量的用户隐私,这些数据资源是SWIM正常运行和业务交互的必要条件,SWIM的用户和系统管理人员在进行正常的工作流程时需要频繁使用这些数据以及数据衍生的应用,以完成信息的共享或者其他功能,对航空业正常运行有着不言而喻的重要性.目前信息交换层存在的主要隐患如表2所示:
表2 信息交换层隐患
SWIM系统信息交换层包含信息交换模型和信息交换服务层,信息交换模型和信息交换服务层通常可以被视为提供转换和分类数据服务的SWIM云平台,对IP网络层所收集的不同地区不同民航相关单位和不同民航基础设备的多源异构的数据进行协议和格式的转换,统一为XML格式的数据,并通过投入信息池中定义的不同ATM信息域来分类,以备于支持SWIM的不同种类信息需求的应用程序进行交互和协同工作.当某一接入系统提供异于平常的数据量时,SWIM信息交换层的信息处理能力存在超负荷的情况,可能会导致信息服务器出现暂停服务或宕机的情况;当某一SWIM资源节点发生权限篡改或数据库攻击时,SWIM数据库中的数据将面临被篡改和破坏的风险,可能会导致使用数据的应用服务提供不准确或具有误导性的信息;当某一SWIM资源节点发生信息泄露或数据丢失事件时,可能会导致航空业机密信息或敏感信息被不法分子获得并且有损航空业的利益.当SWIM数据出现问题时,对相应数据涉及到的信息交换服务产生直接影响,威胁航空运输的安全.由此可见,若满足高效、保质和快速的民航信息需求,SWIM信息交换服务还缺乏异常数据量的识别和调节的能力、用户权限的安全控制方式以及防范数据库攻击的手段[17].
2.2.3 应用层安全隐患分析
SWIM信息系统中大部分的应用服务需要收集航空运行业务数据和用户敏感隐私数据进行分析和处理,而用户在与SWIM系统进行交互使用的软件和平台也不尽相同,如何保证SWIM用户和各类民航资源系统信息交互的安全性和可靠性是设计SWIM应用层需要考虑的关键问题之一.目前SWIM应用服务层存在的主要隐患如表3所示:
表3 应用层隐患
SWIM应用层主要包括一些基于SWIM交互的应用系统和程序,通过使用SWIM提供的统一格式的数据去扩展新的应用功能.然而,现有民航领域应用程序存在安全系统薄弱或缺乏安全保证机制的情况.通过对华北地区民航当前信息网络安全情况的调查,发现大部分信息网络安全事件的来源都是外部网络攻击,占安全事件总数的 46%;而缺乏防范意识或不健全的安全管理体系,例如使用安全等级较低的登录密码或未定期更换密码而导致发生安全事件的占19%[18].有些民航数据网络的访问机制甚至没有身份认证,这都有可能造成民航信息的泄露和篡改,使民航网络信息系统面临着严重的安全隐患.此外,民航网络广域分布,航空用户种类繁多,存在管理混乱等问题.这就容易使非法用户获得相应权限,从而访问民航数据网络.常见的网络攻击隐患有伪造操作指令、恶意软件、漏洞攻击、人为误操作以及第三方服务中的隐私泄露[19].
SWIM作为分布式架构的信息交换平台,同样遭受着与传统分布式网络系统相同的安全威胁,因此对SWIM系统进行安全防护设计势在必行.根据分布式网络的一般架构,有针对性地对每一个层次进行安全防护设计,形成一个多层次、多维度的安全防护体系[20]是保证SWIM系统正常运行的重要前提条件.
目前SWIM主要应用于空管局、航空公司和机场等民航工作系统,并且应用范围限于民航数据引接转换、共享和应用等方面.显然,不同的民航工作系统在应用场景和特征上有着很大的区别,但其基本原理仍然是一致的.本文通过对SWIM系统整体的安全等级分级,设计了面向SWIM的整体安全防护技术框架,并针对各层的隐患因素分别提出解决方案.本文设计的SWIM系统安全防护技术框架如图3所示:
图3 SWIM安全防护技术框架示意图
SWIM中的安全域可划分为高、中、低3种级别,面临的风险也可分为高、中、低3种.对于SWIM中,低等安全域可以只设置防火墙系统.防火墙可以在系统内部与外部网络的边界处建立一个安全控制机制,限制从系统与外部网络交互的数据;将需要保护的内部网络与外部不可信任网络进行隔离,对进出的数据进行隐藏和检查的操作,并记录相关信息等,起到安全防护和边界保护的作用.这种隔离、控制和记录的功能基本可以满足低等安全域的需求.
中等安全域可以采用入侵检测和防火墙结合的技术.防火墙特点是“防外不防内”,对内部恶意的破坏者并不提供有效的防御措施,而入侵检测系统可以弥补防火墙系统的不足之处.入侵检测是一种从计算机网络或计算机系统中的某些关键点收集并分析信息,发现网络或系统中是否存在违反安全策略的行为和受到攻击迹象的一种安全技术[21].它从SWIM和网络中收集、分析信息,检测任何企图破坏系统资源完整性、机密性和可用性的行为,并且作出相应的反应,比如对进攻源进行识别和增添系统管理员对安全事件进行初步的管理和记录.
高等安全域在防火墙和入侵检测系统的基础上还可以加入入侵防御系统.入侵防御系统是一种主动的和智能的入侵检测、防范、阻止系统[22],会针对疑似网络攻击行为进行预警和拦截,同时最大限度地保持正常工作,以及在遭遇攻击后可以迅速恢复采取各种技术措施和行动[23].如果要实现SWIM相对完善的安全防护体系,则应该选择在部署入侵检测系统的基础上,增添入侵防御系统作为系统进一步的防御手段,既检测攻击行为又布置防御措施,大幅度提高系统网络安全防护能力.
SWIM的核心部分信息池则建议采用命名数据网络结合区块链的底层网络架构,命名数据网络以内容为中心,只考虑信息的内容不考虑其网络位置,对信息内容保密性和安全性也强于传统网络结构,面对不同环境情况缓存的方式也会相应变换,正适用于以数据为中心、数据量庞大且需要快速响应的SWIM系统;区块链的网络架构与命名数据网络相同,都适用于大型去中心化网络架构,并且区块链通过运用数据加密、时间戳以及分布式共识等机制,建立了系统中各节点间的信任机制,在命名数据网络的基础上增添了数据不可篡改和行为可追溯的特性,同时命名数据网络的快速响应特性也在一定程度上减轻了区块链网络共识慢、传输时延过长的缺点.
3.2.1 基础设施层安全建议
SWIM基础设施层是SWIM共享数据的核心部分.在遭受恶意攻击、灾难或正常老化的物理故障情况下需要最大程度地保证服务的可用性、连续性和可靠性,结合SWIM网络框架和现有的大型网络设计模型,本文提出构建SWIM系统应急响应和灾难恢复机制的安全防护措施,将应急响应过程分为准备、检测、抑制、根除、恢复和跟踪6个阶段,按照响应每个阶段的作用逐步恢复SWIM系统,以保证SWIM网络在遭受极端情况时能够有效地生存和运转,提高SWIM网络的生存能力.针对信息窃听安全隐患,可以通过非对称加密数据来提高安全性,同时使用具有反窃听功能的传输介质来降低安全风险.针对身份伪装、虚假路由信息和缺乏监管性等安全隐患,结合SWIM所需的机密性、完整性、监管性、抗抵赖性和可追溯性等性质,本文建议利用区块链来构建SWIM安全共享数据模型的安全防护措施,将SWIM基础设施层不同节点之间的相互认证、相互通信、数据共享、数据发布等行为以事件的形式保存上链,通过各节点共同维护分布式账本记录,实现SWIM所需的数据共享的安全性和可信性.
3.2.2 信息交换层安全建议
信息交换层主要包含交互的数据、信息交换模型和信息交换服务层,主要提供对多源异构数据格式与协议的转换以及数据分类的功能,针对某节点遭受DDOS攻击时,单节点单位时间需要处理的数据量可能会超出负载能力范围的情况,本文建议:一方面可以结合专用的加速复杂XML操作的软件或硬件来加速信息交换服务性能,例如XPath、XSLT和模式验证等;另一方面可以在本层添加异常数据识别与调节机制,自动识别异常数据量,并以此作出调节行为,例如通过随机动态地选择不同的SWIM服务点向SWIM提供服务,使得SWIM关键服务数据源由随机动态选择的不同数据库提供,通过保持服务提供源的动态变化和随机选择,来降低攻击者攻击单个服务提供源所造成的影响,若攻击者大面积攻击服务提供源,攻击成本也会大幅度增加,以此来提高SWIM核心服务的生存能力.针对数据泄露和数据库攻击的隐患,可以通过增加多重访问控制机制来提升非授权用户非法升权的难度,完善相关应用程序访问机制和特权配置的封闭性,使用高强度并经常更换密码.针对数据篡改和丢失的隐患,可以通过对数据进行摘要加密,从而通过验证数据完整性来判断数据是否被篡改,对数据的全部加密传输可以降低数据丢失带来的损失和风险.
3.2.3 应用层安全建议
SWIM应用层主要包括一些基于SWIM系统交互的应用系统和程序,通过使用SWIM提供的统一格式的数据去扩展新的应用功能.针对民航信息系统认证薄弱、管理混乱的问题,本文建议在SWIM应用层中增加跨域访问机制,在访问不同节点提供的数据时增加健全的安全认证机制,同时加强对访问SWIM的用户管理,提高防范意识.此外,针对恶意软件对系统应用的影响、虚假信息的注入等隐患,本文建议在SWIM系统应用前端增加入侵检测功能,对每一次服务请求进行全程监控,并要求访问服务结束时发出回执来检查端对端网络发出和接收到的信息,在此基础上建立攻击特征库和用户行为特征模型来进行检测,这样有助于提前发现用户异常行为并及时撤销权限或隔离用户.
网络与信息系统的安全需要技术和管理协同并进,不仅要在技术上加强防范,还要加强网络安全管理.
在拥有海量数据的SWIM中,需要网络基础设施来支持包括数据安全在内的许多安全管理.例如认证管理、访问控制管理、密钥管理、证书管理及远程控制等.此外还要有安全策略和规范.信息的安全策略应遵循以下原则:坚持动态性原则,遵循最小特权原则,实施全面防御,建立控制点,检测薄弱环节.
在增强用户及相关技术人员安全意识方面,需要完善与加强如下安全保障工作:
1) 在安全制度方面,制定相应的安全制度,明确规章制度的权利和义务,对信息部门人员来说,意味着明确自己负责的工作范围,并根据时间和具体情况来调整实施方案.对于一些关键岗位进行数据安全和保密制度方面的培训,提高管理人员信息安全专业素养,以降低内部关键信息泄露事件发生的可能性.
2) 在用户操作方面,主要是由用户的错误操作造成的安全隐患,提高用户的安全操作意识,制定相关的操作制度,在用户使用系统之前可以对用户进行相应的操作培训,以降低用户误操作行为.
另外网络与信息安全管理还应遵循规范、预防、系统化、应急、灾难恢复等原则.尤其是应急与灾难恢复原则,SWIM数据关系民航安危,出现紧急情况必须有有效的措施应对,减小灾难发生的概率,灾难发生后应以最快的速度恢复,最大程度地减少损失.
SWIM作为下一代空中交通管理系统的核心,为民航建立高效、灵活、统一的数据交互平台提供了可能.但是SWIM同样会面临着恶意攻击和自身脆弱性的隐患问题,其中关键数据的安全直接影响到民航各部门协同工作的进度和效率,以及乘客的生命安危,所以SWIM的数据安全问题不容忽视.不仅要在技术上采取防御措施,还要在管理上加强防范,增强员工的网络安全意识与防御能力,共同打造安全的SWIM体系,促进民航业又好又快地发展.