网络安全态势预测方法应用
2015-01-01
0 引言
针对当前预测模型只能对过去和现在网络安全态势进行分析,不能对将来网络安全态势进行预测的缺陷,为了提高预测精度,提出了支持向量机的网络安全态势预测方法。支持向量机可以利用过去和当前的网络安全态势值,对将来网络安全状态进行预测,同时采用遗传算法对支持向量机参数优化,加快网络安全态势预测速度。通过仿真对预测方法性能进行检验,结果表明,预测方法能够准确反映网络安全的整体变化趋势,提高了网络安全态势的预测精度,相对于传统预测方法,更适用于现实的网络环境中。
1 计算机网络安全现状分析
随着互联网发展,网络攻击手段层出不穷,网络安全问题越来越重要,杀毒软件和防火墙等产生大量的告警信息,网络管理者面对如此海量的数据难以把握网络系统的安全状态,不能及时采取相应的防范措施。为了使网络的安全管理从被动变为主动,网络安全态势预测应运而生。网络安全态势预测能够为网络管理者提供过去和当前时刻的网络安全状态,同时可以对未来时段网络的安全态势进行预测,减轻管理者的数据压力,因此成为当前网络安全研究中的热点。
1999年,TimBass对网络入侵检测系统进行了分析,指出网络入侵检测系统的不足,同是提出了网络安全态势的概念。随后国外许多研究者对网络安全态势进行了大量的研究,然则国内对网络安全态势预测研究刚起步。传统网络安全态势预测算法为基于统计的贝叶斯技术和灰色关联模型,该方法只能给网络管理者提供过去和当前的网络安全态势状态,不能对下一个阶段网络安全状态进行预测。灰色关联模型只能反映网络安全态势的趋势,不能对网络安全态势进行精确的预测。
支持向量机是一种非线性预测能力非常强的方法,能够在海量数据中识别和提取网络安全系统隐藏的规律,因此,为了提高网络安全态势的预测精度,提出遗传优化支持向量机的网络安全态势预测模型,利用遗传算法全局搜索能力对支持向量机参数进行优化,采用支持向量机对网络安全状态进行预测,最后对实际网络安全态势值进行仿真预测,并对预测精度进行分析,验证该网络安全态势预测方法是有效性。
2 网络安全态势预测原理
“态势”一词来自军事领域,一般用于说明一个范围较大、结构比较复杂、因素影响众多的被研究对象的状态综合表现,最典型的如战场态势。在网络安全研究中,引入“态势”的概念,主要目标是希望建立一套可行的网络安全态势体系,对网络的整体安全状况有一个全面、快速的了解。网络态势预测原理是根据网络安全事件发生的频率、数量,以及网络受威胁程度的不同,通过加权处理,将海量的网络安全信息融合成一个能表现网络运行状况态势值,然后依据历史的和当前的网络安全态势值对未来网络安全趋势预测。
网络安全态势是一种按时间先后顺序采集的数据,因此可以当成一个时间序列进行处理,前一段时间序列态势值作为预测模型的输入变量,输出是网络安全态势下一时间的态势值。因此,网络安全态势预测就是希望通过序列的前N个时刻的态势值,预测出以后的 M个态势值,其分为两个步骤:对采用训练数据进行训练建立网络安全态势预测模型;采用网络安全态势模型对下一阶段的网络安全态势进行预测。
由于网络安全态势具有随机性和不确定性,因此采用传统预测模型很难对其进行准确的预测,而支持向量机是一种新的机器学习方法,对随机性和不确定性系统具有非常强的自适应学习能力,比较适合于网络安全态势预测,因此本文采用支持向量机对网络安全态势进行建模并预测。
3 网络安全态势预测模型
3.1 支持向量机算法
支持向量机是近年来兴起一种非线性预测技术,大量研究结果表明,基于支持向量机的预测模型性能优于一般预测算法,尤其对高度复杂度的非线性问题,其优势更加明显。支持向量预测是通过一个非线性映射φ函数,将非线数据xi映射到高维特征空间H,并在该高维特征空间进行线性预测,即:
其中,ω表示支持向量机超平面的权值向量,b表示为偏置量。
因此,支持向量预测就是求解如下一个优化问题,即:
其中约束条件为:
其中,c表示惩罚参数,ξi、ξ*i表示松弛变量,ε不敏感损失函数,ε定义如下:
通过引入拉格朗日乘子,将非线性预测问题转为成如下一个优化问题,即:
其中,αi、α*i表示拉格朗日乘子。根据KKT条件,支持向量机预测问题可以通过解式(2)的对偶问题来求解,即:
约束条件为:
针对集约化的需求,匹配抽取到的能力指标,各校、各系、各专业的学生依据个人能力和兴趣自主加入,利用协同共享平台增加和强化知识体系,以满足企业的用人要求。
其中,k(x,xi)表示支持向量机核函数,描述了高维特征空间的内积。由于高斯核函数比其它核函数效果好,因此本文选择高斯核函数作为支持向量机核函数,高斯核函数定义如下:
那么,支持向量机预测模型最后的表达式为:
其中,σ表示高斯核函数宽度。
3.2 支持向量机预测模型参数优化
当支持向量机的核函数为高斯核函数,预测模型需优化的参数为:ε,c和σ。传统支持向量机参数一般采用经验确定法、穷举法和网络搜索方法。经验确定法选择的参数一般不是最优,模型的预测精度较低,而穷举法、网络搜索方法耗时相当长,难以找到最优参数,因此要提高网络安全态势的预测精度,首先要解决支持向量机参数的优化问题。遗传算法是一种模拟生物界自然选择和群体进化机理的一种启发式算法,具有全局搜索和并行搜索能力,寻优速度相当快,因此本文采用遗传算法对支持向量机的参数ε、c和σ进行优化。
3.3 支持向量机的网络安全态势预测过程
(1)网络安全态势数据的收集,并对收集到的异常和不良数据进行处理。
(2)网络安全态势数据的预处理。由于网络安全态势受到多种因素影响,数据之间有时相差很大,而支持向量机预测模型对(0,1)之间的最敏感,因此需要将网络安全态势原始数据进行归一化处理,将其归一化到(0,1)范围。
(3)将一维网络安全态势数据通过确定嵌入维和时间延迟转换成多维网络安全态势数据,本文设数据网络安全态势时间延迟为1,嵌入维按2,3,…等逐步试凑,最后确定嵌入维数为m。设一维网络安全态势数据为{x1,x2,… ,xn}。
(4)将网络安全态势数据分成训练集和测试集两部,将训练集的输入和输出数据输入到支持向量机学习,采用遗传算法对支持向量机参数进行寻优,采用最优参数建立网络安全态势最优预测模型。
(5)采用最优网络安全态势预测模型对测试集进行预测,根据网络安全态势值判断当前网络安全状态。
4 实例分析
4.1 网络安全态势数据
为了验证本文提出的支持向量机网络安全态势预测模型的有效性,选取某公司互联网2009年10月1日-30日边界安全监测数据,每天进行4次采样,就共获得120个态势值。前90个态势值作为支持向量机的训练样本,后30个态势值作为支持向量机测试样本,所有实验都在matlab7.0平台上实现。
4.2 模型的实现
设网络安全态势的延迟时间为1,采用试凑法慢慢增加嵌入维数,最后嵌入维确定8,即支持向量机的输入变量为7个,输出变量为1,通过延迟时间和嵌入维数对网络安全态势数据进行重构,生成支持向量机的训练和测试样本。将训练样本输入支持向量机进行学习,同时采用遗传算法进行参数优化,遗传算法的参数设置为:进化代数100,初始种群个数40,训练的目标误差为0.01,交叉概率为0.95,变异概率为0.05。当程序运行到50.55秒后,达到目标误差,此时支持向量机的训练步数为5000。
4.3 网络安全态势预测
为便于比较,采用BP神经网络算法和RBF神经网络来进行预测,采用均方误差(MSE)和平均相对误差(MAE)作为模型评价指标。
预测结果比较可明显得出:支持向量机预测速度、运行时间、预测精度都要比BP神经网络算法和RBF神经网络好很多,这主要是由于支持向量机的预测性能要优于BP和RBF神经网络,同时采用遗传算法进行参数,同时对解空间内的许多点进行搜索,很好防止了神经网络算法陷入局部最小点、收敛速度慢的问题,支持向量机是一种预测快速、预测精度高、结果可靠的网络态势预测方法。
5 结束语
本文在对当前网络态势预测相关算法做出了分析,并提出基于支持向量机的网络安全态势预测方法,并详细介绍预测模型设计与实现,最后通过仿真对模型的性能进行验证,仿真结果表明,支持向量机比传统预测方法更能够准确地预测态势,准确反映网络安全态势的整体变化情况,预测结果有利于指导网络管理员对将来可能发生的网络安全事件和网络安全变化趋势采取适当的应对措施。