吴嘉诚,余 晓
(1.东南大学 网络空间安全学院,江苏 南京 210096;2.东南大学 继续教育学院,江苏 南京 210096)
针对互联网面临的各种安全威胁,专家将风险评估理论引入网络安全领域,其可通过对网络在运行过程中面临的问题进行分析,利用网络安全评估相关方法评估信息系统当前安全现状,对发生风险可能性较大的部位和区域进行重点防御。
网络安全风险评估是按照相关信息技术标准从信息安全的角度对信息系统安全性进行分析,判断可能存在的威胁以及漏洞被利用后产生的损失。网络安全风险评估包括资产、威胁、脆弱性和风险值4个要素,从安全风险管理角度出发,运用科学的方法对信息系统面临的威胁及存在的漏洞进行分析,并把系统风险值控制在一定的范围内,从而保障网络安全防御工作。
在网络安全风险评估领域,各个国家或经济体皆制定了相应的风险评估标准。美国国防部在1985年发布了世界上第一部风险评估标准-《可信计算机系统评价标准》,该标准将计算机的安全等级根据系统风险值大小划分为7个等级,但该安全标准只针对操作系统和数据库,难以适应信息通信技术的发展[1]。因此,英国、德国、法国等欧盟国家于1991年发布了《信息技术安全评估准则》,该标准针对信息实时传输过程中的完整性、保密性和可用性进行评估[2]。第一个国际性标准—《信息技术安全评估通用准则》于1999年提出,该标准是安全评估领域首部通用化国际标准[3]。我国在1999年编制了《计算机信息系统安全保护等级划分准则》。随着信息技术的飞速发展,我国于2007年颁布了信息安全风险评估规范GB/T 20984-2007[4]和《信息系统安全等级评测准则》,给出了网络安全评估的定义和安全等级的划分标准。
在风险评估过程中需要考虑多种要素,主要有资产价值、资产自身脆弱性、资产面临的威胁以及系统安全措施等。评估流程如图1所示。
图1 评估流程Figure 1. Assessment flow
网络安全风险评估作为构建网络安全防御体系的关键环节,是综合分析信息系统自身存在的脆弱性以及面临的外部威胁,判断可能对系统造成的损失,并根据风险评估结果实施风险消除策略或风险控制策略。网络安全风险评估基于一定的评估方法、工具和风险评估标准,不同的评估方法影响评估过程的各个环节以及最终的风险评估结果,因此需要结合评估系统的实际情况选择合适的评估方法。根据不同的方法性质,文献[5]将常用的评估方法分为定量、定性和定性定量相结合的3类评估方法。
定性评估方法依据系统面临的威胁、脆弱性以及安全措施等要素并依靠评估人员的知识与经验对网络安全等级进行评估判断。它通常采用文字形式或一定的数字范围对系统安全等级进行描述。定性风险评估方法的操作过程比较简单,适用于数据资料不够充分的情况,但它的评估结果过于依赖专家自身的经验与知识,主观性较强。定性分析方法主要有专家打分法、德尔菲法和故障树分析法等。
1)专家评价法。
专家评价法[6]首先根据评估对象选定若干评价项目并确定各评价项目的评价标准,然后各个专家依靠自身知识判断可能产生的风险并进行赋值,最后通过风险权重算出整体水平,并与基准值对比确定安全等级。
2)故障树分析法。
故障树分析法[7]的核心思路是按照逻辑方法,从故障结果出发,逐级向下分析各自的直接原因事件,并使用树形图将事件之间的逻辑关系表示出来,然后定性或者定量地分析事件发生各种可能路径的概率,最终发现系统结构中的关键部位或薄弱环境。
3)德尔菲法。
德尔菲法[8]是一种定性确定风险等级的方法。该方法通过匿名的方式对互不相识的专家征求意见,专家之间独立工作,然后对所有人的判断进行综合,最终得到一个比较客观准确的评估结果。但该方法需要占用大量时间,不适用于需要快速决策的环境。
定量风险评估方法使用确定的风险数值对网络安全风险进行评估,这种方法将网络安全风险评估要素进行量化,综合考虑资产价值、威胁以及威胁分析三者以此确定安全事件发生的可能性和带来的损失,最终确定风险值。定量风险评估的优点是评估结果直观,但评估结果的可信度取决于所用数据的精确性和完整性。为了量化网络安全风险,需要将复杂网络系统中的要素简单化、模糊化,从而影响到评估结果的科学性和严密性。典型的定量风险评估方法有决策树法、聚类分析法和因子分析法等[9]。
1)决策树法。
决策树分析法利用概率论原理对决策问题构建一种自上而下的树形结构,每个决策事件可能引发多个事件。该方法通过计算树的叶子结点概率的期望值得到评估结果,因此最终得到的是风险的期望值,与实际风险值并不一定完全相等。文献[10]提出了一种基于决策树的网络信息安全管理方法,首先对异常数据进行识别,然后对数据按照一定的规则进行处理并利用决策树进行异常数据检测,结果表明该方法能有效提高入侵检测效率。
2)聚类分析法。
聚类分析法根据数据对象的相似程度将数据对象划分为若干组或类,划分的过程就是聚类分析的过程。文献[11]提出一种基于聚类分析评估网络安全态势的方法,通过构建广义立方体聚类分析快速高效融合多源异构非确定性信息源,逐步量化评估并生成网络安全态势结果。
3)因子分析法。
因子分析法的目的是用少数因子描述多个指标之间的关系,即通过将较相关的几个指标归在同一类中,以较少的几个因子反映原始指标的主要信息,从而减少评估指标体系的复杂性和模糊性。
定性风险评估方法的评估过程简单但评估结果主观性较强,定量风险评估的结果用数值描述,更为直观,两种方法结合起来可以互补不足。因此,定性与定量相结合的综合评估方法融合了定性、定量两种方法的优点,既能综合考虑网络中的各种安全因素,又能保证评估的客观性,是目前风险评估领域的研究重点,广泛应用在复杂的信息系统风险评估中。综合风险评估方法根据研究侧重点的不同又可以分为基于指标体系和基于模型两类评估方法。
2.3.1 基于指标体系的风险评估方法
基于指标体系的风险评估方法综合考虑网络安全风险评估过程中涉及到的人为、技术等因素。主要思想是从模糊性和不确定的信息中抽象、归纳出能影响风险评估结果的指标,最后根据构建的指标体系计算风险评估结果并确定系统安全等级。构建指标体系是网络安全评估的重要环节,指标及指标权重的确定受到研究者自身经验的影响,客观性不足,因此专家利用层次分析法、模糊综合评价法、D-S证据理论以及灰色理论等方法降低不确定性和主观性,从而得到一个公认的、可靠性更强的指标体系。
1)模糊综合评价法。
模糊综合评价法是一种基于模糊数学,同时应用模糊关系将不确定性因素进行定量分析的方法。网络安全评估中存在大量的风险因素,应用模糊系统的原理建立综合评价的因素集和综合评价的评价集,构造模糊评价矩阵,建立综合评价模型,最终确定网络的安全等级。
文献[12]将模糊综合评价法应用到风险评估中。文献[13]提出了一种基于改进的模糊分析层次过程(Fuzzy Analytic Hierarchy Process,FAHP)的信息安全风险评估方法。该方法建立了分层安全评估模型,并引入细化指标和直觉模糊集,以减少传统风险评估中的主观判断因素。文献[14]提出了一种基于AHP(Analytic Hierarchy Process)和模糊综合评判的信息安全风险评估方法。文献[15]基于模糊理论、粒子群优化和RBF(Rodical Basis Function)神经网络提出了一种基于模糊理论的网络安全风险评估模型。通过挖掘网络安全状况历史数据中的规则,结合网络现状,实现对当前网络安全状况的评估,提高评估结果的客观性和可理解性。针对专家评价意见存在主观性和不确定性的问题,文献[16]提出了一种将模糊集理论和D-S证据理论应用到传统贝叶斯网络安全风险评估的方法,结果表明该方法能够提高评估结果的客观性。
模糊综合评价方法的优点是评估结果清晰、可操作性强,且考虑了评估对象内部关系的复杂性和模糊性,适合解决各种非确定性问题。但该方法评估指标体系难以建立,同时评估指标的权重确定过程主观性较强。
2)D-S证据理论分析法。
D-S证据理论[17]引入信任函数概念,形成一套处理不确定性推理的数学方法。D-S证据理论的核心是利用Dempster组合规则融合不同证据的信任函数,随着证据的融合而降低多源信息的不确定性,获得最终结果后根据决策逻辑进行判断,最终得到评估结果。
已有学者将D-S证据理论应用到风险评估中。文献[18]提出了一种通过改进组成规则以解决悖论,建立安全测量模型的方法,提高了网络安全评估结果的准确性。文献[19]引入了BP(Back Propagation)神经网络融合多源态势信息获得D-S证据理论的基本概率分配(Basic Probablity Assignment,BPA),弱化专家评判对BPA的影响,最终得到可信度较高的风险评估值。
3)层次分析法。
层次分析法将一个复杂的问题分解为多个因素的组合,并按照因素之间的相互关联影响以及隶属关系划分为有序的多层次分析结构模型。文献[20]提出了一种智能电网信息安全风险评估方法,该方法结合D数来改进独立于专家主观定性评估的经典分析层次过程(D-AHP),然后与不需要完整和明确信息的灰色理论相结合得到综合评估值和相应的风险等级。文献[21]提出了一种利用层次分析法建立资产漏洞评分层次模型并对信息系统进行评估的方法。层次分析法将难以量化的抽象问题以层次化模型简化为多个简单问题,提高了决策的可靠性。但风险评估参数值由专家确定,存在一定的主观性,缺乏统一的权重确定方法。
4)灰色理论评估法。
灰色系统理论是一门基于控制理论的系统工程学科,可解决存在未知因素的特殊领域问题。信息系统中存在大量的模糊性和不确定性因素,这和灰色系统的特征相符,因此有学者利用灰色理论方法对网络安全风险进行评估。文献[22]采用AHP与灰色理论相结合的方法对网络安全进行评估,利用层次化模型将评估对象抽象简化,结果表明灰色AHP降低了传统AHP方法中人为判断的主观性。文献[23]提出了一种通过先验估计对缺失的参数评估值进行填充来解决风向评估中参数评估值确定较为困难的问题,然后利用灰色关联决策算法对系统进行安全风险评估的方法。
2.3.2 基于模型的风险评估方法
基于模型的风险评估方法可以综合考虑风险评估要素,科学地对风险要素和系统状态进行建模,通过模型计算得到系统安全等级。优点是评估结果准确可靠、模型可复用,缺点是针对复杂系统建模难度大、计算过程复杂度高。根据模型结构的不同,将基于模型的风险评估方法划分为基于图模型的评估方法和基于人工智能的评估方法。
1)基于图模型的评估方法。
基于图模型的评估方法综合考虑脆弱性和安全事件之间的关联性,对攻击行为和网络系统建立直观的模型。该方法的优点是可展现攻击行为的完整攻击路径,且模型可复用、可扩展性强,缺点是构建模型较为复杂,计算上存在指数爆炸问题。典型的基于图模型的方法包括基于攻击树模型、基于攻击图模型和基于Petri网的风险评估方法等。
攻击树理论[24]是一种利用树形结构来描述系统面临的攻击行为和安全威胁的方法。攻击树的构建过程主要是将根节点代表网络攻击的目标,将攻击目标分解为不可分割的子目标作为叶子结点,从根节点到叶子结点的每一条路径都代表一种对系统的攻击方式。文献[25]利用攻击树模型对4G网络的安全风险进行评估,结合模糊层次分析法计算每条攻击路径的风险概率,最终得到安全风险等级结果。针对网络安全风险评估过程容易受到主客观因素影响的问题,文献[26]提出了一种基于模糊理论与攻击树相结合风险评估方法,利用叶子节点的区间概率值计算攻击路径的区间概率,最后得到每个攻击路径的发生概率。文献[27]针对网络攻击效果评估对指标数据过于依赖的问题提出了一种基于攻击树和CVSS的网络攻击效果评估方法。首先利用攻击树模型对系统可能存在的攻击路径进行分析,然后利用模糊层次分析法对叶子结点表示的攻击事件发生的概率进行求解。实验结果证明该方法评估结果比较客观,算法实现简单。文献[28]将攻击树模型与层次分析法相结合并用于评估DDoS(Distributed Denial of Service)攻击对系统可用性的影响。
攻击图方法[29]的思想是站在攻击者的视角采取有向图的方式对攻击顺序和攻击事件可能造成的损失进行模型构建,通过节点和边的逻辑关系枚举并直观展示所有攻击目标网络的场景,反映出网络节点的脆弱性并对重点节点进行防御。根据图中节点和边表达的含义不同,攻击图主要分为状态攻击图[30]和属性攻击图[31]两种。文献[32]提出了一种综合复杂网络理论和攻击图对列车控制系统进行网络安全风险评估的方法。该方法一方面通过对构建的攻击图节点和边的连通性进行分析从而确定恶意攻击对列车控制的影响,另一方面通过攻击图结合网络存在的漏洞来量化潜在攻击的概率。文献[33]采用攻击图对系统攻击行为进行量化评估,首先利用攻击图对网络威胁场景的可能性和组合风险度量进行建模,最后对攻击场景的可能性进行量化。
与基于攻击事件的攻击树模型或攻击图模型不同,Petri网可综合考虑对攻击和防御对状态变化的影响建立评估模型来评估系统。文献[34]将模糊论和Petri网结合起来对电力系统进行网络安全态势评估。实验结果对比了BP神经网络和支持向量机两种方法,基于模糊Petri网的评估方法准确率在3种方法中最高,达到了92.5%,由此可知该方法能够更加准确地对系统运行状态进行评估且态势评估准确率更高。文献[35]提出了一种将Petri网与模糊推理相结合的网络安全风险评估方法,首先利用层次分析法建立指标体系,再对网络系统进行评估,得到系统综合风险等级。
2)基于人工智能理论模型的评估方法。
因为复杂网络拓扑结构具有模糊性和不确定性的特点,而人工智能理论适用于对复杂系统进行建模,因此,专家基于人工智能理论模型提出了一些风险评估方法。目前,应用在风险评估领域的人工智能模型主要有贝叶斯网络、隐马尔可夫模型等。
贝叶斯网络是一种将概率论与图论相结合来建模变量之间的条件独立关系和依赖关系的概率模型。文献[36]提出了一种基于贝叶斯攻击图的模糊综合评价方法,综合考虑了被评估系统的环境因素对安全风险的影响以及对贝叶斯网络的影响,实验结果证明该评估方法适用于评估无线传感器网络系统的风险,而且结果更加客观准确。文献[37]将贝叶斯与攻击图结合用来评估网络状态之间的因果关系,结果证明该分析模型适用于在网络部署阶段进行动态分析。文献[38]利用攻击图构建物联网网络中不同攻击的发生路径,并将模拟攻击中获得的数据集作为贝叶斯网络的参数,最终实现对智能家居物联网网络的风险评估。文献[39]通过基于贝叶斯算法的网络安全风险量化模型对各种威胁源造成的网络安全风险进行分析和量化,利用贝叶斯算法实现客观评估信息的观测节点,结合主观安全威胁等级,实现安全评估的连续性和积累性。文献[40]将贝叶斯与攻击图结合对网络攻击概率构建定量攻击图,然后利用贝叶斯网络动态更新节点状态并预测攻击路径。文献[41]针对来自专家分析的先验知识导致结果主观性较强的问题,将传统的贝叶斯网络与熵权法结合,有效减少对专家评价的依赖,提高了评估结果的客观性。基于贝叶斯网络的风险评估的优点在于可以在评估过程中融合多源数据信息,能够较好地处理不确定性问题,但是该方法只适用节点数量少的网络环境,不适用于大规模网络。
隐马尔可夫模型(Hidden Markov Model,HMM)由马尔科夫链演化而来,是关于时序的概率模型。HMM模型围绕两组状态序列进行建模,其中一组是由隐藏的马尔可夫链生成的状态随机序列,另一组是由各个状态生成观测随机序列,应用到网络安全风险评估领域中可以描述网络安全状态的变化情况和不同状态之间的转移情况。文献[42]将HMM模型应用到工业控制系统网络安全评估中。文献[43]从主机和网络的角度进行风险评估,首先进行风险识别,从基本操作、漏洞和威胁3个维度确定指标体系,然后利用隐马尔可夫模型进行风险计算并评估网络安全风险。文献[44]提出了一种基于HMM模型对目标网络进行建模,并通过对节点相关性和节点重要性建模进而对网络安全风险进行量化的方法。该方法相对于传统方法能更及时发现网络中的异常风险变化情况。文献[45]针对传统的风险评估方法结果准确性不足的问题,通过建立HMM模型和贝叶斯模型来优化风险评估过程,可以提高评估值的准确性。文献[46]建立了基于信息熵和马尔可夫链的移动商务隐私安全风险评估模型,该模型可以在评估隐私泄露风险时提供准确的量化结果,指导用户选择安全的移动商务应用,保护用户的隐私安全。HMM的风险评估方法优点在于可以实时看到系统安全状态的变化,且建模速度快,缺点是建模基于概率统计学, 在实际复杂的网络环境中需要的先验知识规模较大,采集较为困难。
对网络风险评估的研究较多,其中综合评估方法是目前的研究重点,因此本文将其分为基于指标体系和基于模型两类进行总结和分析,如表1所示。
表1 风险评估方法总结Table 1. Risk assessment methods summary
对网络安全评估造成影响的关键因素主要有关联性、评估指标的不确定性以及评估过程的实时性3类,本文从以下3个维度对这3类因素进行讨论和分析。
1)关联性的评估。
网络评估中包含较多指标因素,例如资产脆弱性、资产自身存在的漏洞和攻击行为。这些要素之间相互关联,因此需考虑要素之间的关联性,使评估更符合实际情形。故障树方法主要利用网络系统中攻击行为的关联性来对系统安全性进行分析,但是该方法容易产生组合爆炸问题。攻击树从攻击者的视角出发分析可能的攻击路径,该方法的优点是可以对复杂的攻击场景进行建模,利用概率分析定量评估系统风险,缺点是没有考虑遭受攻击时的防御过程,此时攻击树无法准确描述系统状态的变化。攻击图使用有向图的方式对网络系统状态受到攻击后的变化进行描绘,优点是将攻击行为和系统变化相结合,评估结果更加科学和准确,缺点是构建复杂,无法反映网络整体安全性。针对攻击图/树评估方法只考虑攻击行为的问题,Petri网可综合考虑对攻击和防御对状态变化统进行评估,优点是可以将故障的状态传递过程以直观的图形表现出来,缺点是评估复杂系统时会出现信息缺失的情况。
2)评估指标的不确定性。
网络安全风险涉及了多种因素,这些因素具有模糊性和不确定性的特点,综合考虑这些因素并建立评估指标体系存在一定的困难,因此需要降低这种不确定性。模糊论利用模糊数学可将一些不确定性因素进行定量化,并建立综合评价模型。优点是可解决不确定性问题,将定性分析转化为定量分析,缺点是无法解决指标相互影响带来的权重问题。D-S证据理论是一种处理不确定性的推理方法,适用于建立指标体系时期,可对指标属性中的冗余性元素进行排除。但是证据之间必须相互独立,这与网络系统节点之间存在的关联性相悖,因此该方法具有一定的局限性。灰色理论适用于不完整、样本量小的系统,能够客观地反映出参数的模糊性和不确定性。层次分析法适用于评价体系有分层交错特点的目标系统,将评估问题转化为多层次比较和权重计算问题。层次分析的优点是可将复杂系统分解简化为层次化模型并按照每层设定的权重进行分析,提高了决策的可靠性。但风险评估参数值由专家确定,存在一定的主观性,缺乏统一的权重确定方法。
3)评估的实时性。
网络状态是动态变化的,传统的评估方法多为静态分析方法,无法对动态的网络安全状态进行检测,因此有专家提出了能对系统进行实时评估的风险评估方法。HMM的风险评估方法优点在于可以实时看到系统安全状态的变化,且建模速度快,缺点是建模基于概率统计学,在实际复杂的网络环境中需要的先验知识需求较大,采集较为困难。
网络安全风险评估是网络安全保障体系过程中的一个关键环节,为解决网络安全威胁提供了较多方法和手段。网络安全评估尚存在较多未解决的问题,并且随着越来越多新网络攻击手段的出现,网络安全风险评估技术需要进一步发展。未来需从下述角度开展深入研究。
1)目前在网络安全风险评估领域还没有一部公认的评估标准,因此不同方法对网络风险进行评估得到的结果无法相互比较,对风险等级划分也缺少统一的标准。针对这一问题,在制定网络安全风险评估标准时对国内外网络安全风险标准进行归纳总结,制定出公认的评估步骤和标准。
2)风险评估过程需要考虑较多对评估结果产生影响的因素,例如专家经验在评估过程中的主观性和一些难以量化的模糊性和不确定性的因素,这些因素对评估结果的客观性和科学性会产生一定的影响。因此未来研究需要考虑减少人为因素对评估结果的干扰,使评估结果更加科学、准确。
3)目前的评估方法在面对大规模的复杂网络时易出现路径爆炸问题,难以处理网络中节点和设备数量较大以及各节点之间的互联关系,模型构建难度较大。未来研究应尽量提高评估方法的自动化程度,并可通过评估结果自动进行漏洞修补。
4)现有的评估模型和方法适用性不够广泛,未来应对现有模型和方法进一步完善并和其他学科进行交叉,形成适用性更广且评估效果更好的新型评估模型。
本文首先介绍了网络安全风险评估的定义以及国内外的风险评估标准,其次详细阐述了目前主流的安全风险评估方法,梳理了不同方法的定义、优劣势以及应用范围等要素,然后总结出3类对网络安全评估造成影响的关键因素,并从3个维度对现有工作进行总结和分析,最后提出了未来网络安全风险评估领域的研究计划。