基于STAMP模型的风险评估行为安全指标体系*
2022-08-20王克克郭莉丽郎静宏
王克克,郭莉丽,郎静宏
(1.中国航天系统科学与工程研究院,北京 100037;2.中国空间技术研究院,北京 100094)
1 引言
确定信息系统中资产受损或遭受破坏而导致整个信息系统出现损失情况的行为称为信息系统风险评估,它衡量信息系统潜在威胁、脆弱性以及由此带来的风险大小[1]。CC系列标准(The Common Criteria for Information Technology Security Evaluation,信息技术安全评价通用准则)和GB系列标准(The National Standard,中国国家标准)中的典型信息系统风险评估标准规定了风险评估在技术和管理方面的要求以及检测方法、评判方法[2],但仍然存在一些未解决的关键问题,如信息系统自身复杂性导致的信息系统风险评估复杂性,以及信息系统风险评估中组件与整体安全性的关系[2 - 4]。当前学术界主要对信息系统风险评估方法感兴趣,相关方法可大致划分为如下8种:基于知识的方法、基于概率论的方法、基于攻击树模型的方法[5,6]、基于符号验证的方法[7 - 10]、基于层次分析的方法[11,12]、基于模型的方法[13,14]、基于模糊逻辑的方法[15,16]和基于图论的方法[15 - 19]。这些风险评估方法关注的重点为资产损失或完善风险评估方法,未从业务风险角度看待问题。因此,李斌等[1]提出了面向业务的风险评估模型,从业务损失角度来量化风险。
然而当前学术界通常认为有了良好的风险评估方法就可以得到真实可靠的评估结果,而未充分考虑到风险评估行为自身对评估结果的影响。考虑到事故致因模型与本文研究内容的相似性,其研究成果为本文研究提供了诸多有益参考。端木京顺[20]提出的基于reason的理论,张晓燕等[21]提出的基于物元分析的理论,王永刚等[22]提出的基于风险管理的理论和刘军等[23]提出的基于模糊综合评价的模型等,均从人类、环境、机器和管理等传统的若干方面分析事故发生源头并构建安全指标体系,为事故预警和风险评估提供依据。上述研究成果虽然取得了相当有效的成果,但仍存在适用领域狭窄或未充分考虑组件之间交互等问题。
本文主要贡献在于:(1)构建了完整的风险评估行为STAMP(System-Theoretic Accident Model and Process)模型;(2)使用STPA(System Theoretic Process Analysis)分析方法对风险评估行为进行了安全性分析;(3)利用STAMP模型构建了风险评估行为安全指标体系;(4)采用改进AHP(Analytic Hierarchy Process)算法筛选出安全指标体系中的重要因素。
2 STAMP模型
基于系统理论的事故致因模型STAMP是由Leveson[24]于2002年提出的,该模型认为在一个复杂的动态分层社会-技术系统中,安全性由系统各层的控制回路实施适当的安全约束来保证,安全性是系统的一种涌现性。复杂系统具有多个层次结构,每个层次结构通过对下一个层次施加约束来控制较低层次,组件、事件发生、事件顺序和环境上下文之间都存在相互作用[24]。STAMP模型认为安全是一个故障问题,当然也可以将事故简化为一个线性事件链,事故发生的原因在于各层次行为缺乏安全约束[24,25]。因此,STAMP模型关注系统整体的涌现性,将安全性问题作为一种控制问题,认为单个组件的可靠性并不是全部致因因素,并发复杂动态过程和不安全交互作用才是安全性问题的致因因素。
STPA基于STAMP模型和系统论,是一种危险性分析技术。图1是基于STAMP模型的反馈控制回路,参照图1即可对系统安全性进行系统性分析。
Figure 1 Feedback control loop based on STAMP model图1 基于STAMP模型的反馈控制回路
从图1的反馈回路可以看出,整个系统可以保持动态平衡,安全是系统的涌现状态。在此基础上,当作用于系统和其组件的约束条件被满足时,系统即可保持安全性。由此可知,无论系统设计还是系统修改完善,如果不能够保持实施安全约束,就难以让系统安全运行。事故被认为是带有缺陷过程运行的结果,无论是软硬件、人员操作还是环境间的相互作用,一旦违反系统安全约束,就可能导致系统事故。
当前STAMP模型已成功应用于航空航天[26]、国防、能源、化工、医疗和交通运输[27]等领域,尤其在现代复杂系统的安全控制与分析中得到了广泛应用。
STAMP模型还可以通过控制复杂的动态过程来评估安全问题。本文依据STAMP模型及安全分析过程,结合行为流程和信息交互状况,构建了完整的风险评估行为STAMP模型,进而进行STPA安全性分析。
3 改进AHP算法
作为一种经典的多属性决策方法,层次分析法AHP结合定性分析和定量分析,在多目标决策方面达到了非常好的效果,因而在多个领域应用广泛。本文采用改进AHP算法简化传统AHP算法运算过程,通过减少指数间比较次数来大幅度降低指标重要性判断的模糊性[28]。改进AHP算法具体步骤如下所示:
步骤1分析各因素关系,构造指标体系,将各指标因素划分为目标层、准则层和指标层。
步骤2采用三标度法(0,0.5,1)对比同一层级2个因素之间的重要性,设比较矩阵为A,A=(aij)n×n,A中各元素采用三标度法赋值,如式(1)所示:
(1)
Figure 2 STAMP model of risk assessment behavior图2 风险评估行为STAMP模型
计算基点比较标度bm,bm=rmax/rmin。
判断矩阵B中各元素bij如式(2)所示:
(2)
从式(2)可见,bii=1,bij=1/bji。
步骤4为减小判断误差,满足近似要求,使得判断矩阵合理,改造判断矩阵B为一致性矩阵C,C=(cij)n×n,对于任意i,j=1,2,…,n,cij如式(3)所示:
(3)
步骤5计算各因素在其所在层级的相对权重。采用方根法计算判断矩阵B最大特征值所对应的特征向量,并对该特征向量进行归一化处理。
步骤6计算各层级因素指标对系统目标层的合成权重。准则层n个影响因素对目标层的相对权重分别为W1,W2,W3,…,Wn,指标层因素对应准则层的相对权重分别为w1,w2,w3,…,wn,各因素的合成权重排序后如式(4)所示:
(4)
根据合成权重排序即可得出各影响因素权重,然后进行各指标重要性排序。
4 风险评估行为模型构建
按照信息系统风险评估行为涉及到的各类人员要素和工作流程,可将风险评估行为模型划分为运行维护系统和安全评估系统,对信息系统开展风险评估工作是这2个系统的核心功能。本文构建的信息系统风险评估行为控制模型如图2所示。
在安全评估系统中,以风险评估机构为主体的评估指挥者构成控制器,评估小组为执行器,信息系统为被控对象,而检测工具、检测表单和被测信息系统反馈信息起到监测反馈作用,作为反馈器向评估指挥者反馈信息系统安全状况。评估小组与信息系统之间也构成一个小的反馈回路。同时,安全评估系统中也存在外部干扰因素,如意外断电、地震和火灾等不可抗拒力因素等。
运行维护系统以运行维护指挥者构成控制器,运行维护小组构成执行器,信息系统为执行对象,而反馈器向运行维护指挥者反馈信息系统运行状态。在本文中进度控制、质量控制和技术分析等形成反馈器。运行维护小组和信息系统之间构成一个完整回路,而工具、软硬件等因素可构成运行维护的外部因素。
安全评估系统和运行维护系统2个控制回路分别以评估指挥者、运行维护指挥者为控制器,分别具有相应的控制模型;评估小组和运行维护小组也都需要分别进行培训,培训活动也可单独构成反馈回路。
5 风险评估行为安全性分析
STPA分析方法认为组件失效、系统外部干扰、系统组件间交互和单个系统组件的危险行为,才是造成系统安全事故发生或危险的原因[24],具体如图3所示。
组件失效可分为控制器失效、执行器失效、被控对象失效和传感器失效。系统外部干扰可分为系统外部扰动和多控制器交叉控制产生的冲突[24,25]。本节首先分析控制器、执行器、传感器和被控对象之间的相互关系,从而分析出各系统组件间的交互关系,最后分析单个系统组件的危险行为,如图3所示。
Figure 3 Types of control defects that cause danger图3 导致危险的控制缺陷种类
5.1 组件失效
5.1.1 控制器失效
控制输入及其他相关外部输入信息源、控制算法和过程模型的缺陷,导致了系统安全控制行为的不当、失效或缺失[24,25]。
对于图2所示的信息系统风险评估行为模型而言,评估指挥者和运行维护指挥者是控制器。任务类型、其他任务规划等共同构成了主要的外部输入。工作经验、经营决策和安全意识等体现了各指挥者的管理水平,也就是如图3所示的控制算法。指挥者的工作经验、培训经历和掌握程度等要素均在控制模型的各类计划方案和应用预案中有所体现。
5.1.2 执行器失效
控制器发出准确及时的控制指令,但执行器不一定能够执行成功,不可否认会出现执行器执行失效的情况,由于本模型中的执行器为评估小组和运行维护小组,2个小组均由一人或多人组队构成,应当考虑到人工控制器会受到人类心智影响,从而导致执行失效。
5.1.3 被控对象失效
信息系统是本模型中的被控对象,信息系统的可控状态就是指信息系统所发生的事件或现象均处于可控范围。
5.1.4 反馈系统失效
作为一个根据STAMP模型构建而来的正反馈控制模型,一旦反馈失效,控制器收到的输入信息就会产生误差,变得不准确、不完备,控制器难以给出正确的调整指令,从而导致控制过程失效。
5.2 外部干扰
在控制回路的传递过程中,外部干扰往往导致安全约束丢失、延迟或错误的情况,最终形成事故或危险。本模型的外部干扰因素一是安全评估系统中对评估小组和信息系统被评估阶段的扰动(如意外断电、地震和火灾等不可抗拒因素等);因素二是运行维护系统在评估阶段存在工具、软硬件设备保障是否充分、运行维护任务的难易程度以及运行维护环境恶劣程度对运行维护任务的影响等。
5.3 组件间交互
STAMP模型并不认为组件失效是事故发生的唯一原因,系统性因素才是其中的关键。从图2中可以发现,安全评估系统中的指令传递、操作信息完整性、反馈信息准确性等,以及运行维护系统中运行维护审批流程传达、操作指令下达、实施准确及时程度和问题及时上报等,均属于组件交互因素。交叉冲突、重叠或遗漏等发生在控制器边界区的不正常情况也会造成安全事故。
5.4 单个组件危险行为
即便各组件均不失效,若发生评估小组成员违规操作、信息系统发生意外故障、运行维护小组成员忘记审计日志等单个组件的特定行为,也可能使系统发生事故或危险。该因素也被视为组件失效行为。
6 安全性指标体系构建
根据信息系统风险评估行为控制模型和上述STPA安全性分析,可构建出对应的安全性指标体系,如图4~图6所示。
Figure 4 Security index system of risk assessment behavior based on STAMP model (component failure factors F)图4 基于STAMP模型的信息系统风险评估行为安全指标体系(组件失效因素F)
Figure 5 Security index system of risk assessment behavior based on STAMP model (external interference factors U)图5 基于STAMP模型的信息系统风险评估行为安全指标体系(外部干扰因素U)
Figure 6 Security index system of risk assessment behavior based on STAMP model (component interaction factors C)图6 基于STAMP模型的信息系统风险评估行为安全指标体系(组件交互因素C)
本文按照系统控制理论,从组件失效、外部干扰和组件交互3个维度考虑对信息系统风险评估行为的影响,构建合理、全面、有效的安全指标体系。该体系可用于指导信息系统风险评估行为。组件指标分为运行维护指挥系统、运行维护小组、信息系统、运行维护监测、评估指挥系统、评估小组和评估监测等7类组件。
下面以风险评估前的准备工作为例,论述风险评估行为的安全性指标体系建设,其中共涉及如下组件:运行维护指挥系统、运行维护小组、运行维护监测、评估指挥系统、评估小组和评估监测。在启动风险评估之前,各组件分别需要完成如下准备工作:
(1)运行维护指挥系统:熟悉信息系统建设、变更历史和当前信息系统覆盖范围,知悉内部软硬件设备、安全保密措施,制定风险评估计划、启动会与总结会流程,以及安排风险评估陪同人员与应急整改计划等。
(2)运行维护小组:撰写与提交风险评估申请,知悉风险评估计划,准备软硬件设备台账、安全保密产品台账、应用系统台账,绘制网络拓扑图等,保持信息系统正常运行,修复发现的安全缺陷,修订安全管理制度、策略与规程。
(3)运行维护监测系统:检查监测系统设备有效性,检查应急响应与告警机制有效性。
(4)评估指挥系统:制定与下达行程计划,审阅信息系统风险评估申请资料,申明风险评估工作纪律等。
(5)评估小组:知悉行程计划,深入了解信息系统风险评估申请材料与风险评估任务的内容和工作强度等,准备检测表单、软硬件检测设备等。
(6)评估监测:了解风险评估计划,把握重难点技术标准,以及检查通报其他应交代的情况。
7 各因素相对权重排序
本文采用改进AHP算法比较各因素相对权重,改进AHP算法简化了传统AHP算法运算过程,通过减少指数间比较次数来大幅度降低指标重要性判断的模糊性[28]。
本文通过查阅文献,调查信息系统风险评估检测人员,以及征询专家意见,确定各因素相对重要性,按照三标度法(0,0.5,1)分别对组件失效因素、外部干扰因素和组件交互因素构造比较矩阵。
7.1 组件失效因素
组件失效因素比较矩阵如式(5)所示:
(5)
以准则层因素为例,对比较矩阵F按行求和计算,获得rmax、rmin与bm,应用数学变换依次将上述比较矩阵F转化为判断矩阵,然后将判断矩阵转化为一致性矩阵,最后采用方根法求得一致性矩阵的特征向量W,再将W转化为归一量化后的特征向量。
采用如上步骤获得指标层各因素的归一量化后的特征向量并通过加权组合,得到相对于目标层F的权重总排序,综合上述数据可知最重要的10个影响因素的权重值排名如表1所示。
Table 1 Weight value ranking of component failure factors表1 组件失效因素的权重值排名
7.2 外部干扰因素
外部干扰因素的比较矩阵如式(6)所示:
(6)
经过如7.1节相同的计算步骤后,得到最重要的4个影响因素的权重值排名如表2所示。
Table 2 Weight value ranking of external interference factors表2 外部干扰因素的权重值排名
7.3 组件交互因素
组件交互因素的比较矩阵如式(7)所示:
(7)
经过如7.1节相同的计算步骤后,得到最重要的7个影响因素的权重值排名如表3所示。
Table 3 Weight value ranking of component interaction factors表3 组件交互因素的权重值排名
7.4 结果分析
组件失效因素指标层中10个最重要因素的总权值达到了70.12%;外部干扰因素指标层中4个最重要因素的总权值达到了83.62%;组件交互因素指标层中7个最重要因素的总权值达到了80.60%。
在准则层影响因素中,对于“组件失效因素”而言,各因素从高到低分别是“信息系统”“运行维护小组”“评估小组”“评估监测”“运行维护监测”“运行维护指挥系统”和“评估指挥系统”,信息系统本身的安全状态尤其重要,运行维护小组保障信息系统处于高安全状态才更有可能取得真实可靠的风险评估效果;对于“外部干扰因素”而言,“安全评估系统”的影响远远高于“运行维护系统”,其中评估标准的合理化程度受到国家及行业相关法律法规与标准等影响,同时也受到行业内专家学者、资深从业者个人意见影响,其重要程度远超过其他各因素;对于“组件交互因素”而言,各因素从高到低分别是“信息系统与运行维护监测系统”“运行维护小组与信息系统”“信息系统与运行维护监测系统”“运行维护系统与运行维护小组”“运行维护监测系统与运行维护指挥系统”“运行维护监测系统与评估指挥系统”“评估指挥系统与评估小组”和“评估小组与信息系统”,其中“信息系统与运行维护监测系统”所占权重最高。
8 实验分析
以衡量外部干扰因素对风险评估行为造成的影响为例,首先建立如表4所示的分级指标。
对某军工企业单位办公网络进行风险评估,选择5个不同人员对评估行为进行调查分析,得到的结果如表5所示。
从各指标的重要性排序和表5的分析结果可知,该军工企业单位风险评估过程中,外部干扰因素的影响处于良好状态,未对风险评估行为造成显著影响。
Table 4 Classification index of influence degree of external interference factors表4 外部干扰因素影响程度分级指标
Table 5 Classification index parameters of external interference factors in risk assessment of a military enterprise表5 某军工企业单位风险评估过程中外部干扰因素分级指标参数
9 结束语
如reason等传统的安全性分析方法认为,人类、机器、环境和管理等因素是导致事故发生的原因,但人类行为复杂多变,组件交互行为有不确定性,传统安全性分析方法未充分考虑到这些因素,因而在本质上存在较显著的安全缺陷。
离散化、不精确的传统安全性分析方法在评估指挥、评估监测、运行维护指挥和运行维护监测等方面存在的问题,对快速进行事故致因分析非常不利。本文依据STAMP模型得到信息系统风险评估行为模型,依据STPA分析得到各个系统组件失效、外部干扰、组件交互3方面因素的安全性指标,涵盖导致信息系统风险评估发生事故的各种可能场景,以风险评估前的准备工作为例,指标体系细化到各组件,增加的外部干扰和组件交互因素体现了其全面性,比传统安全指标更有针对性。本文采用改进AHP算法筛选出上述指标体系中的重要因素,对指导风险评估活动具有重要参考价值。
本文采用STAMP模型构建信息系统风险评估行为安全指标体系,能够更加合理、全面、有效地反映信息系统风险评估行为的安全问题,为构建安全指标体系提供了一种新思路。该指标体系为进一步结合系统工程思想,更有效地开展信息系统风险评估工作提供了重要思路。