APP下载

基于贝叶斯网络的等级保护风险评估模型研究

2018-12-25赵一鸣陈晓宇李晓彤

网络安全与数据管理 2018年12期
关键词:贝叶斯概率专家

赵一鸣,谢 炯,王 钢,陈晓宇,李晓彤

(1.内蒙古电力集团蒙电信息通信产业有限责任公司,内蒙古 呼和浩特 010000;2.内蒙古工业大学,内蒙古 呼和浩特 010000;3.内蒙古矿业(集团)有限责任公司,内蒙古 呼和浩特 010000)

0 引言

随着信息安全等级保护测评工作的推进,测评过程中产生了海量的测评数据,但在测评工作结束以后,这些测评数据往往“石沉大海”,没有被有效利用起来。从信息系统等级保护测评数据开始,综合运用定性和定量的方法,将各项测评数据进行转换、计算、分析等处理,运用贝叶斯网络算法对系统进行风险评估[1],可以了解系统中潜在的危害,并针对性地加以识别防范,从而提高系统抗风险强度并进一步保障被测评系统的安全运行。

用概率理论的贝叶斯网络方法来描述不同因素之间的关系,是一种基于有向无环图的概率推理方法,其体现节点间的概率相关性,同时能够较为有效地处理现实生活中的不确定性问题。许多专家都使用贝叶斯网络方法进行风险评估,并应用于交通事故[2]、银行系统[3]、电力供应和大型工程[4]等方面。

1 等级保护和贝叶斯网络

贝叶斯网络对处理现实生活中的不确定性问题有明显的效果,其具有很强的计算能力,能够通过已知信息运算预测未知信息[5],进而形成准确性较高的推理结果。通过贝叶斯网络算法对系统的等级保护测评数据进行分析推理,达成对系统的风险评估。

风险评估过程主要分为以下几个阶段:(1)首先安全测评机构对系统进行等级保护测评,从等级保护测评结果中获得测评数据;(2)通过对数据进行层次分析,确定各节点指标之间的依赖关系以及关系强度,构造出等级保护数据拓扑结构;(3)定性和定量的风险评估方法,首先,通过测评数据中测评项的识别,经过专家经验以及历史数据的统计分析,定性计算出各节点指标的先验概率以及条件概率,然后,通过上述概率定量的计算出各个节点的后验概率,形成贝叶斯网络风险模型;(4)贝叶斯网络因果推理。结合上述模型,确定在系统已出现故障的情况下,通过先验概率、条件概率、后验概率联合推理出导致故障出现的测评项风险概率(即故障定位),其中使用的计算分析方法是贝叶斯网络因果推理算法。随后根据后验概率和风险概率等对被测评系统给出风险评价,使用户可以更加全面地了解被测评系统的安全态势,并给出相应的安全风险化解解决方法。图1所示为风险评估模型研究流程图。

图1 风险评估模型研究流程图

1.1 贝叶斯网络模型的建立

通过已知测评数据的层次拓扑结构以及测评节点之间的关系强度,构建一个以测评项为下层父节点,层面结构和控制点为中间子节点的贝叶斯网络拓扑结构。其中构成模型的最下层是无有向边输入的父节点;构成模型的最上层是无有向边输出的子节点;中间节点按相对应的关系依次排开,并且同一层节点之间相互独立且符合伯努利分布,如图2所示。

图2 贝叶斯网络模型

1.2 模型节点先验概率的确定

根据历史数据或专家主观经验判断得出的各测评项发生的概率被称为先验概率,此类概率未经过实验验证,属于检验前的概率。利用专家经验从资产、威胁、脆弱性三个方面确定先验概率的过程是一个主观模糊的过程,因为没有统一的参考标准,所以结果往往不够准确。根据科学研究中工作人员的语言表达习惯在语言量词和实际数值之间建立了一种相对应关系,通过专家的评价对先验概率的值进行参数确定。将多位专家的结果进行平均分析,就可以基本上确定最终的概率值。

其次由于不同专家的知识程度和经验水平略有不同,导致不同的专家得到的结果正确性有差异,因此在此种情况下,需要对专家的权重进行分析。假设若有z个专家就某参数值n进行分析,记ni,i=0,1,2,3…,z为第i个专家给出的参数值,Wi为第i个专家的权重,

表1为专家权重的判断标准,通过表中计算得出节点先验概率的数值如表2所示。

表1 专家权重判断标准

表2 节点先验概率值表

1.3 条件概率

条件概率表征父节点运行状态对子节点运行状态影响程度,贝叶斯网络采用条件概率矩阵确定上层子节点与下层父节点之间的关系。采用的条件概率是从历史数据中获取变量参数的概率分布,同时按照发生的可能性概率填入表中。表3为图2中岗位设置的条件概率。

表3 条件概率

1.4 联合概率推理

利用当前给定的拓扑结构和节点的状态,通过式(1)所示贝叶斯网络运算公式,计算节点发生问题的概率,形成基于等级保护的贝叶斯网络模型。

(1)

