基于威胁传播的复杂信息系统安全风险评估
马刚1,2, 杜宇鸽3, 荣江1,2, 甘家瑞1,2, 史忠植1, 安波1
1. 中国科学院 计算技术研究所, 智能信息处理重点实验室, 北京 100190
2. 中国科学院大学, 北京 100049
3. 中国信息安全测评中心, 北京 100085
史忠植, 研究员,shizz@ics.ict.ac.cn

作者简介: 马刚(1986—), 男(汉), 四川, 博士研究生。

摘要

为评估复杂信息系统安全风险,该文提出了一种基于资产间威胁传播的风险评估方法。该方法将复杂信息系统各资产间的威胁传播路径定义为一棵威胁传播树,通过计算威胁传播树中各结点的期望损失以及威胁传播树出现的概率来对整个复杂信息系统进行风险安全评估。为验证本文所提方法的正确性、可行性,该文选取了一个具有代表性的实例阐述了所提方法在复杂信息系统安全风险评估中的应用。通过实例分析表明基于威胁传播的复杂信息系统安全风险评估方法强调不同结点受到威胁作用概率的不同性,威胁在结点之间的传播性,并且能够提示在不同时间段的重点保护结点。比起传统的孤立结点分析方法更具客观性与准确性,能够很好地指导安全风险管理者为复杂信息系统制定合理的安全保护策略。

关键词: 风险评估; 资产; 威胁传播树
中图分类号:TP309.2 文献标志码:A 文章编号:1000-0054(2014)01-0035-09
Risk assessment of complex information system security based on threat propagation
Gang MA1,2, Yuge DU3, Jiang RONG1,2, Jiarui GAN1,2, Zhongzhi SHI1, Bo AN1
1. The Key Laboratory of Intelligent Information Processing, Institute of Computing Technology, Chinese Academy of Sciences, Beijing 100190, China
2. University of Chinese Academy of Sciences, Beijing 100049, China
3. China Information Technology Security Evaluation Center, Beijing 100085, China
Abstract

This paper presents a risk assessment method based on threat propagation between assets for assessing the risks related to complex information system security. This method describes the threat propagation route between assets as a threat propagation tree, with the risk to the complex information system security assessed by the expected value loss of each node in the threat propagation tree with the probability of each step in the threat propagation tree. The accuracy of this model is evaluated by applying the model to a representative complex information system. The analysis shows that this method represents the different probabilities for different threatened nodes and the threat propagation between nodes to identiby the key protected nodes during different periods. The system is more objective and accurate than the traditional isolated node analysis method and is able to guide security risk managers to formulate reasonable security protection strategies for complex information systems.

Keyword: risk assessment; asset; threat propagation tree

随着科学技术的发展以及信息时代的到来,出现了很多与复杂系统有关的问题。从食物网到生态网、从Internet到World Wide Web、 从生物体中的大脑到各种新陈代谢网络、从大型电力网络到全球交通网络、从科研合作网络到各种经济、政治、社会关系网络等,可以看出这是一个充满着各种各样复杂系统的世界[1,2]

一个典型的复杂系统是由许多结点与连接2个结点之间的边所组成的。其中,结点用来代表真实系统中不同的个体,而边则用来表示个体间的关系。通常2个结点之间具有某种特定的关系则连一条边,反之则不连边; 有边相连的2个结点被看作是相邻的[3]。例如,计算机网络(如图1所示)、 电力网络、社会关系网等等[4]

显然,在信息技术发展与信息网络系统广泛应用的同时,对复杂信息系统安全的风险评估变得尤为重要,是保障信息系统安全运行的关键[5]

现有的复杂信息系统安全风险评估方法比较多,但总的概括起来主要有如下3类[6]: 基于安全监测工具的评估方法,主要用于安全期望不高的评估对象; 基于风险评估技术的评估方法,主要有CORAS、 RSDS、 CRAMM和COBIT; 基于系统综合的评估方法,使用先进的评估理论方法建立风险评估模型进行评估,得出科学合理的评估结果。经过多年的探索与实践,风险评估理论和方法在其他领域已逐渐发展成一套较为成熟的手段和工具,但在信息安全领域,仍旧存在着许多困扰人们的问题[7]

