任远芳 牛坤 丁静 谢刚
文章编号 1000-5269(2024)01-0103-07
DOI:10.15958/j.cnki.gdxbzrb.2024.01.16
收稿日期:2023-05-10
基金项目:贵州省省级本科教学内容和课程体系改革资助项目(2022&25);贵州省科技计划资助项目(黔科合支撑[2023]一般371);贵州大学引进人才科研项目(贵大人基合字2022[21])
作者简介:任远芳(1987—),女,助理实验师,硕士,研究方向:多媒体教室、教育技术、信息安全,E-mail:835705116@qq.com.
*通讯作者:任远芳,E-mail:835705116@qq.com.
摘 要:為改善信息安全风险评价的精确度,利用改进的粒子群算法,提出了一种新的优化回归型支持向量机的信息安全风险评估方法。首先,通过模糊理论对信息安全风险因素进行量化预处理;其次,经过预处理后的数据输入到回归型支持向量机模型中;再次,利用改进的粒子群算法来优化和训练回归型支持向量机的参数,得到了优化后的信息安全风险评估模型;最后,通过仿真实验对该模型的性能进行验证。实验结果表明,提出的方法能很好地量化评估信息系统风险,提高了信息安全风险评估的精确性,是一种有效的评估方法。
关键词:信息安全;风险评估;模糊理论;回归型支持向量机;粒子群算法;参数优化
中图分类号:TP309
文献标志码:A
随着网络化和信息化的日益进步,网络安全事件层出不穷。2021年1月3日,国外安全团队cyble发现有人出售中国公民信息。紧接着,1月26日,巴西数据库泄露。以上安全事件大都是违法分子利用一些系统的漏洞进行入侵和攻击所导致的。可见,如何保证网络安全是长期以来的重要探讨课题。近年来,针对网络安全方面,新的法律法规、工作指南陆续发布。2021年8月,《中华人民共和国个人信息保护法》正式公布。2023年7月,中国信息安全测评中心发布了《安全可靠测评工作指南(试行)》。由此可见,做好安全事件的预防显得尤其重要,也很有必要。信息安全风险评估是其中一种有效的预防方法。目前,对信息安全风险评估研究,引起了国内外不少学者的关注,对此提出了众多评估方法。最为人们所熟知的有模糊数学[1]、马尔可夫链[2]、BP神经网络(BP neural network, BP-NN)[3]、小波神经网络[4]等方法。但是由于以上的风险评估具有非线性、不确定、小样本等特性,如果只采用以上某一种模型,会存在局限性,导致出现了不少问题。如仅采用模糊数学等传统的数学模型进行评估,存在的问题有具有一定的局限性、缺乏自适应、操作较繁琐、缺乏自学习等。而神经网络虽然在非线性问题处理上有一定的优势,但却存在学习样本多、易于陷入局部极小值、过拟合等缺点。通过引入支持向量机(support vector machine,SVM)[5],能够很好地弥补神经网络的不足,SVM已成功地应用于信息安全风险评估 [6]。因此,本文为了更好的对信息安全进行评估,引入了回归型支持向量机(support vector regression, SVR)。为了保证SVR的性能,必须对其参数选取严格把控。为了获取精确的、适宜的参数,又将引入了粒子群(particle swarm optimization, PSO)算法。这种算法本身的结构较为简单,收敛速度快,属于智能搜索算法。与此同时,也存在一些缺点,比如过于早熟,容易陷入局部最值等。
鉴于此,为了能够精确地、科学地对信息安全进行评估,本文将模糊理论、改进的PSO算法和SVR这三者的优点相结合,提出了一种优化的SVR的信息安全风险评估模型。并通过模拟仿真实验,验证此模型的性能较好。实验结果表明,该模型能够精确地评估信息安全的系统性风险。
1 信息风险评估
信息安全风险评估是指通过分析信息系统受到的威胁,从而识别信息系统的脆弱性,综合评估信息系统的风险,并提出相应的防护对策和整改措施[7]。信息安全风险评估主要包括资产识别、威胁识别和脆弱性识别三个基本要素。对信息系统进行较为精确地安全风险评估时,确定其风险等级的一个重要过程就是计算风险值。计算风险值(value at risk,Var)的公式如下:
Var=G(A,T,V)=G(L(T,V),F(Ia,Va))(1)
式中,G为信息安全风险的计算函数;A为资产;T 为威胁;V为脆弱性;L为威胁利用资产的脆弱性造成安全事件发生的可能性;F为安全事件发生后造成的损失程度;Ia为安全事件所作用的资产价值;Va为脆弱性的严重程度。
通过对公式(1)分析可以得知,G是一个复杂的函数,反映的是非线性关系。信息安全风险值是信息风险评估的重要阶段,对整个评估结果有重要影响。
2 基于改进PSO算法优化SVR的信息安全风险评估模型
2.1 输入量的模糊处理
由于SVR只适宜处理定量数据,无法处理定性数据,而信息安全的风险因素具有主观性、不易确定。将风险因素直接输入SVR进行学习和训练是不合适的。因此,本文要量化风险因素,可采用模糊理论对其做量化处理,将处理后的数据作为SVR的输入。具体的实现步骤如下[8]:
1)建立影响信息系统的因素集合。对信息系统的资产、威胁和脆弱性展开分析,找出影响信息安全的风险因素。并将影响因素组成一个集合,即信息系统的影响因素集U={u1,u2,…,un}。
2)应用德尔菲法进行风险评价时,必须对风险因素进行分析,并将其分为m级,评判集为V={v1,v2,…,vm}。
3)构建隶属度矩阵R。通过专家组成的评判小组评价,根据专家意见,构造出的模糊映射如下:
f:U→F(V)(2)
ui→f(ui)=(ri1,ri2,…rim)∈F(V)(3)
其中,f表示风险因素ui隶属于某个评语的概率;F(V)表示评判集V上的全体模糊集。
假设风险因素ui对评判集V的隶属向量为Ri={ri1,ri2,…,rim} (i=1,2,…,n)。由隶属向量Ri可以求得隶属度矩阵R。
4) 对评判集V中的各评价指标,赋不同的权重[9]。假设权重分配集为A={a1,a2,…,am},权重是按照评语的高低进行分配,并且权重的总和为1,即∑mi=1ai=1。由模糊变换公式计算可以得到:
B=ART(4)
其中,B表示各信息安全风险因素在某一指标下的权重,反映了风险因素的评价值,并且其值的大小处于(0,1)之间,可以作为SVR的输入量。
2.2 改进后的PSO-SVR模型
2.2.1 SVR模型
支持向量机不仅能解决分类问题,而且能进行回归拟合等,具有广泛的应用前景。支持向量机是将 SVM用于回归估计的一种方法。
支持向量机在回归估计方面的应用就是SVR模型。假设具有m个样本的样本数据集为{(xi, yi), i=1,2,…,m},其中,xi=[x1i,x2i,…,xki]T为第i个样本的输入列向量,yi为输出值。SVR的基本原理是利用一种非线性映射(也就是输入空间到输出空间),把输入数据x映射到高维特征空间E,然后进行线性回归。其线性回归函数的公式如下:
f(x)=w·Φ(x)+b(5)
其中,b、w分别表示为偏置量、超平面的权值向量。一般情况下,SVR的损失函数为线性不灵敏损失函数,其函数的表示如下:
Lε=f(x)-y-ε,f(x)-y≥ε
0,f(x)-y<ε (6)
其中,f(x)、y分别表示为回归函数的预测值、真实值。
在回归函数中,对 w,b的估计可以通过使目标函数最小化来获得,其公式如下[10]:
min{12‖w‖2+C∑mi=1(ξi+ξ*i)}(7)
s.t.yi-w·Φ(x)-b≤ε+ξi
w·Φ(x)+b-yi≤ε+ξ*i
ξi≥0,ξ*i≥0(8)
其中,C表示惩罚因子。其值越大,即会对大于Lε的数据惩罚越大。ξi和ξ*i表示松弛变量,ε规定了回归函数的误差要求。
可引入拉格朗日函数,将其转化为对偶形式,如下所示:
max[-12∑mi=1∑mj=1(αi-α*i)(αj-α*j)K(xi,xj)-
∑mi=1(αi+α*i)ε+∑mi=1(αi-α*i)yi](9)
s.t.∑mi=1(αi-α*i)=00≤αi≤C0≤α*i≤C (10)
其中,K(xi, xj)表示核函数;αi和α*i表示拉格朗日乘子。
根据如上的对偶计算公式,可求得回归函数,如下:
f(x)=∑mi=1(αi-α*i)K(xi,x)+b(11)
在SVR模型中,其泛化能力、预测精密度与选择的参数密切相关。参数优化本身就是一个不断寻找优化解的过程,可采用群智能优化模型对参数进行优化,由此得到SVR模型的最优参数。本文构建的SVR模型包含的参数属于径向基核函数的一部分,其中惩罚因子C和核参数σ对该模型的影响最为重要。通过参数优化,寻求最佳参数,并将优化后的模型用于评估信息安全风险程度,以提高评估的精确性。
2.2.2 PSO算法
PSO算法[11]是由Kennedy 、Eberhart 提出的优化算法。这个算法主要是用来求解最优化问题的,它的基本原理是群智理论,其基本思路为将待求解的问题设为一组解,并将其描述为一组粒子,以每组粒子中的每个粒子为一种可行解。每个粒子的极值Pbest代表它所经过的最佳位置,即寻找到的最优解。粒子群体全局极值Gbest代表当前整个粒子群中最好的粒子位置,也就是当前群发现的最优解,粒子在所求解的空间内作运动,通过追踪Pbest和Gbest来更新个体的位置,每一次粒子的位置发生变化,都需要计算出相应的适应度,将计算出的新粒子与Pbest、Gbest这三个适应度值相比较并更新Pbest和Gbest。粒子i更新速度和位置的公式如下:
vij(t+1)=wvij(t)+c1R1(pij(t)-xij(t))+c2R2(pgj(t)-xij(t)) (12)
xij(t+1)=xij(t)+vij(t+1)(13)
其中,i = (1, 2,…,n);j = (1, 2,…,D);n表示粒子的個数;D表示搜索空间的维数;vij表示粒子的速度;xij表示粒子的位置;w表示惯性权重,为常数;c1和c2表示学习因子;R1和R2为[0, 1]之间的随机数;pi表示粒子i的最佳位置,pg表示整个群体中所有粒子i的最佳位置。
2.2.3 优化后的SVR参数
标准PSO算法存在一定的缺陷,一是容易出现过于早熟且收敛;二是非常容易陷入局部的最优解。为了解决该算法的以上问题,需改进PSO算法。通过遗传算法中的交叉操作可以让后代粒子继承双亲粒子的优点,增强对粒子间的区域搜索能力。而遗传算法的变异操作则可以增加粒子的多样性,可以使粒子避免早熟收敛,能够更好地找到全局最优解。为此,本文将遗传算法的交叉操作以及变异操作引入到PSO算法中,对PSO算法进行改进。采用改进的PSO算法对SVR的参数进行优化选择,构建改进的PSO-SVR模型。并将该模型应用于信息安全风险评估。
改进的PSO算法优化SVR参数的具体实现步骤如下:
1) 初始化。首先,随机产生 M个粒子,其中每一个粒子都包含C、σ这两个参数。假设需求解的总体样本集(即种群),简称为U。需初始化如下参数:粒子的初始速度vi;粒子的初始位置xi;算法的最大迭代次数N;收敛精度δ。
2) 对每个粒子进行解码,并将其用作SVR的训练参数,进行学习,训练样本。最终求出各粒子的适应度,它的适应度函数,是一个与所有样本量的误差平方和倒数的线性函数。如公式(14)所示。由此可知,若误差较小,那么相应的适应度值就较大,即适应性就较好。
F=k∑Hi=1(ti-yi)2+d(14)
其中,F为适应度函数;k、d都为常数;H为样本的个数;yi表示为SVR的预测风险值;ti表示为实际的风险评估值。
3) 种群每次更新后,求出粒子群的平均适应度值Favg,如公式(15)所示。将适应度值大于或者等于Favg的适应度值求平均得到F′avg。将适应度值小于Favg的适应度值求平均得到F″avg。将种群U分成3份。适应度值大于或者等于F′avg的粒子为子种群U1,适应度值小于F′avg并且大于或者等于F″avg的粒子为子种群U2,适应度值小于F″avg的粒子为子种群U3。
Favg=1M∑Mi=1Fi(15)
4) 引入遗传算法的操作。由于子种群U1具有较优的适应度,使用公式(12)和公式(13)来更新粒子的速度和位置。通过应用遗传算法,对子种群U2进行交叉操作,随机地进行两两交叉配对,同时利用交叉概率pc来进行交叉操作。
5) 对粒子i和粒子j的速度进行交叉操作的公式如下:
vi(t+1)=θ1×vi(t)+(1-θ1)×vj(t)vj(t+1)=(1-θ1)×vi(t)+θ1×vj(t) (16)
对粒子i和粒子j的位置进行交叉操作的公式如下:
xi(t+1)=θ2×xi(t)+(1-θ2)×xj(t)xj(t+1)=(1-θ2)×xi(t)+θ2×xj(t) (17)
其中,θ1和θ2为[0, 1]之间的随机值。经交叉操作后,将子代和父代的粒子的适应度进行对比,选择适应度较高的粒子进行后续迭代。对于适应度较差的子种群U3,利用变异概率pm对其进行变异操作。
6) 更新个体极值与群体全局极值。经过步骤4)的操作后,将计算出的新粒子与Pbest、Gbest的适合度值进行对比。当新粒子比Pbest的适应度更好时,就会对原Pbest进行更新,并对Pbest进行优先位置赋值。
7) 进行重复迭代。重复上述步骤2)到步骤5),直至下列条件得到满足(即目标函数达到收敛精度δ或者迭代次数达到预设的最大次数N),结束迭代。通过以上多次训练,就可得到SVR的最优参数。
综上所述,基于改进的PSO算法优化SVR信息安全风险评估流程图,如图1所示。
3 仿真实验与结果分析
3.1 数据选样及预处理
本论文以MATLAB R2009a为软件平台,应用 lib svm工具箱函数,对SVR模型进行构建、训练和仿真。为了获得更好的比较评估效果,通过BP-NN、SVM、PSO-SVR和改进的PSO-SVR评估模型,分别进行信息安全风险评估。模型的评价指标为平均相对误差。平均相对误差定义如下:
ARE=1l∑li=1ti-yiyi(18)
其中,l为测试样本的个数;yi表示为第i个样本的实际评估值;ti表示为第i个样本的预测值。平均相对误差值越小,说明模型的预测误差越小,预测精度越高,评估的准确性越高。
本文实验收集60个信息系统的评估案例。选取未授权访问(X1)、数据泄露(X2)、信息篡改(X3)、信息丢失(X4)、拒绝服务(X5)、系统功能崩溃(X6)作为信息系统的风险因素。每个因素的风险值是经过上述的模糊理论处理得到的。系统的风险评估值是对信息系统进行综合评估得到的。以下实验数据(其中各因素值四舍五入,取一位小数显示在表格中;评估值取四位小数)是运用模糊理论进行预处理得到的,其具体步骤是[8]:
Step1:构建影响信息系统的影响因素集为U={X1,X2,X3,X4,X5,X6}
Step2:由专家进行评价,结合所有专家的评语,将专家意见分为五个等级,即{ 较低(0.0~0.2),低(0.2~0.4),中(0.4~0.6),高(0.6~0.8),較高(0.8~1.0)} ,简称为{LL,L,M,H,HH}。其中,数值大小(例如0.0~0.2)表示该因素的风险程度,数值越大风险越大。由5位经验极其丰富的专家对以上各指标评分,最终得到以下的评分情况,如表1所示。
Step3:根据表1得到评估指标的隶属度矩阵D。
D=0.1 0.2 0.3 0.20.4 0.3 0.5 0.30.2 0.4 0.5 0.20.3 0.2 0.4 0.20.2 0.2 0.3 0.10.2 0.3 0.2 0.0
Step4:对评判集中的每个指标赋予权重值,将评价向量数量化。根据相关资料[12],构建权重分配集
A=[925,725,525,325,125]。由式(2) ,得到风险评价值B=[0.2,0.3,0.4,0.2,0.4]。
Step5:对本实验的所有原始数据都进行如上处理,最终得到本文的实验数据。表2为训练样本数据其中的5组样本数据。
Step6:采用6個风险因素的风险值作为输入变量,系统的风险评估值作为输出变量。将收集到的60组样本数据分为训练样本集和测试样本集。选取前面55组数据作为训练样本集,后面5组数据作为测试样本集。其中,测试样本数据如表3所示。
3.2 参数设置
在本文实验中,SVR模型的核函数为径向基核函数,其公式如下:
K(x,xi)=exp(-‖x-xi‖2σ2)(19)
SVR具体类型为ε-SVR。设置损失函数的值为0.01。惩罚因子C的取值范围为[0.1,100],核参数σ的取值范围为[0.01,10]。
BP-NN采用输入层(6个节点数),隐含层(11个节点数),输出层(1个节点数)的网络结构。动量项系数η=0.7,学习率μ=0.01。隐含层、输出层这两层的传递函数分别为Sigmoid型正切函数tansig、purelin函数。
PSO算法的种群数量M=40,学习因子c1=1.5,c2=1.6,惯性权重w=0.7,最大迭代次数N=200。改进的PSO算法中交叉操作使用的交叉概率pc=0.4,变异操作使用的变异的概率pm=0.06。
3.3 实验结果分析
在 SVR中输入训练样本集合,再利用PSO算法及改进的PSO算法对这些样本进行训练,得到最佳的优化参数(如表4所示)。最后分别采用BP-NN、SVM、PSO-SVR和改进的PSO-SVR评估模型,对5组试验样本集数据进行检验。各模型的仿真结果、相对误差比较,分别详见表5、表6。
从表5和表6的仿真结果比较可得出以下结论,相比BP-NN、SVM、PSO-SVR评估模型,本文采用的改进的PSO-SVR评估模型的平均相对误差MAPE分别减小了55.11%、46.86%、24.76%。由此表明,改进后的 PSO-SVR评估模型不但降低了对风险评价结果的预测误差,而且还提高了对风险评价结果的预测精度和准确性。
4 结束语
本文使用改进的PSO算法优化SVR,提出一种基于改进PSO算法优化SVR的信息安全风险评估方法,并引入信息安全风险数据进行仿真实验验证。仿真实验结果表明,该评估方法能很好地评估信息系统风险,能较好地预测风险。这种方法不但提高了信息安全风险评估的精确性,而且在一定程度上预防了潜在的信息安全风险,降低了网络攻击带来的损失。
参考文献:
[1]孙德红, 王慧, 解姗姗. 模糊数学计算的信息安全风险评估模型研究[J]. 九江学院学报(自然科学版), 2018, 33(1): 64-68.
[2] 李鹤田, 刘云, 何德全. 基于Markov链的信息安全风险评估模型[J]. 铁道学报, 2007, 29(2): 50-53.
[3] 李森宇. 基于改进神经网络的信息安全风险评估方法研究[D]. 徐州: 中国矿业大学, 2018.
[4] 冯雪峰, 龚军, 吕小毅. 模糊神经网络信息安全风险评估方法在信息系统中的应用[J]. 现代计算机(专业版), 2018(24): 50-54.
[5] LIN S W,YING K C,CHEN S C, et al. Particle swarm optimization for parameter determination and feature selection of support vector machines[J]. Expert Systems with Applications, 2008, 35(4): 1817-1824.
[6] 党德鹏, 孟真. 基于支持向量机的信息安全风险评估[J]. 华中科技大学学报(自然科学版), 2010, 38(3): 46-49.
[7] 阮慧, 党德鹏. 基于RBF模糊神经网络的信息安全风险评估[J]. 计算机工程与设计, 2011, 32(6): 2113-2115.
[8] 王鑫, 唐作其, 许硕. 基于模糊理论和BRBPNN的信息安全风险评估[J]. 计算机仿真, 2019, 36(11): 184-189.
[9] ZHAO D, WANG C, MA J F. A risk assessment method of the wireless network security[J]. Journal of Electronics, 2007, 24(3): 428-432.
[10]吴景龙, 杨淑霞, 刘承水. 基于遗传算法优化参数的支持向量机短期负荷预测方法[J]. 中南大学学报(自然科学版), 2009, 40(1): 180-184.
[11]纪震, 廖惠连, 吴青华. 粒子群优化算法及应用[M]. 北京:科学出版社, 2009.
[12]陈曼英. 基于模糊理论的地铁火灾风险评估及控制研究[D]. 泉州: 华侨大学, 2013.
(责任编辑:于慧梅)
Research on Risk Assessment of Information Security Based on
SVR Optimized by Improved PSO Algorithm
REN Yuanfang*1, NIU Kun2, DING Jing3, XIE Gang4
(1.Network and Information Management Center, Guizhou University, Guiyang 550025, China; 2.Academic Affairs Office of
Guizhou University, Guiyang 550025, China; 3.School of Computer Science and Technology, Guizhou University, Guiyang 550025, China;4.Guizhou Sida Wisdom Education Technology Co., Ltd.,Guiyang 550025, China)
Abstract:
To improve the accuracy of information security risk assessment, a method of information security risk assessment based on support vector regression (SVR) optimized by improved particle swarm optimizatio (PSO) algorithm is proposed. First, the indexes of information security risk factors are pre-treated by fuzzy theory, and the pre-treated data is inputted to the SVR model. Then, the improved PSO algorithm is used to optimize the parameters of SVR. Moreover, the SVR model is trained and an optimized information security risk assessment model is obtained. Finally, the performance of the model is verified by the simulation experiment. The experimental results show that the risk of information security can be better quantified and the accuracy of information security risk assessment is increased by the proposed method. So, the method is an effective method.
Key words:
information security; risk assessment; fuzzy theory; support vector regression; particle swarm optimization algorithm; parameter optimization