吴恋 赵晨洁 左羽 于国龙 韦萍萍
摘 要:随着网络技术高速发展,无疑带来了很多网络安全隐患问题。面对复杂、高维的网络数据特征时,K-Nearest Neighbour,Navie Bayes等传统的一些方法无法达到高性能、高准精度和实时性的要求。为此,提出利用深度学习可视化方式进行入侵检测。对数据进行可视化处理,并采用卷积神经网络(CNN)进行入侵检测。主要采用不同数量样本进行对比,结果显示,卷积神经网络效果与样本量的多少相关性不大;并和传统没有可视化处理数据的方式进行对比,结果显示,可视化处理后的检测效果相对较好。
关键词:深度学习;网络安全;入侵检测;卷积神经网络;可视化处理;KDD CUP99
中图分类号:TP391.4文献标识码:A文章编号:2095-1302(2020)06-0-03
0 引 言
在信息更新迭代快速的时代,病毒、攻击等网络入侵随之而来,增强入侵防范意识及其技术至关重要。根据一些相关技术获取本主机中关键信息,主动检测关键信息,保障计算机不被内、外部攻击和误操作的技术,称为入侵检测。入侵检测[1]在网络安全保护中起着至关重要的作用。
目前,国内外学者对入侵检测提出多种算法,如K-means聚类[2]、Random Forest(随机森林)[3]、模糊神经网络[4]等。网络快速发展使得网络数据表现为更加庞杂、多维等特点,传统的机器学习方法无法满足处理当前复杂、多维的数据。
深度学习在图像及其处理高维、多量数据时,仍然能从中提取出有效的表示特征,并且速度较快。深度学习在图像、音频中都有较好的发展。基于此,本文将数据进行可视化处理,再利用深度学习对其进行入侵研究。
1 入侵检测数据可视化处理
1.1 数据集简介
入侵检测是国际一直关注的话题,KDD CUP99[5]数据集是国际公认的入侵检测数据集,且测试集与训练集的标签类型不是完全一致,测试集标签包含更广。每个样本记录有
42个参数,其中一个为标签数据,其余为样本特征。下面展示一个样本数据:
“0,tcp,http,SF,164,4460,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,17,18,0,0,0,0,1,0,0.11,161,255,1,0,0.01,0.02,0,0,0,0,normal.”
特征值中有9个参数类型是离散型数据[6]。數据类型共有5类数据,其中包含Probe,Dos,U2R,R2L四类异常数据和一类正常数据。
1.2 数据预处理
对于KDD CUP99数据集,为了方便数据的统一处理,将字符型数据转化为数值型数据。转化数值型数据时,采用映射[7]方法,将每一种的类型都对应唯一确定的二进制编码,如下:
式中:A为原始字符型数据;B为二进制数据;f为其映射
关系。
该数据的范围在[0,58 329]分布不均衡,在网络中出现收敛速度慢和精度不准确等问题,为了解决该问题,将数据进行归一化处理[8]。本文将采用极差变换法[9]对数据进
行[0,1]标准化,如下:
式中:Xik∈[0,1],表示归一化后的值;Xij∈KDD CUP99,
表示原始数据集中的值;Min,Max分别为原始数据集中需要归一化的最小值、最大值。
1.3 可视化处理
经过预处理后的数据集,每条数据的特征为127维,其中后5维的数据为该数据的标签,其他为该数据的特征。该数据维数较大,若直接使用深度学习模型进行训练将会降低其训练和测试速度。
因此,本文提出将数据转化为可视化图像进行训练。将5维标签单独列出,剩余的数据维度变为122,为了保证数据集的有效性,在122维中删除1维冗余的零数据,将121维
数据按数组转化图像的方式,转化成11×11大小的图像集。
2 基于CNN的入侵检测方法
2.1 CNN网络结构
卷积神经网络(CNN)[10]处理图像能力强,核心层包括全连接层、池化层、卷积层。其中,卷积层是由若干卷积核组成,特征值提取需要经过多层卷积。图像m×n的卷积
运算[11]为:
式中:z (x, y)表示卷积后的图像;f代表输入的2维图像;
g代表卷积核;m和n分别代表卷积核的尺寸。
通过卷积运算后,需要进行非线性激活去除冗余信息,保存原始数据特征的映射信息。“梯度消失”可用非饱和激活函数来缓和,即ReLu函数[12]。
式中:当矩阵x的值为非负时,经激活后变为0;当矩阵x的值为负时,此时激活仍为它本身。
Pooling layers(池化层)通过Max pooling或Average Pooling来减少参数、降低维度,使训练能快速提取特征。
全连接层[13]主要是将前两层训练的高维特征分布与低维样本进行标记。
2.2 CNN入侵检测模型
由于将KDD CUP99数据集变为11×11可视化图像集,因此对CNN模型设计采用一个10层模型结构:一个输入层;三个卷积层,每次卷积后都经过池化层;两个全连接层并在其全连接层中都加入Dropout,避免过渡拟合;一个输出层。模型如图1所示。
3 实验与分析
3.1 实验评价标准
秉承客观评价原则,本文从训练数据集大小方面对CNN模型进行对比。采用F1-score[14]作为实验效果的评判标准,公式如下:
F1-score公式中,各指标的评判标准参数含义解释见表1所列。
3.2 结果分析
3.2.1 数据集样本
数据集样本大小是影响深度模型训练效果的一方面,为了验证本文的模型将在几组不同数据集大小下进行分析。
实验数据来自kddcup.data_10%_corrected的数据集[15],正常97 278条,异常396 743条,共494 021条数据。在其中随机抽取5 000,10 000,20 000,40 000个样本,构成4组训练集数据,详细信息见表2所列。
3.2.2 与传统方式对比
将本文采用三层卷积层的卷积神经网络用不同数据量的样本进行处理,准确率结果见表3所列。结果显示精确度与训练集的大小相关性不大。传统的入侵检测,对未经过图像处理的数据直接进行训练,而本文先把数据映射成可视化图像,而后对其进行训练,对比结果见表4所列。结果显示,相对于传统方式,本文方法的精确度较高。
4 结 语
本文提出关于深度学习的入侵检测流程,将处理后的可视化数据经过CNN进行入侵检测,并从多方面进行分析。实验结果显示,CNN对于图像数据的入侵检测有着明显优异的效果。但是目前研究的是将数据预先经过数值化、归一化处理后再进行可视化处理,才能达到效果。
参考文献
[1]贾凡,孔令智.基于卷积神经网络的入侵检测算法[J].北京理工大学学报,2017,37(12):1271-1275.
[2] TZELEPIS C,MEZARIS V,PATRAS I. Linear maximum margin classifier for learning from uncertain data [J]. IEEE transactions on pattern analysis & machine intelligence,2017,40(12):2948-2962.
[3] MENG X M,WU S,ZHU J. A unified Bayesian inference framework for generalized linear models [J]. IEEE signal processing letters,2018,25(3):398-402.
[4]周飛燕,金林鹏,董军.卷积神经网络研究综述[J].计算机学报,2017,40(6):1229-1251.
[5] SIDDIQUE K,AKHTAR Z,KHAN F A,et al. KDD cup 99 data sets:a perspective on the role of data sets in network intrusion detection research [J]. Computer,2019,52(2):41-51.
[6] TAVALLAEE M,BAGHERI E,LU W,et al. A detailed analysis of the KDD CUP 99 data set [C]// 2009 IEEE Symposium on Computational Intelligence for Security and Defense Applications. Ottawa:IEEE,2009:53-58.
[7] CORT?S V,DIETERICH P S,MOHAUPT T. ASK/PSK-correspondence and the r-map [J]. Letters in mathematical physics,2018,108:1279-1306.
[8] RUOTI S,HEIDBRINK S,ONEILL M,et al. Intrusion detection with unsupervised heterogeneous ensembles using cluster-based normalization [C]// 24th IEEE International Conference on Web Services. Honolulu:IEEE,2017:862-865.
[9]薛潇,刘以安,阚媛,等.基于FCM-GRNN聚类的入侵检测算法研究[J].计算机仿真,2010,27(6):151-154.
[10] SCH?LKOPF B,PLATT J,HOFMANN T. Greedy layer-wise training of deep networks [J]. Advances in neural information processing systems,2007,19:153-160.
[11]卢强,游荣义,叶晓红.基于自适应卷积滤波的网络近邻入侵检测算法[J].计算机科学,2018,45(7):160-163.
[12]佚名.关于改进的激活函数TReLU的研究[J].小型微型计算机系统,2019,40(1):60-65.
[13] CHEN T,LU S J,FAN J Y. SS-HCNN:semi-supervised hierarchical convolutional neural network for image classification [J]. IEEE transactions on image processing,2019,28(5):2389-2398.
[14] HAO H,XU H,WANG X,et al. Maximum F1-score discriminative training criterion for automatic mispronunciation detection [J]. IEEE/ACM transactions on audio speech & language processing,2015,23(4):787-797.
[15]张新有,曾华燊,贾磊,等.入侵检测数据集KDDCUP99研究
[J].计算机工程与设计,2010,31(22):4809-4812.