随着计算机网络技术的不断发展,对于计算机网络的安全性要求也变得越来越高[1]。在舰船网络之中,针对层出不穷网络攻击方式,对于舰船网络的安全状态进行识别,防止他人攻击造成严重的事故则是重中之重。针对网络的安全状态识别以及对网络攻击的检测,目前有许多学者进行了研究。罗予东等[2]采用人工神经网络结合遗传算法形成的网络攻击检测模型,利用遗传算法的全局搜索能力和神经网络的学习能力,对网络数据进行特征提取,利用引力算法得到网络参数进行训练,最终神经网络对实时网络数据进行监控完成攻击检测。杨宏宇等[3]提出一种网络态势预测模型,利用熵关联法获取网络的安全态势时间序列,并使用指数平滑法以上述时间序列作为输入,计算出起始预测序列,最后使用马尔科夫链进行预测误差修正,得到最终的网络安全态势,通过网络安全态势结果可以得出网络的安全状态。王婷等[4]利用无监督学习模型对网络特征进行提取,并利用该特征权重进行初始学习,得到攻击类型的初步判断,再使用Bi-Kmeans聚类计算新特征向量得到攻击类型纠正,结合二者结果得到最终的攻击类型。上述3种方法虽然可以完成对网络安全状态的识别,但是也存在一定的缺点。如存在一定概率的误报,对攻击判别的准确性相对较低;识别的时间较长,应对短时快速攻击存在反应不过来的情况;监控的区域存在问题,针对应用层进行监控,存在绕过应用层攻击的无法监控的问题等。
深度学习具有强大的学习能力、可移植性、适用性强等优点,基于此提出深度学习算法的舰船网络安全状态识别。利用随机森林算法结合BiLSTM神经网络,通过监控网络流量完成对舰船的网络安全识别。
1 舰船网络安全状态识别 1.1 基于随机森林算法的网络流量特征重要性评分随机森林算法是一种继承学习算法,该算法通过特定的规则将若干个分类回归树(CART)进行组合,形成一个由分类回归树组成的森林。对每一个输入的特征变量,每一棵树都会行使投票权,每棵树都会对输入的向量进行各自的分类,最后根据投票的多少输出票数多的结果。本文利用随机森林算法对网络流量数据的特征重要性进行评分,并根据该评分进行特征的评估,对网络的特征进行删减从而减少整体的识别时间。利用随机森林算法进行特征重要性评分的思想:比较、排序每一个特征在随机森林中的贡献平均值,贡献平均值可以利用基尼系数进行对比。基尼系数通过公式表达为:
$ G{I_n} = \sum\limits_{k = 1}^{\left| K \right|} {\sum\limits_{k' \ne k} {{P_{nk}}{P_{nk'}}} } = 1 - \sum\limits_{k = 1}^{\left| K \right|} {P_{nk}^2} 。$ | (1) |
式中:
若网络流量存在
$ VI{M_{in}} = G{I_n} - G{I_l} - G{I_r}。$ | (2) |
式中:GIl为随机森林分支的左分支;GIr为右分支;VIMin为网络流量特征的重要性。
利用归一化处理重要性可得:
$ VIM_i^* = \frac{{VI{M_i}}}{{\displaystyle\sum\limits_{j = 1}^c {VI{M_j}} }}。$ | (3) |
式中,
BiLSTM网络是一种在RNN网络基础上增添了双向传播和Cell处理器的网络结构,将随机森林算法获取舰船网络流量特征作为BiLSTM网络输入数据,输出对应的网络安全状态识别结果。BiLSTM结构如图1所示,Cell处理器包含输入门、输出门和遗忘门,Cell处理器结构如图2所示。通过Cell处理器可以将信息有选择性的遗忘,从而解决RNN网络中的信息长期依赖问题。
当网络流量特征信息进入Cell处理器内,第1步便是通过遗忘门,遗忘门的主要作用便是决定要遗忘哪些信息。
$ {f_t} = \sigma \left( {{{\boldsymbol{W}}_f} \cdot \left[ {{h_{t - 1}},{x_t}} \right] + {b_f}} \right) 。$ | (4) |
式中:
根据式(4)输出的结果0和1来判定网络流量特征信息的去留,当输出结果为0时表明该网络流量特征信息需要遗忘,反之则保留全部信息。
1.2.2 输入门Cell处理器的第2步则是输入门,输入门主要包含了2个部分,分别是遗忘门的输出以及tanh层,其中遗忘门的输出ft为由上一层传递过来保留的网络流量特征,tanh层则是产生了一个候选向量
$ {C_t} = {f_t}*{C_{t - 1}} + {i_t}*{\tilde C_t} 。$ | (5) |
输出门是整个Cell处理器的第3步也是最后一步,该门的作用是决定要最终输出的网络流量特征信息。主要通过3步确定最终输出值:首先,通过激活函数sigmoid判断输出的网络流量特征信息;然后,运用tanh函数处理由输入门传递来的Ct;最后将sigmoid函数和tanh函数处理后的2个输出值相乘便可以确定最终的舰船网络安全状态识别结果。
1.2.4 加入注意力机制注意力机制的中心思想是:将有限的注意力集中在庞大数据内的一小部分,将无关信息进行忽略,从而更加有效地提取关键信息的特征。通过在BiLSTM增添注意力机制能够更好且更快速识别出存在异常的网络流量,保证舰船的网络安全。
1.3 网络安全状态识别模型结合随机森林算法与增添了注意力机制的BiLSTM网络的优点,形成舰船网络安全状态识别模型。该模型共有两部分,随机森林算法主要作用为提取网络流量特征,BiLSTM神经网络则作为分类器,通过学习和分类对异常的网络流量进行检测和区分。在识别模型中,首先利用数据采集装置采集网络的流量数据,获取流量数据后利用随机森林算法进行特征的选择,将最佳网络流量特征子集输入优化后的BiLSTM神经网络中,利用优化的BiLSTM网络进行网络安全状态的识别,最终输出网络的状态,该模型的流程如图3所示。
为检验本文方法的实际应用效果,进行仿真实验,实验环境如表1所示。
采用表2所示的常见的网络攻击方式对舰船网络进行攻击。
在随机森林的树生成时,每一个节点都会对特征进行筛选,并找到最好的特征分支,因此影响力大的特征分支次数便会增加,反之某些特征参与分支的次数极少或者不参与分支。本文采用随机森林算法进行舰船网络流量特征提取,在进行特征提取时,特征用于随机森林中树的分支次数如图4所示。由图4可知,250个特征中有100个的特征未用于分支。因此特征的数量需要适当,特征不能过多,一方面过多的特征不参与分支,另一方面特征过多也会导致算法的计算时间过长;特征也不能过少,虽然特征数量较少会使用于分支的次数增加,但是会导致分类的不够细致使后续的安全状态识别的准确率下降,因此通过多次的实验,本文的特征数量选择为75。
对舰船进行网络安全状态检测,在网络正常运行15 min后进行拒绝服务攻击(DoS)时,船只的网络流量波动如图5所示。由图5可知,正常情况下数据流量包在100个左右波动,正常运行15 min后受到DoS攻击可以看出网络流量包数量从100个瞬间升至超过450个,由此可知本文的流量监控能够反映出网络安全的状态。
利用本文方法进行网络安全状态识别,识别结果如表3所示。由表3可知,本文研究的方法应用后能够准确检测出多种常用的攻击方式,而且可以在极短的时间内完成检测,证明了本文方法具有一定的实用性。
基于实验的结果可以看出,本文的安全状态检测方法有效。对舰船网络流量进行监控,根据网络流量变化的特点使用深度学习算法对特征进行分类,实现了对舰船网络的安全状态识别。
[1] |
熊中浩, 张伟, 杨国玉. 基于DBN的网络安全态势评估和态势预测建模研究[J]. 电子技术应用, 2021, 47(5): 35−39+44. XIONG Zhonghao, ZHANG Wei, YANG Guoyu. Research on network security situation assessment and situation prediction modeling based on DBN [J]. Application of Electronic Technique, 2021, 47(5): 35−39+44. |
[2] |
罗予东, 陆璐. 基于人工神经网络和遗传算法的网络攻击检测[J]. 计算机工程与设计, 2021, 42(9): 2446−2454. LUO Yudong, LU Lu. Network attack detection based on artificial neural networks and genetic algorithm [J]. Computer Engineering and Design , 2021, 42(9): 2446−2454. |
[3] |
杨宏宇, 张旭高. 一种网络安全态势自适应预测模型[J]. 西安电子科技大学学报, 2020, 47(3): 14-22. YANG Hongyu, ZHANG Xugao. Network security situation adaptive prediction model[J]. Journal of Xidian University(Natural Science), 2020, 47(3): 14-22. DOI:10.19665/j.issn1001-2400.2020.03.003 |
[4] |
王婷, 王娜, 崔运鹏, 等. 基于半监督学习的无线网络攻击行为检测优化方法[J]. 计算机研究与发展, 2020, 57(4): 791-802. WANG Ting, WANG Na, CUI Yunpeng, et al. The Optimization Method of Wireless Network Attacks Detection Based on Semi-Supervised Learning[J]. Journal of Computer Research and Development, 2020, 57(4): 791-802. DOI:10.7544/issn1000-1239.2020.20190880 |