贾 焰, 韩伟红2*, 杨 行
(1. 国防科技大学 计算机学院, 湖南 长沙 410073; 2. 广州大学 网络空间先进技术研究院, 广东 广州 510006)
过去二十年间,人们目睹了计算机性能的指数级增长以及网络信息传播的爆炸式扩散.与之相伴,个人或团体出于各种目的驱使利用网络进行非法行为、恶意破坏甚至敌对攻击,已经成为当前社会日趋严重的问题[1].2017年5月永恒之蓝勒索病毒波及150个国家的20万台计算机设备,黑客至少获利2.6万美金,其影响波及全球高校、政府机构、国有企业等.《2018年全球风险报告》[2]指出,新的联网设备将迎来爆炸式增长,2017年IoT设备84亿台,到2020年将增长到204亿台.并且,DDoS攻击已经是当下极为普遍的主要威胁之一.2019年3月,洛杉矶网络安全公司Resecurity称,伊朗黑客组织IRIDIUM从2017年开始,截至今年3月,数次针对包括澳大利亚、加拿大、新西兰、英国和美国在内的政府、外交和军事组织,使用暴力攻击获得议员的个人数据,总共窃取了包括姓名、电子邮件、出生日期在内的数千条记录[3].
许多计算机网络面临着难以发觉,但又持续发生的高水平网络威胁,这些威胁呈现出规模化、流程化和隐蔽性的趋势,具有针对网络防御体系的适应能力.加之很多网络安全体系依赖于数量有限的安全分析员,以及功能较单一、对不断衍生的新威胁无法产生效应的安全工具,往往对于大范围网络安全事件的发生后知后觉,发现攻击背后的全貌时,损失已经非常巨大,就像网络安全阵地的“马其诺防线”处于被动模式.而且现阶段的网络攻击还具有多步跳跃、大范围共同发起的特点,因此,更需要改变传统的防御思维方式,“窥管见豹”“一叶知秋”,构建主动性防范决策机制,是随安全发展所必须要面对的新难题.
面对这些难题,能够基于整体范围和全局视角知晓当前网络状态的网络安全态势感知(NSSA)技术便应运而生.很多的专家学者乃至大多数国家都在本领域进行开发研究,借助新型网络安全态势感知技术,分析员和决策者能够更全面地从高维视角了解当前态势,预测未来发展态势,有效响应并防范网络攻击.
有别于仅与硬件系统进行交互的传统防护程序,新型网络安全态势感知技术其实是观察、学习、判断以及预测的过程,更加重要的是,网络安全态势感知研究采取多源融合的方法,基于对抗性推理和机器学习等领域的新进展,建立新的网络主动防御模式,从而能够未雨绸缪,防患于未然.
现在,人们普遍认为,态势感知概念的产生,源自于1988年,Endsley[4]首次提出的动态环境中态势感知的通用定义:“态势感知是认知大量的时间和空间中的环境要素,理解它们的意义,并预测它们在不久将来的状态.”同时,他还从人的认知角度出发,构建了由核心态势感知和影响态势感知的要素两部分组成的概念模型,如图1所示,其中,核心态势感知最重要的组成包括:对环境要素的获取、对当前态势的理解以及对未来状态的预测[5-6],并在其之后的研究中不断对其进行改进完善.
图1 Endsley态势感知概念模型Fig.1 Endsley stituational awareness conceptual model
此后,经历10年的发展应用,随着美国军事机构JDL构建基于数据融合的态势感知模型[7],1999年Leopold等[8]和Abasi[9]提出基于多传感器数据融合的态势感知功能模型等,态势感知被逐渐引入信息安全领域,并指出“基于融合的网络态势感知必将成为网络管理的发展方向”,由此也衍生出较为成熟的网络安全态势感知概念和许多在此基础之上进行改进的模型.
综合多个概念模型的划分,可以将“网络安全态势感知”定义为在大规模网络环境下,对影响网络态势的安全要素进行察觉提取、理解评估和未来预测[10].
从逻辑上看,更为直观地可以把“态势”一分为二,一方面“态”是指整体的当前现状,需要对获得的信息和事件做进一步评估,确定攻击的真实性,厘清攻击类型、性质和危害,以及处置步骤;另一方面“势”是指全局的发展趋势,需对单位时间窗口内的攻击事件进行深入分析,找出攻击的各个阶段、步骤和发起规模,以及被攻击资产的漏洞和受损程度,从而预测未来“攻防”双方的演变趋势.
按照一般网络安全态势感知技术的分类,主要分成网络安全要素提取、网络安全态势理解和网络安全态势预测三大类,本文也将按照此划分进行阐述.
网络安全要素提取是指采集网络环境中相关要素的状态、属性和动态等信息,并将信息提取融合,归入各种可理解的表现方式.由于研究目的与研究视角的不同,研究人员主要从两个层面提取数据:单一要素和多源数据.
从单一要素出发提取数据主要用于针对特定数据,文献[11]提出基于NetFlow的网络安全态势感知系统,通过部署在交换机或路由器设备中的Netflow采集器实现数据提取.但NetFlow在接口数据、性能数据获取方面存在不足,文献[12]对此予以改进,提出基于NetFlow和SNMP的网络流态势融合分析方法.Kwon等[13]设计并实现了基于OVAL的漏洞评估工具,以检测Linux系统中的弱点,但应用范围有限.文献[14]提出基于广义Arnold变换的脆弱性扫描策略对协议报文进行提取,提高了感知效率.但通过工具软件等单一视角的数据提取只限于局部或特定分析的需要,无法解析整体的态势.
因此,有很多研究者着手从多角度、多维度收集数据,文献[15]通过时空维度的信息整合改进僵尸网络异构多传感器信息集成,提高检测精度.文献[16]利用D-S证据融合进行权重优化,以减少多源信息提取融合过程中的不确定性.但噪声和冗余一直是多源融合的不良因素,针对这一问题,朱建文[17]通过动态调整阈值等对数据源进行去重、降噪,并使用改良的IAE-MapReduce并行化操作提升预处理效率,改进了多源异构日志文件的融合过程.
当前主要数据采集来源为网络设备的系统配置信息、网络设备的运行日志信息以及防护工具的警报信息与日志信息等,通过将这些信息进行有效整合,为态势感知的高维抽象理解提供了基础[18].但现阶段仍存在觉察结果的精度不足,如冗余数据或错误告警信息对攻击活动的重构仍然有很大的影响[19];觉察的效率不高,如很多采用离线的方式进行关联性分析和攻击过程重构,无法满足快速响应要求.
态势理解建立在要素提取的基础上,通过对海量数据的计算处理,绕过复杂难懂的表象,帮助分析者和决策者以更高维的视角理解网络状态.包括重大网络安全事件检测分析,指标体系构建,态势评估和数据可视化.
2.2.1 重大网络安全事件检测与分析
常用的安全事件检测方式有入侵检测系统和入侵防御系统.入侵检测系统主要对异常的可能性数据进行检测并对告警提供解决方式,是侧重于风险管理的安全产品.
戴远飞[20]利用不同的离散化与特征选择算法生成具有差异的多个最优特征子集,用分类算法对提取后的特征进行学习建模.文献[21]通过特征矩阵与矢量染色体的重叠来进行特征选择模型构建.上述通过特征选择的方法出现较早,虽然通过改进达到了更好的效果,但仍存在训练时间长、精准度差等不足.文献[22-23]分别针对未标记安全数据和DDoS攻击,提出集合聚类(NEC)方法和游戏对抗理论框架,各自建立网络异常检测的入侵检测模型.以上传统入侵检测存在检测深度和准确度的欠缺,为应对这些不足,协议分析成为比较主流的入侵检测方法.文献[24]提出了从数据包的网络层、传输层、应用层三个层次进行解析,获取各层协议报文的关键字段信息的协议深度解析方法.曹自刚[25]基于协议的一般性概念提出了面向常见网络协议的通用伪装检测框架,对协议的合规性和异常度进行深度验证.
入侵防御系统主要对明确判别为攻击行为的危害进行检测和防御,侧重于风险控制.
池亚平等[26]针对传统的入侵防御系统处理能力有限且易造成网络拥塞的问题,面向云计算应用,设计了一种在OpenStack平台中集成软件定义网络(SDN)控制器的入侵防御方案,实现了入侵防御功能.Sathis等[27]提出基于EDTM(Efficient Distributed Trust Model,EDTM)中信任建模和评估的入侵防御系统,根据传感器节点接收的分组数量,更加精准地进行节点可信度建模.
入侵检测和入侵防御系统有其特定功能需求,对提升系统和局部的安全保障有较好的帮助,对于需要从全局视角出发的态势感知而言还具有局限性,但从告警信息等数据获取上对态势感知起到了十分重要的辅助作用.
2.2.2 指标体系构建
网络安全指标体系是一套能全面反映网络安全特征,具有内在联系、相互互补的指标合集,指标体系的构建为态势理解和预测提供计算和评估依据.
一般来说,指标体系的组成最核心的部分包括体系本身的脆弱特性等.针对体系本身的脆弱性,一般基于漏洞评分系统CVSS、NVD等.文献[28]以资产和定量性CVSS为中心,定义了低级和高级风险指标.文献[29]则使用一组以CVSS为主的集成安全度量指标体系,构成安全信息和事件管理(SIEM)系统的输入数据进行风险评估.文献[30]针对聚合CVSS分数的现有方法容易导致在聚合结果中丢失语义的不足,将具有明确语义依赖关系的指标作为基本输入以保留相应语义.文献[31]将NVD漏洞库作为数据源,改进漏洞类型和风险级.
也有针对特定范围的指标体系构建.如文献[32]针对0-day攻击下的网络可靠性评估构建了指标体系,而Ramos等[33]则面向无线感知网构建入侵检测指标,李远征[34]针对政务外网构建了特定的网络安全指标,王志平等[35]面向企业网络安全态势评估需求建立指标体系.
不少学者在进行了大量总结梳理的前提下,建立了具有各自合理性的网络安全指标体系.文献[36]在王娟等[37]的研究基础上,将网络总体态势划分为威胁态势、脆弱态势、稳定态势和容灾态势,然后运用AHP分别确定各一级指标态势的权重,进而得到网络总体态势.张建锋[38]则从基础运行指数、脆弱性指数和风险指数三个方面对网络安全态势指标体系进行构建,进而利用层级汇聚的计算方法获取全局网络态势.文献[39]利用层次分析法,将关键性和安全性得分机制整合成量化指标体系.由国防科技大学、国家计算机网络应急技术处理协调中心、广州大学网络空间先进技术研究院牵头起草并于近期修订的《网络安全监控系统技术要求》[40]、《网络脆弱性指数评估方法》[41]、《网络威胁指数评估方法》[42]系列行业标准,便是从基础运行维度、威胁维度、脆弱维度三个维度对指标体系进行构建,在此基础上设计出网络安全监控系统模型框架,并在实际研究和产品应用上得到了合理性、稳定性、准确性等验证.
除此之外,也有文献[43-44]研究构建灵活的指标体系配置系统,部署并不断调整指标体系以适应不同用户需求,并在网络安全态势分析与预测系统(YHSAS)[45]上得到了指标构建合理性验证.文献[46]则基于用户反馈信息,提出top-k q渐进式查询修改方法.
网络安全指标体系的构建是整个网络安全态势评估的核心,其主要的目标是建立态势评估因子到最终态势值之间的映射关系,因为随着攻击事件、网络技术结构的不断发展变化,评估因子必然也随之在改进,正如上述具有代表性的指标体系一样,具有当时所处阶段的特点,所以指标体系构建是一个动态演化的过程.
2.2.3 态势评估
(1)基于数学模型
较早期出现的基于数学模型的评估方法是综合考虑各种因素进行态势评估,比较常见的有权重分析法、集对分析法等.
权重分析法是较为常用的评估方法,通常用指数表达式作为其评定函数.
文献[47]采用群组层次分析法(Analytic Hierarchy Process,AHP)与熵权法相结合的方式,建立多因素二级评估模型,对移动网络的安全态势要素进行分析.李方伟等[48]结合客观权重和主观权重,以序列二次规划(SQP)算法对组合权重进行寻优,降低了网络安全态势感知中信息融合的不确定性.
权重分析法将融合的结果直接作为态势评估函数的基本参数,拉近了关联计算数据之间的距离.但涉及主观因素较多,在反应更为复杂的非线性特性的安全态势数据时显得缺乏精准度.
集对分析法是处理系统确定性与不确定性相互作用的数学理论[49],已经得到了广泛应用.张劭帅等[50]采用集对分析理论对无线传感器网络安全态势进行了评估.文献[51]基于集对分析法,采用层次化安全态势量化评估模型分析主机的安全态势.吴琨等[52]针对可信网络安全中多数据源确定性与不确定性的特点,采用基于集对分析的网络安全态势评估与预测方法SPSAF,取得了较好效果.
但集对分析也存在固有不足,即在构造同异反联系度上主要凭借个人经验,同时也缺乏验证性和标准性,这些都成为集对分析的缺陷.
(2)基于知识推理
基于知识推理的方法是凭借专家知识及经验建立评估模型,通过逻辑推理分析整个网络的安全态势,其基本思想是:借助概率论、模糊理论、证据理论等来表达和处理安全属性的不确定性,通过推理汇聚多属性信息.
顾士星[53]借助有向无环图生成基于贝叶斯网络的攻击图,并在存在节点依赖关系的条件下,对贝叶斯网络攻击图中节点的先验概率进行计算,评估其威胁程度.文献[54]将CERT的漏洞静态严重性分值和入侵检测系统的报警统计数据当成证据,通过D-S证据理论融合后得到网络漏洞态势值,尽管评估过程中无需精确了解变量间的概率分布,在先验概率难以获得时D-S理论更加有效,但该方法仍存在需要大量的先验数据来确定基本概率分配函数等缺陷.
吴朝雄等[55]从多样本数据中发现高质量的攻击规则集,生成多级规则树,将规则与实时攻击感知引擎结合,实现对动态数据流的在线分析检测.Jia等[56]使用机器学习以及Stanford NER(命名实体类识别工具),提取网络安全实体并构建本体以获得基于五元组模型的网络安全知识库,再通过计算公式和使用路径排序算法推导出新的演绎规则,五元组模型的推理在该领域尚属首次.文献[57]针对物联网存在的空缺,提出基于语义本体和用户自定义规则情境推理方法的物联网网络安全态势感知模型,解决物联网安全域中的语义异构问题.
知识推理的评估方法不需要精确了解概率分布,在先验概率难获取时该方法较为高效,但当证据出现冲突时,准确性会受到影响,需要在研究中予以解决.
(3)基于模式识别
模式识别方法是通过机器学习建立态势模版,经过模式匹配及映射,完成对态势的划分.其目标是不过分依赖专家和经验,自动获取知识,建立科学、客观的评估模版,主要有灰关联法、粗集理论和聚类分析法等.
文献[58]利用灰色关联分析法对网络中的攻击要素进行关联,进而评估整体网络态势.文献[59]根据灰色关联分析确定指标权重,结合改进优化支持向量机算法,建立网络安全态势评估模型.灰关联方法思路简单,容易实现,但在模式匹配阶段,需要与每一个模版进行比较,提高了计算复杂性.
粗集理论[60]是一种新的处理模糊和不确定性知识的数学工具,它能有效分析和处理不完整、不确定性信息,并能够在海量数据中发现有用规律并将其转换为逻辑规则.文献[61]基于粗集理论的依赖度划分能力的基础上,建立了安全评估模型以及具有安全要素、主机两个层次的安全风险度量模型.文献[62]结合条件属性约简以及决策规则约简,提出了基于粗集分析的网络态势评估模型.Li等[63]对粗集理论进行改进,基于深度学习(DL)的特征提取基础上,结合粗糙集分析(SARSA)和深度抽象的模式信息给出评估策略.
对于大数量级的安全流数据,自组织聚类是进行态势分析十分高效的方式.文献[64]提出基于自组织迭代的目标聚类改进算法来解决态势感知目标聚类问题,避免了对先验知识的依赖和对目标分布的要求.文献[65]提出了基于日志聚类的LogCluster算法,实现了文本事件日志的数据聚类和线型挖掘.Park等[66]在论文中围绕物联网态势感知,利用从物联网传感器的多个深度神经网络学习结果导出的上下文数据进行自学习,建立了一个深度学习态势感知框架.
虽然模式识别的态势评估方法具有高效、处理量大、不过分依赖专家经验等优势,但在模式抽取阶段,面对较为复杂的特征比较棘手;同时,其原理难以描述,难以从整体角度考虑识别问题.
2.2.4 数据可视化
在网络安全态势感知的整个数据信息交流过程中,可视化起到了十分重要的支撑作用,如何快速、准确、有效地将态势传达给决策者是十分具有挑战性的问题.
一种思路是以事件和流量作为基本粒度构造可视化平台.Landstorfer等[67]为多变量数据创建了基于像素图的网络安全可视化平台,将直观数据直接指向可疑活动区域以帮助调查未知计算机安全事件.文献[68]则采取网络安全警报和流量解释为集合成员的方法,建立网络集成可视化系统.
也有将排序分析结合到可视化的思路.肖凡平[69]将基于Lucene的改进版搜索结果排序算法结合多种可视化方法,融合到前后端分离的网络安全数据可视化系统的开发设计中.赵颖等[70]在论文中提出了一个自顶向下的网络流量时序分析流程模型,以该模型为架构,设计并实现了一个多视图合作的网络流量时序数据可视分析原型系统.
随着用户认知水平的提高,针对因文化背景差异具有不同视觉感知能力的人,更是可视化是否能有效传递信息的一个重要因素,这也是此领域有待开发的方向.
态势预测是态势评估的另一关键,是在获取、变换及处理历史和当前态势数据序列的基础上,通过建立数学模型,探寻演变规律,对未来发展趋势和状况进行推理.目前有很多预测方法,如神经网络、灰色理论、时间序列分析和支持向量机等.
2.3.1 基于传统方法的预测
根据态势的时间序列的历史变化,对未来做出延展预测,称为时间序列预测.
王雪[71]利用基于残差检验的时间序列分析对网络安全态势进行预测.卢志刚[72]将生存性分析和时间序列分析相结合,实现状态趋势的量化分析.文献[73]利用时间序列分析方法刻画不同时刻安全态势的前后依赖关系.利用时间序列原理虽然简单,但缺乏对事物发展因果关系的联系,预测的精准性效果欠佳.
另一预测方法是基于因果关系,由若干变量的观测值来确定变量之间的依赖关系.
Juan等[74]提出了将无偏灰度理论(unbiased grey theory)和马尔可夫模型相结合的方法,分析网络的风险变化情况,但局限于短期非随机序列.王一村[75]在模糊隶属函数确定阶段引入遗传算法,以找到最合适的模糊隶属函数,结合模糊马尔科夫链对量化过程中得到的安全态势进行预测.孟锦[76]则针对网络安全空间非线性、时变性以及不确定性等特征,提出了将粒子群算法(PSO)的快速全局优化特点与SVM的非线性拟合特点相结合的安全态势预测模型.Wei-Hong等[77]面向多维事件流提出情景预测的安全态势预测方法,并在SSAP平台得到了应用验证.
基于时间序列和基于因果关系的预测方法都能够实现对未来态势的预测,但网络攻击的随机性和不确定决定了安全态势的变化呈现出非线性和复杂性,利用简单的统计数据预测非线性过程随时间变化的趋势必然存在较多误差;另外,传统方法对专家先验知识的依赖性,也制约了其对实时变化安全态势的未来趋势进行预测.
2.3.2 基于神经网络的网络安全态势预测
得益于硬件计算速度的提升,基于神经网络、深度学习的机器学习方法在近几年发展迅速.在网络安全态势感知领域,通过建立机器的自动感知和自学习机制,使其拟合专家的思维能力和分析判断能力,可以更加灵活地对复杂网络安全事件进行预测.
BP神经网络是十分经典的神经网络模型.结合网络安全态势,Tang等[78]基于极大似然误差函数对BP神经网络建模,实现态势预测.但BP神经网络存在收敛速度慢和局部极小等缺点.
RBF网络可以任意精度逼近任意的非线性函数,且具有全局逼近能力.Xie等[79]利用RBF达到了更好的态势预测效果.许多学者针对RBF预测方法提出了改进方案.Jiang等[80]对RBF神经网络的结构参数进行优化,并依据网络安全态势值之间的非线性映射关系进行态势预测.杨明等[81]采用协方差矩阵自适应进化策略(CMA-ES)算法来优化径向基神经网络(RBF)预测模型中的参数,使得RBF预测模型具备更好的泛化能力.文献[82]提出基于吸引力传播(affinity propagation,AP)聚类和差分进化(differential evolution,DE)优化RBF神经网络的算法.
有学者利用递归神经网络GA-Elman进行预测.文献[83-84]便通过调整优化,各自提出了基于改进GA-ELman神经网络的网络态势预测方法.
此外,文献[85]基于混沌粒子群算法(CPSO)优化小波神经网络(WNN),实现态势预测.
但神经网络也并非一劳永逸,对数据量规模的敏感,造成其收敛计算过程中容易产生的过拟合或者欠拟合性;另外,当前基于神经网络、深度学习的机器学习方法,在模型参数、复杂性设计上还存在依赖于人工经验的问题,也是亟待解决的方向.
网络安全态势感知和网络威胁必然会像盾与矛的关系一样,在对抗中不断交错提升,当互联网技术的更新无形推动着网络威胁的迭代升级时,网络安全态势感知也将会更好地利用新的技术、新的方法演化出更加完善的体系.
(1)数据融合.网络安全态势的数据来源分布广、容量大、形态杂,不同的运营商、不同的管理系统和不同的软件生成数据结构都会给海量数据融合带来困难,现有的研究仍然存在许多不足,而面对海量流式安全数据的集中或分布式存储,快速融合的手段对于态势精准分析则显得更为重要,需要更多地结合当下的大数据处理技术进行改进研究.
(2)人工智能应用.现阶段人工智能技术已经渗透到各行各业,很多传统技术都已经在这一过程中得到了蜕变,人工智能在网络安全领域的应用也有其积极的一面.威胁识别系统已经在使用机器学习技术来识别新的威胁,而通过机器学习对未来态势的预测也将越来越准确、迅速和成熟.因而,借助人工智能技术提升网络安全态势感知每个环节的能力是研究领域的大趋势.
(3)语义解构.现有对于网络攻击源头的攻击意图识别方式,主要利用人工经验判断,带来的弊端显而易见,依赖于先验知识,存在经验主义误区等,利用机器学习对特征提取和攻击场景聚类,解构网络攻击发起者背后的模式和意图,对于态势感知的“从哪里来,到哪里去,要干什么”的逻辑闭环,具有十分重要的意义.
(4)物联网[86].随着“5G”成为互联网领域被谈及最多的名词之一,基于5G网络的运营模式和架构必然将会很快催生出来,在可预见的未来,会有数量庞大的5G物联网设备直接连接至5G网络,这一趋势将使设备更容易遭到攻击,也提高了监控的难度,因此,通过海量物联网设备发起的DDOS攻击将是网络安全态势感知一个新的必须深入研究的难点.
(5)政策法规.随着个人及商业数据隐私保护被提及的频率越来越高,今后的网络安全态势感知在数据层面的获取必然更加需要政策法规的支持,而面对日益凸显的整体安全态势的感知需要,如何平衡好隐私和共享、商业利益和社会安全的关系,是从政策层面必须不断构建巩固的核心.
本文阐述了网络安全态势感知的基本概念,并从数据采集预处理、检测分析、指标体系构建、态势评估、态势可视化以及态势预测方面,介绍当前网络安全态势感知的体系结构、主要研究思路和关键技术方法.网络安全态势感知的研究对于信息安全领域具有重大意义,作为一个发展起步较晚的计算机研究分支,其还存在许多需要解决的问题,与态势感知有关的物联网技术和云计算技术尚处于起步阶段,海量数据采集和高速处理技术有待进一步提升,结合神经网络、深度学习的人工智能机器学习方法还有待进一步融合.