从国内外的研究现状可以看出,一方面,信息系统安全评估标准与方法强调风险评估的必要性,通常采用一些问卷的方式,不能给出定量的分析,缺乏可操作的工程数学方法,导致评估结果存在较大的主观性[8]。另一方面,有些风险评估方法只给出了定量计算方法但实施过于繁琐,且理论研究与实践结合不够紧密,没有很好地与中国的信息化实践相结合[9]

针对以上问题,本文提出的是一种基于威胁传播的复杂信息系统风险评估定量分析方法,通过以图论为基础并结合概率论的相关知识,确定威胁在信息系统中传播时所形成威胁传播树,以计算每种传播树所带来的系统期望风险。

1 复杂信息系统

复杂信息系统是一类子系统数量大、种类多,相互之间有非常复杂的非线性关联关系的信息系统,它具有开放性、复杂性、非线性、层次性、进化涌现性等特点,且子系统之间存在着强耦合现象,不能够将系统分成几个单独部分进行研究[10]。复杂信息系统构成要素一般包括: 资产、威胁、脆弱性、系统拓扑结构。该类系统一般由一系列硬件和软件组成,各个构成要素的定义如下:

资产 对系统具有价值的事物,用 A表示资产的集合。以图1中的信息系统为例,主机(Host)、 服务器(Server)、 路由器(Router)为该系统中的资产。资产还可以根据需要在原有资产的基础上继续细化,如Host是由键盘、鼠标、硬盘和软件等组成的。

系统在运行过程中,一个资产可能处于不同的状态,例如正常状态、被感染病毒、管理员权限被非法获取、系统崩溃等。设 S为系统中资产所有状态的集合。定义映射 W: A×SaR, W( a, s)表示资产 a在状态 s时的价值,资产的价值表现在资产的实体价值与所能提供的服务价值这2方面。资产处于不同状态时实体价值和提供服务的价值有所不同,例如正常状态的路由器可以提供网络服务,而处于系统崩溃状态的路由器则不能提供网络服务,这2种状态下路由器实体价值不变,但其所能提供的服务的价值有所减少。本文假设对于任意 a A, s S, W( a, s)是已知的,这些值可以由系统管理者分析得出。

威胁 可能对资产造成损害的因素,利用 T表示所有威胁的集合。如图1中的复杂系统所面临的威胁可能有缓冲区溢出攻击、恶意代码、人员操作失误等。

处于某一状态 s的任一资产 a面临的威胁可能是由系统中的其他资产传播而来,也可能直接来自系统外部或者资产自身产生(如硬件故障,长时间运行导致内存崩溃,操作人员误运行了病毒代码等)[11]。将通过其他资产传播而来的威胁 t定义为资产的传播性威胁,将直接来自系统外部或者资产自身产生的威胁 t称为资产的原发性威胁。由于复杂信息系统中资产的数量通常较为庞大,而且在一定的时间段内,处于某状态的资产都有发生原发性威胁的可能性,因此在本文中令 η( t|a, s)来表示某一段时间内处于状态 s的资产 a爆发原发性威胁 t T的概率。该原发性威胁值可以根据系统以前运行时各资产在不同状态下爆发原发性威胁的历史记录统计得到。

脆弱性 能被威胁利用的、存在于资产上的弱点,用 V表示所有脆弱性的集合。如图1所示复杂信息系统的脆弱性可能包括操作系统漏洞、应用程序漏洞、硬件弱点、 start_art.html漏洞等[12]

由于资产处于某一状态时有可能暴露出多个不同的脆弱性,因此威胁 t作用于资产 a时, a所处状态不同,则 t可利用的脆弱性也不同。假设威胁 t作用在处于状态 s的资产 a时, t可以利用的脆弱性有多种,但是 t每次作用时仅能利用其中一个脆弱性。因此,记 β( v|a, s, t)表示威胁 t作用在处于状态 s的资产 a上时,利用资产 a的脆弱性 v的概率,且满足

式(1)表示威胁作用在处于状态 s的资产 a上时,利用该状态下所有脆弱性 v的概率之和不超过1。式(1)等于1的情况为状态 s的所有脆弱性都有可能作用成功; 式(1)小于1的情况为处于状态 s时存在不能作用成功的脆弱性。

