基于HMM 的网络安全态势感知研究
2022-06-08张云玲
张云玲
(安徽信息工程学院,安徽 芜湖 241000)
引言
随着互联网的发展与普及,网络攻击日益频繁,网络安全问题层出不穷,成为人们关注的重点与难点。另一方面,由于网络规模不断扩大,网络趋于多样性、复杂性、分散性,现有网络安全技术难以满足高质量的网络安全需求。网络安全态势感知是通过对网络中全局安全状态进行实时检测分析,精准预测网络安全状态的一种预测有段,有助于网络安全管理人员提前采取防御措施,保障网络安全。目前,网路安全态势感知技术主要通过历史评估信息实现网络安全态势预测。文献[1-2]基于k-means 算法,实现了网络安全态势预测;文献[3-4]基于RBF 理论,利用网络安全历史数据,对网络安全态势发展趋势进行了有效预测。上述预测方法虽然实现了网络安全态势感知,但其预测精度有待提高。基于此,为实现高精度的网络安全态势预测,文章提出基于HMM 的预测方法,并通过人工鱼群算法和遗传算法(GA)对其进行优化,取得了良好的预测效果。
1 基本算法
1.1 HMM 算法简介
HMM 是一种广泛应用于语言识别、模式识别领域的基于统计的机器学习模型,该模型的基本定义如下。
假设所有隐藏状态集合为Q,可能观测到的状态集合为V:
式中,N 表示可能隐藏状态数,M 表示所有可能观测的状态数。
对于长度为T 的序列,其对应的状态序列I和观察到的序列O 可用表示为式(3)和式(4):
此外,还需t=1 时刻初始隐藏状态分布,假设其为π,则HMM 模型可由一个三元组表示:
1.2 HMM 算法改进
根据上述分析可知,HMM 算法训练时,初始参数设置直接影响了训练结果,若初始参数设定不合理,可能导致模型陷入局部最优,而人工鱼群算法和GA 算法可有效避免此类问题。因此,文章采用GA 算法对HMM 算法进行改进:首先,采用人工鱼群算法优化初始过程中的模糊聚类,提高聚类结果精度,然后采用GA 算法优化HMM 预测模型参数,避免模型陷入局部最优。
1.2.1 人工鱼群算法优化初始聚类
其次,在三维空间内随机分散样本,并确定样本三维坐标值。
然后,计算人工鱼实物浓度,并在此基础上进行聚群、觅食等优化,直到所有人工鱼移动完成。
最后,判断是否满足终止条件。若当前人工鱼最大浓度与迭代前最大浓度差值小于设定阈值,或达到最大迭代次数,则结束算法,并将结果映射到高维样本;反之,则返回,再次执行人工鱼食物浓度大小计算流程。
1.2.2 GA 算法优化模型参数
首先,结合轮盘赌方法使种群规模达到P[8]。具体方法如下。
计算公式(12)~(15)。
最后,判断算法是否满足终止条件。若满足,则输出结果,结束算法;反之,则继续迭代并重新计算个体适应度值,并再次进行选择、交叉、变异操作,直至达到最大迭代次数,终止算法。
通过上述操作,实现了HMM 算法的改进。
2 基于改进HMM 的网络安全态势感知
2.1 网络安全态势状态构建
定义种群离散度为d:
定义染色体k 对种群离散性的支持度为:
2.2 改进HMM 模型构建
随机生成p 个HMM 初始概率矩阵π,转移概率矩阵和输出概率矩阵分别为A、B,则π、A、B 均满足式(22):
采用浮点编码对矩阵π、A、B 进行编码,得到对应的初始染色体Geπ,转移染色体GeA,输出染色体GeB,如图1 所示。
图1 概率矩阵编码染色体过程
2.3 评价函数设计
首先,两两比较警报的m 个属性,并根据专家经验对其重要程度进行打分,得到判断矩阵[9]:
式(28)中, 表示两者源/目的IP 地址从左到右相同位数。
然后,构建人工鱼个体、食物浓度函数、模糊等价矩阵,并将高维样本映射到三维平面。最后,采用人工鱼群算法进行聚类,完成评价函数的设计。
2.4 基于改进HMM 的网络安全态势感知方法实现
基于改进HMM 的网络安全态势感知方法的基本思路是:首先采用人工鱼群算法对获取的网络安全态势数据进行优化,得到初步聚类结果;然后利用HMM 构建预测模型初始序列,并通过GA 算法不断优化HMM 模型参数,以得到最佳网络安全态势预测模型;最后,采用维特比算法进行预测,实现网络安全态势感知。其具体实现流程如下。
步骤5:判断是否满足终止条件,若满足,则输出最优参数;反之,则返回步骤3,继续迭代。
步骤6:计算极大化隐状态序列,并预测下一时刻网络安全态势值。
上述流程可用图2 所示。
图2 基于改进HMM 的网络安全态势感知方法预测流程
3 仿真实验
3.1 实验环境及数据来源
本实验在MATLAB2017 软件上进行仿真。实验数据集选自蜜网项目2000 年8 月至9 月的honeynet 数据集,该数据集由非盈利性项目组honeynet project 共享创建,共收集了2000 年4 月至2001 年2 月期间的每种攻击,包括8 个不同IP 地址,通过本地ISP 单一ISDN 连接。
在此基础上,文章首先通过snort2.0 获取警报数据。然后,考虑到数据集中可能存在态势值过大的数据会对模型学习造成一定影响,因此为避免过大态势值的影响,文章对实验数据集进行了归一化处理,如式(35)。最后,通过遗传算法对警报进行预测,并结合模糊推理形成警报分级态势结果,从而进行网络安全态势预测。主要过程如下。
步骤1:采用开源入侵检测系统snort2.0 检测honeynet 实验数据集,获取报警信息;
步骤2:采用人工鱼群算法优化警报聚类结果,并建立HMM 预测模型初始序列;
步骤3:初始化HMM 模型参数,并将初始序列输入模型;
步骤4:预测警报形成分级态势结果,并建立态势指标,如图3。
图3 态势指标
3.2 评价指标
本实验选用平均绝对误差(MAE)对算法性能进行评估,其计算方法如式(36)。
式中,n表示数据量,xi表示实际值,yi表示预测值。
3.3 参数设置
本实验将GA 算法基本参数设置如下:迭代次数N=150,交叉概率P1=0.15,变异概率P2=0.005。采用轮盘赌的方式选择每代个体子代。
3.4 结果与分析
3.4.1 网络安全态势预测效果
为验证本研究基于改进HMM 算法对网络安全态势预测的准确性,研究选用实验数据集每12小时预警次数作为态势值,以最近7 天5 个测试时刻的警报次数对下一测试时刻警报次数进行预测,得到态势值。最后,保留任意时刻最近前6个样本,并与真实网络安全态势进行比较,得到如图4 所示结果。由图可知,本研究提出的改进HMM 网络安全态势感知方法,对网络安全态势的预测值与实际值接近,变化趋势基本吻合,说明本研究方法可有效感知网络安全态势。
图4 预测结果
3.4.2 算法对比
为进一步验证本研究提出算法对网络安全态势感知的有效性与优越性,文章将改进的HMM模型分别与标准HMM 模型和RBF 模型对实验数据集进行预测的结果加以比较,结果如图5 所示。由图可知,相较于基于HMM 模型和RBF 模型,本研究改进的HMM 模型对网络安全态势的预测结果与实际值更接近,且随着时间的延长,本研究提出模型预测结果更准确。
图5 不同算法预测结果
为更直观地比较不同算法的预测性能,采用不同算法对网络安全态势进行预测,得到如表1所示结果。通过计算不同算法预测的绝对误差,发现改进HMM 模型的预测结果的绝对误差最小,相较于RBF 模型的预测效果提高了42.85%,相较于标准HMM 模型预测效果提高了46.67%,如表2 所示,说明本研究模型对网络安全态势的预测性能更好。
表1 不同算法对网络安全态势预测结果
表2 不同算法预测绝对误差
4 结论
综上所述,本研究基于改进HMM 的网络安全态势感知方法,通过采用人工鱼群算法优化标准HMM 初始聚类,并通过GA 算法优化HMM模型参数,避免了HMM 模型陷入局部最优,提高了模型预测精度;通过将改进HMM 应用于网络安全态势感知,可对网络安全态势变化趋势进行有效预测,相较于RBF 模型和标准HMM 模型,本研究改进HMM 模型的预测效果分别提高了42.85%和46.67%,具有一定的优越性。但由于条件限制,本研究仍存在一些不足,主要表现在实验数据集的选取方面。虽然本研究选用的honeynet 数据集虽可证明提出方法的有效性,但不能全面反映网络安全态势,使研究存在一定局限性,下一步,研究将尝试采集多个数据集对提出方法进行验证。