上式即为重要的贝叶斯网络公式,其中P(Li)的值为先验概率,P(Li|R)的值需要根据先验概率P(Li)和观测数据重新修正后得到,被称为后验概率。通过上述先验概率、条件概率得到后验概率值,其中运算过程使用贝叶斯网络算法。

然后,利用上述已经构建完成的贝叶斯网络,可以使用故障诊断理论对贝叶斯网络重新定义,即假设系统发生故障的情况下,故障可能发生节点的概率变化,其中运用的算法是贝叶斯网络因果推理算法,其中算法的伪代码如下所示。

贝叶斯网络因果推理算法伪代码

输入:贝叶斯网络概率结构模型G(包括子节点概率Score、条件概率GL)。确定因果推理中因(即父节点概率变化Fuscore)发生情况;

输出:贝叶斯网络因果推理结果模型。

1、G←贝叶斯网络概率结构模型

2、Sum←0

3、Sumf←0

//反向F的和

4、C←[]

5、Cf←[]

6、Fori←0 to Score.length

7、 do C[i]←0;Cf[i]←0

8、End for

9、Fori←0 to GL.length

10、 do GLocate←PrefixInteger(i.toString(2),Score.length)

//调用函数PrefixInteger(T=0,

F=1),的个数依顺序的二进制变换,与子节点数量同步补零

(T=0,F=1),根据二值逻辑确定条件概率(T和F)的位置分布

11、 B←1

12、 Forj←0 to Score.length

13、 do B←B*Score[j]GLocate[j]

//同为一个父节点的j个子节点概率概率乘积

14、 End for

15、 Sum←Sum+B*GL[i]*Fuscore

//上述概率乘

积与每个条件概率(GL)为T以及父节点T变化的乘积之总和

16、 Sumf←Sumf+B*(100-GL[i])*(100-Fuscore)

//上述概率

乘积与每个条件概率(GL)为F以及父节点F变化的乘积之总和

17、 Fork←0 to C.length

18、 do C[k]←C[k]+B*GL[i]*Fuscore

//子节点为C=T时概率

19、 Cf[k]←Cf[k]+B*(100-GL[i])*(100-Fuscore)

//子节点为Cf=T时概率

20、 End for

21、End for

22、Forn←0 to C.length

C[n]←(C[n]+Cf[n])/(Sum+Sumf)

23、End for

//C[n]即为因果推理中出现的果(由父节点原因引起变化的概率导致n个子节点的概率变化结果)

图3即为构造的贝叶斯网络因果推理风险概率,并由图中概率情况对被测评系统做风险评价。

图3 贝叶斯网络因果推理概率

2 实验仿真

通过上述风险评估过程的计算,下面介绍使用贝叶斯网络对等级保护测评数据进行风险评估的实例,以某电力单位财务部门等级保护测评数据为样本,分别对应用安全、物理安全、网络结构等方面进行风险评估。首先对测评数据的先验概率定性分析,得出如表4所示测评分数的先验概率。

表4 测评分数先验概率

根据等级保护测评数据(如表5所示)生成贝叶斯网络拓扑结构。

表5 等级保护测评数据(部分)

风险评估结果图如图5、图6所示。通过拓扑结构的下层节点测评分数得出先验概率,同时与条件概率得出上层节点的概率值,即为后验概率;假设当已知系统出现故障的情况下各层节点的概率变化值,也即是当系统发生故障即概率值(T=100)时,相应的节点概率变化。

由图5、图6节点概率的变化可以得出如表6所示结果。

图5 贝叶斯网络风险评估(上层)

图6 贝叶斯网络风险评估(下层)

通过对表6的联合概率和故障预测概率分析得出,在系统故障已发生的情况下系统建设管理、系统运维管理以及SQl Server 2008等方面风险发生的可能性加大,同时参考历年标准中定义风险严重程度,如下表7所示,系统建设管理、系统运维管理以及SQl Server 2008方面,需以预警的手段通知被测机构方,使被测机构对整体风险态势有所感知。上述风险评估仅应用于贝叶斯网络拓扑结构的控制点方面,可以更深层次地对最下层节点进行风险运算,使风险评价更加全面准确。

3 结束语

本文主要研究了基于贝叶斯网络方法的等级保护测评数据风险评估问题,提出了相应的计算模型,并根据计算模型进行了实例计算。风险评估的过程主要包括模型构造、定性定量计算、贝叶斯网络计算、贝叶斯网络因果推理。利用贝叶斯网络的不确定推理、条件独立性假设等特性[6],简化了模型的运算复杂度,增加了因果推理计算,比较分析风险结果,具有一定的应用价值。但需要指出的是,由于风险的量化问题,评估过程还存在一定的不确定性,下一步研究的重点是如何更好地对测评数据进行量化,从而使风险评估过程更加科学高效。

表6 风险概率结果

表7 风险严重程度表

猜你喜欢

贝叶斯概率专家
第6讲 “统计与概率”复习精讲
致谢审稿专家
第6讲 “统计与概率”复习精讲
概率与统计(一)
概率与统计(二)
基于贝叶斯解释回应被告人讲述的故事
基于贝叶斯估计的轨道占用识别方法
请叫我专家
基于互信息的贝叶斯网络结构学习
专家面对面