系统拓扑结构 系统间的资产因访问关系而形成的网络结构,用TSG表示。如图1所示复杂信息系统中的4个资产相互连接而构成的网络结构。复杂信息系统里的资产因访问关系形成的网络结构(即拓扑结构)可用无向图TSG =G( A, E)来描述,其中 A为图的结点集合, A中的一个元素表示复杂信息系统中的一个资产, E=A×A为边的集合, E中的任一元素均为一个关于2个资产的二元组 <ai, aj>,其中 ai, aj A ai aj, 边 <ai, aj>用于表示2个资产 ai, aj( ai aj)间存在的访问关系,威胁就是通过这些关系在系统的各个资产间进行传播[13]

复杂信息系统各个构成要素之间的关系如图2所示。资产拥有脆弱性,脆弱性暴露资产缺点,脆弱性是资产本身的属性,威胁会利用资产的脆弱性对资产造成损害,单纯的脆弱性本身不会对资产造成损害,资产间相互连接构成系统拓扑结构[14]

图2 复杂信息系统构成要素及其相互关系

2 复杂信息系统威胁传播
2.1 资产状态转移

复杂信息系统在运行过程中,威胁 t作用在处于状态 s的资产 a后,使得资产 a以一定概率从原状态向其他状态 s'转变的过程称为资产的状态转移过程。威胁 t作用于资产 a后, a向哪些状态转移依赖于如下3个因素:

1) a的当前状态;

2) 作用于资产的威胁 t;

3) t作用于资产 a时所利用的脆弱性 v

设当威胁每次作用于资产时只能利用资产的一个脆弱性时,如果威胁对资产作用成功,那么资产的状态转移是一个逐步恶化的过程,而且转移到的下一状态一定是一个没有到达过的状态,即资产的状态转移过程不会出现环路。记 δ( s'|a, s, t, v)表示资产 a处于状态 s时, t利用 a的脆弱性 v作用于 a后, a的状态由 s转移到 s'的概率,满足 δ( s'|a, s, t, n) =1。

当一个威胁 t作用于资产 a后,首先判断 a当前所处状态 s, 然后确定当前状态下存在的脆弱性 v, 最后威胁 t以一定的威胁作用概率 β( v|a, s, t)利用资产的不同脆弱性对资产进行作用。若威胁 t对资产的脆弱性 v作用成功,则资产 a的状态 s将以一定的状态转移概率 δ( s'|a, s, t, v)转移到 s'。因此,一个威胁 t作用在处于状态 s的资产 a, 导致其状态转移到 s'的概率 ρ( s'|a, s, t)为: 资产 a处于状态 s时,威胁 t利用资产在该状态下的每一种脆弱性 v的概率 β( v|a, s, t)与威胁 t利用资产在该状态下的每一种脆弱性 v作用于 a导致其状态转移到 s'的概率 δ( s'|a, s, t, v)的乘积之和,也即:

2.2 威胁传播

系统中的资产转移到某个状态后引发新的威胁作用于相邻资产的过程称为威胁传播,如图3所示即为2个资产之间的一种威胁传播形式。

图3 威胁从资产a<sub>4</sub>传播到a<sub>1</sub>的详细过程

图3中,处于状态 s1的资产 a4受到威胁 t3作用后, a4的状态将有可能转移到状态 s2 s3, 如果 a4的状态转移到 s2后,则处于状态 s2的资产 a4将有可能向处于状态 s1的相邻资产 a1发出 t1 t2 t3这3种威胁, a1在受到不同的威胁后将会发生不同的状态转移。从图中可以看出,处于状态 s1的资产受到威胁 t1作用后,其状态将转移到 s2; 受到威胁 t2作用后,其状态将转移到 s3; 受到威胁 t3作用后,其状态将转移到 s2 s3

威胁的传播依赖于复杂系统的拓扑结构,且威胁在传播的过程中,一个威胁导致资产 a状态发生转移后,可能引发哪些威胁作用于相邻资产 a'与如下2个因素有关:

1) a转移后的状态 s';

2) a a'间具体的访问关系。

ξ( t|a, s)表示处于状态 s的资产 a向相邻资产发出威胁 t的概率,且 ξ( t|a, s)≤1。在实际中,一个资产能够向它的相邻资产发出威胁时,表明该资产已经发生了状态转移,而该资产能够发生状态转移也表明它已被其他相邻资产发来的威胁作用成功,也即整个过程是资产因为受到威胁作用而发生状态转移,紧接着该资产在状态转移后又发出新的威胁。

