李雨泽,张中信
(河南大学软件学院,河南 开封 475000)
目前网络安全形势不容乐观,如何保证网络系统的安全成为该领域的热点问题。应对网络系统中不同重要信息值所涉及的安全风险进行定量或定性评估,审查网络面临的风险,及时发现问题,不仅可以掌握网络安全形势,而且可以预测网络的发展趋势,提出防护建议,制定有针对性的防护策略,保证网络的正常运行。研究网络安全风险评估方法的理论和技术,可以为网络安全管理提供有效的支持和辅助决策信息,保证国家信息化进程的健康、有序、可持续发展。
弭乾坤等人[1]通过建立不完全信息条件下的静态贝叶斯攻击防御博弈模型,将其融入信息系统安全风险评估方法中,准确计算信息系统面临的安全风险。刘建峰等人[2]基于入侵者和网络节点的期望收益,给出一种模糊博弈规则,通过对威胁和弱点的分析,量化战略成本效益,建立网络节点的模糊博弈树可以得到纳什均衡,并对捕食者和网络节点的利润函数进行分析,得到模糊博弈规则,确定网络节点的风险等级。
但上述方法未考虑节点任务排队问题,存在的评估时间较长、评估准确率较低的问题。为此,提出基于排队模型的网络安全风险损失评估方法,充分利用支持向量机的优点,能够准确评估网络风险,更及时、更直观地给出网络风险的变化趋势,考虑到一些不确定因素对评价结果的影响,采用层次分析法确定各评价因素的权重值,并通过逼近理想解排序法得到无线网络的安全风险值。所提评估方法的网络安全风险损失评估准确率较高,评估耗用时间较短。
排队模型可以描述为网络中任何一台设备的排队系统[3]。数据源不仅能够为系统提供客户源,而且也能为设备提供一些数据。数据源为设备提供数据后,由服务台对其进行排列处理。在网络模型的任何位置插入标准或用户指定的探针来收集数据和进行统计。该软件可由第三方软件以图形方式显示或输出。
网络拓扑包括网络节点类型、链路类型和网络节点规模。为了便于研究,假设网络节点为任意连接的线路,采用最短路径算法进行节点间的通信路由,并将网络节点抽象简化为一个简单的排队模型[4]。设定数据包的到达过程服从泊松分布,那么数据包按照一定的排队规则进入队列,等待处理器进行处理,直到它可以接收服务为止。在排队论中,泊松过程被称为最简单流,参数λ被称为最简单流的强度,作为数据包的到达率。数据包到达过程{N(t)|t∈[0,E)}用来描述一个参数为λ的泊松过程,可得出表达式如下
(1)
其中,相应的包到达间隔Tn(n=1,2,…)是一组分布函数为负指数分布的独立同分布随机变量簇。
通过数据包排队模型计算出设备到达时间和服务时间的概率分布期望,获取不同网络状态下的网络性能状态。网络系统的资产价值、攻击威胁和系统本身的脆弱性是网络风险的关键因素。因此,为了评估网络系统的风险,需要收集网络状态信息,包括利用入侵检测系统发现威胁,评估网络资产价值,掌握网络节点的脆弱性信息,确保风险分析的内容覆盖整个网络系统。
网络、硬件和软件的中断不会破坏网络和系统,根据网络安全风险评估结果采取相应的网络安全风险评估措施[5]。网络安全风险评估的数学模型如下
网络安全风险级别=f(Z,T,V)
(2)
在式(2)中,f代表网络安全风险损失评估模型,Z代表资产价值,T代表是网络中存在威胁,V代表网络脆弱性。
网络安全风险是随时间变化的,它是复杂的,单独一个模型无法得到很高的精度,需要利用辅助向量机进行网络安全评估,收到的网络安全风险等级[6]。网络安全风险损失评估如图1所示。
图1 网络安全风险损失评估图
如果攻击者发起威胁并利用漏洞,那么攻击会产生风险,攻击会降低机密性、完整性或损坏资产的可用性,攻击会导致损失危机,但这些危机可以通过反制措施加以降低。若攻击者利用漏洞发起威胁,则攻击将产生风险,攻击将降低机密性、完整性或损害资产的可用性。
为了评估安全威胁前后网络性能的变化,需要选择合适的性能指标体系[7]。网络信息安全一般考虑系统内部信息的非法泄露,在信息传输和访问过程中不会被他人非法删除和破坏。网络安全作为国家信息安全的重要组成部分,应与国家信息安全总体要求和部署相一致,坚持主动防御、综合防范的方针,提高网络防护和风险识别能力,加强网络安全评价体系的研究[8]。结合图2的具体内容,建立网络安全损失评估指标体系。
图2 网络安全评估指标体系
安全防护措施能够有效降低系统的风险、脆弱性,并大幅度防范威胁现象。
网络安全风险评估也可以看做是一个分类问题,设定数据集{xi,yi},xi∈Rn,i=1…n,yi∈{-1,1},n作为样本数,yi作为网络安全风险类别[9]。支持向量机是根据结构风险最小化原则将这两种类型尽可能地分开,运算公式为
f(x)=ωTΦ(x)+b
(3)
在这种情况下,ω作为超平面过程向量,b作为偏移距离。
为了能够最大化网络数据学习样本与分类方案的距离,将该问题生成为一个二次优化问题进行运算,公式为
(4)
约束条件运算式即
yi(w·Φ(xi)+b)≥1-ξi,ξ≥0
(5)
其中,c作为惩罚参数。
利用拉格朗日乘子,把支持向量分类问题转化为一个对偶问题[10]。通过求解平面优化问题,得到了判别函数的平面分类。
(6)
其中,αi用来描述拉格朗日乘子。
根据泛函理论,找到了一个满足核函数K(xi,x),它满足替换点积(Φ(x)·Φ(xi))的条件,使支持方向的分类函数成为
(7)
在式(7)内,k(xi·x)所描述的是核函数,采用径向基函数代表支持向量机的核函数,可得出表达式如下
(8)
然后,获取到支持向量机的最优分类平面公式,即:
(9)
f(x)表示网络安全风险的类别。
假设一个无线网络的风险评估产生了m行和n列的评估矩阵,即:X=(xij)m×n。每个评价指标有不同的维度和大小,为避免这些因素对评价结果的影响,应编制评价指标[11],其处理公式如下
(10)
3.4.1 利用层次分析法法确定指标权值
层次分析法比较各指标的重要性,构造判断矩阵,根据判断矩阵计算比较指标相对于评级的相对权重,获得层次相对于评级指标的总权重,按总权重对总值进行合理排序,是处理难以量化变量下多目标决策的有效方法。可以将复杂的问题分解成层次结构,在比原问题简单得多的层次上逐步进行分析,能够定量地表达和处理人们的主观判断。
当建立了无线网络安全风险评估指标后,由专家对所有指标进行配对判断,得到比较判断矩阵[12]。如下式所示
(11)
为了确定比较判断矩阵中的具体值,T.L.Saaty教授提出了1-9的量表。表1显示了每个刻度的含义。
表1 判断矩阵标度及含义
在确定权重时,根据判断矩阵,计算比较矩阵相对于特定标准的相对权重。在层次分析法中,本文用聚集法计算出各指标的权重,如果能通过一致性检验,那么矩阵的最大内在值即wij为基准指数的相应权重。
3.4.2 利用TOPSIS法排序
然后对最优解矩阵X+和最不利解矩阵X-进行定义,两者的表达式如下:
(12)
(13)
式中,J+描述了效益型指标子集,J-则为成本型指标子集。
考虑各项指标的权重大小,通过加权欧式距离计算目标与最佳解和最不利解的距离,其表达式如下
(14)
(15)
(16)
式(16)计算结果影响着无线网络安全风险。当ci的越小时,安全风险系数则越高,如果所有参考对象的评价指标都处在一个最佳状态,那么ci=1,否则ci=0。将被评估的无线网络按照ci值进行降序排列,以此实现对无线网络的安全风险等级划分。
为了验证基于排队模型的网络安全风险损失评估方法的有效性,在Matlab环境下搭建仿真平台,进行实验,实验测试采用的服务器端硬件环境如表2所示。
表2 服务器端硬件环境
实验测试采用的服务器端软件环境如表3所示。
表3 服务器端软件环境
实验数据选用不同的风险等级样本共1200个。选取威胁风险、脆弱性风险和网络安全风险三个网络风险评价指标,分别采用文献[1]方法、文献[2]方法与所提方法对网络中存在的威胁风险评估准确率进行对比,如图3所示。
图3 威胁风险评估准确率对比
文献[1]方法、文献[2]方法与所提方法的网络脆弱性评估准确率对比结果如图4所示。
图4 脆弱性风险评估准确率对比
文献[1]方法、文献[2]方法与所提方法的网络安全风险评估准确率对比结果如图5所示。
图5 网络安全风险评估准确率对比
根据上述三个网络风险评价指标的对比分析可以看出,文献[1]方法和文献[2]方法三个网络风险评价指标的评估准确率均低于80%,而所提方法的三个网络风险评价指标的平均评估准确率均为92%。相比文献[1]方法和文献[2]方法,所提方法的网络安全风险损失评估准确率较高。
为了验证所提方法的网络安全风险损失评估时间,分别采用文献[1]方法、文献[2]方法与所提方法对网络安全风险损失评估时间进行对比,如表3所示。
表3 网络安全风险损失评估时间对比/s
根据表3中的数据可知,文献[1]方法的平均网络安全风险损失评估时间为16s,文献[2]方法的平均网络安全风险损失评估时间为12.7s,而所提方法的平均网络安全风险损失评估时间仅为8.7s,由此可知,所提方法的网络安全风险损失评估时间较短。
在网络安全风险损失评估过程中,当风险事件发生时,应考虑威胁的影响程度和脆弱性风险。为此,提出基于排队模型的网络安全风险损失评估方法。利用支持向量机进行初步判断,通过层次分析法和近似理想解排序法,完成了网络安全风险损失评估。所提网络安全风险损失评估方法具有较高的准确性,能够有效缩短风险损失评估时间。但是,该模型不能完全模拟真实的通信业务,因此系统评估结果仍存在不足。在今后的研究工作中需要改进和拓展。