因此,当资产 a受到威胁 t作用,从初始状态 s以概率 ρ( s'|a, s, t)转移到状态 s'时,向相邻资产发出威胁 t'的概率记为 φ( t'|a, s, t), 它由该资产 a受到威胁 t作用时的状态转移概率 ρ( s'|a, s, t)与资产转移到状态 s'后向相邻资产发出威胁 t'的概率 ξ( t'|a, s')的乘积组成,即:

对于任一复杂信息系统,威胁在传播的过程中,都可以将系统里面的结点(资产) A={ a0, a1,…, an}划分为3类(为便于表示以下均将“资产”称作“结点”):

活动结点(active node, AN): 当前时刻受到了威胁作用,并且将产生的新威胁向外传播的结点。

死结点(inactive node, IAN): 已经被威胁作用过的结点,且不再被威胁再次作用。

可激活结点(activatable node, ATN): 网络中还未受到威胁作用过的结点。

此外,假设威胁在传播的过程中,复杂信息系统中的结点还应具有如下特征:

1) 每个资产所拥有的状态 S={ s0, s1,…, sm}种类有限,脆弱性 V={ v0, v1,…, vN}种类有限,且每种状态可以传播多种威胁 T={ t0, t1,…, tM}, 但每种威胁一次只能作用于资产的一个脆弱性。

2) 一个结点发生原发性威胁 tε后,由该原发威胁直接或间接引发的一系列其他威胁在网络的传播过程中,不会有其他原发性威胁发生。

3) 每时刻,活动结点只向相邻的可激活结点传播威胁,当威胁传播成功后,该活动结点立即变为死结点,将不再被威胁作用,而受到威胁作用的可激活结点成为了下一时刻的活动结点。

4) 处于状态 s的活动结点 a受到威胁 t作用后,将以相同概率 φ( t'|a, s, t)向所有相邻可激活结点传播威胁 t'

5) 同一时刻不存在多个威胁同时作用于同一个结点,但允许一个资产发出的威胁同时作用于多个相邻可激活结点。

6) 当系统中不存在活动结点时,威胁传播结束。

在复杂信息系统的工作过程中,原发性威胁 tε有可能以概率 η( tε|a, s)作用于任一结点 a(初始状态为 s), 若结点 a受到原发威胁 tε作用成功,那么该结点的状态 s将会以概率 ρ( s'|a, s, tε)转移到状态 s', 然后以概率 φ( t'|a, s, tε)向相邻可激活结点发出威胁 t', 在此过程中会有3种情况发生:

1) 威胁 t'发出失败,威胁传播到此终止。该情况表明此次爆发的原发威胁只导致了复杂信息系统中的一个资产受到威胁作用。

2) 威胁 t'发出成功,但对相邻可激活结点作用失败,威胁传播到此终止。该情况表明此次爆发的原发威胁 tε仍旧只导致了复杂信息系统中的一个资产受到威胁作用。

3) 威胁 t'发出成功,且对相邻可激活结点作用成功。该情况表明受到原发威胁 tε作用的结点 a状态转移后发出了新的威胁 t'并成功作用于相邻可激活结点,若受到威胁 t'作用成功的结点继续发出威胁作用于其他相邻结点,不断重复这一过程,直到威胁传播在某一结点终止,便形成了一条多结点威胁传播路径。

不失一般性,任一威胁作用在结点上,都会有上述3种情况中的一种情况发生,也即在复杂信息系统中威胁就是通过上述规则从一个结点发出并作用到另外一个结点,或者威胁为何在一个结点终止的情况。

在复杂信息系统拓扑结构(图4a)中,威胁从一个结点传递到另外一个结点,直到威胁传播结束时所形成的各死结点间的连续路径与路径上的不同威胁所组成的有向无环图称作威胁传播树,如图4b与图4c均为威胁 tε t1 t2在4结点网络(图4a)中传播所形成的2棵不同的威胁传播树。在威胁传播树中,原发性威胁 tε直接作用的结点称为树根(如图4b中的结点 a1图4c中的结点 a4均是树根), 受到威胁作用后没有发出新威胁作用于其他相邻结点的这一类结点称作树叶(如图4b中的结点 a3图4c中的结点 a2 a3均是树叶)。事实上,是先有威胁在复杂信息系统拓扑结构中传播,为了方便描述威胁传播和计算传播概率,才根据威胁传播的路径来定义一棵威胁传播树。因此,威胁在威胁树中传播,从树根开始,然后每个结点均是将威胁传递给自己的孩子结点,直到威胁传递到整棵树的叶子结点为止,整个传播过程才能终止。