CN113660196A - 一种基于深度学习的网络流量入侵检测方法及装置 - Google Patents
一种基于深度学习的网络流量入侵检测方法及装置 Download PDFInfo
- Publication number
- CN113660196A CN113660196A CN202110744826.9A CN202110744826A CN113660196A CN 113660196 A CN113660196 A CN 113660196A CN 202110744826 A CN202110744826 A CN 202110744826A CN 113660196 A CN113660196 A CN 113660196A
- Authority
- CN
- China
- Prior art keywords
- data set
- neural network
- training data
- network
- intrusion detection
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 50
- 238000013135 deep learning Methods 0.000 title claims abstract description 28
- 238000012549 training Methods 0.000 claims abstract description 62
- 238000013528 artificial neural network Methods 0.000 claims abstract description 28
- 230000015654 memory Effects 0.000 claims abstract description 26
- 238000011176 pooling Methods 0.000 claims abstract description 14
- 238000013527 convolutional neural network Methods 0.000 claims description 31
- 238000007781 pre-processing Methods 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 10
- 238000010606 normalization Methods 0.000 claims description 7
- 238000002347 injection Methods 0.000 claims description 6
- 239000007924 injection Substances 0.000 claims description 6
- 238000006467 substitution reaction Methods 0.000 claims description 5
- 230000006870 function Effects 0.000 description 9
- 239000011159 matrix material Substances 0.000 description 9
- 238000000034 method Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 7
- 238000012360 testing method Methods 0.000 description 6
- 230000002159 abnormal effect Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000004913 activation Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- 241001263038 Viguiera Species 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000013145 classification model Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000008595 infiltration Effects 0.000 description 2
- 238000001764 infiltration Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000006403 short-term memory Effects 0.000 description 2
- 102100026278 Cysteine sulfinic acid decarboxylase Human genes 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010835 comparative analysis Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000008034 disappearance Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000013210 evaluation model Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007787 long-term memory Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 210000005036 nerve Anatomy 0.000 description 1
- 230000035515 penetration Effects 0.000 description 1
- 108010064775 protein C activator peptide Proteins 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 210000001525 retina Anatomy 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000000243 solution Substances 0.000 description 1
- 230000016776 visual perception Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer Security & Cryptography (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于深度学习的网络流量异常检测方法及装置,对训练数据集进行预处理,采用预处理后的训练数据集训练构建的MSCNN‑SLSTM混合神经网络,所述MSCNN‑SLSTM混合神经网络依次包括两个串接的一维多尺度卷积层、一个最大池化层、两个并列的堆叠式长短期记忆网络、一个全连接层以及分类层;采用训练好的MSCNN‑SLSTM混合神经网络对网络流量进行检测,输出检测结果。本发明将MSCNN与SLSTM神经网络结合在一起学习原始网络数据流的时空特征,有效地提高了入侵检测的准确率。
Description
技术领域
本申请属于网络安全技术领域,具体涉及一种基于深度学习的网络流量入侵检测方法及装置。
背景技术
随着科技社会的进步发展,互联网在经历过飞速的发展之后进入了千家万户,网络已经涉及到了人类生活的方方面面,与此同时带来的网络安全问题也越来越受到了人们的关注。根据中国互联网应急中心发布的的数据显示,在恶意程序方面,捕获的计算机恶意程序样本数目约1,815万个;境内受计算机恶意程序攻击的IP地址约为4,208万个,约占我国IP总数的12.4%;境内感染计算机恶意程序的主机数量约为304万台。安全漏洞方面,国家信息安全漏洞共享平台(CNVD)收录通用型安全漏洞11,073个,其中高危漏洞收录数目为4,280个。安全事件方面共处置涉及政府机构、重要信息系统等网络安全漏洞事件近1.5万起。目前我国互联网用户遭受的最常见的攻击依然是拒绝服务攻击(DDoS)。在工业领域,承载着大量接入设备以及各种企业、个人重要信息数据的工业云平台也成为了远程代码执行、Web漏洞利用等网络攻击的重点攻击目标。为了防止信息系统遭受安全攻击,越来越多的科学家和研究人员对入侵检测进行了深入的研究。
发明内容
本申请的目的是提供一种基于深度学习的网络流量异常检测方法及装置,在节省人力的同时,能自动检测识别异常流量,并且对于异常流量有着较高的检测精度和效率。
为了实现上述目的,本申请技术方案如下:
一种基于深度学习的网络流量入侵检测方法,包括:
对训练数据集进行预处理,采用预处理后的训练数据集训练构建的MSCNN-SLSTM混合神经网络,所述MSCNN-SLSTM混合神经网络依次包括两个串接的一维多尺度卷积层、一个最大池化层、两个并列的堆叠式长短期记忆网络、一个全连接层以及分类层;
采用训练好的MSCNN-SLSTM混合神经网络对网络流量进行检测,输出检测结果。
进一步的,所述对训练数据集进行预处理,包括:
当训练数据集中样本的特征值的数值类型为Nan时,用该特征值所处的列的平均值来代替;
当训练数据集中样本的特征值的数值类型为Inf时,用该特征值所处的列的最大值代替;
当训练数据集中样本的特征值的数值类型为Negative value时,用该特征值所处的列的最小值代替。
进一步的,所述对训练数据集进行预处理,包括:
对训练数据集中样本的各个特征值进行归一化处理。
进一步的,所述对训练数据集进行预处理,包括:
将DoS GoldenEye、DoS Hulk、DoS Slowhttptest、DoS Slowloris统一归于DoS一类,将Web Attack-Brute Force、Web Attack-XSS、Web Attack-Sql Injection统一归于Web Attack一类。
进一步的,所述一维多尺度卷积层包括三路一维卷积神经网络,其中第一路为卷积核大小为2的一维卷积神经网络,第二路包括一个卷积核大小为2的一维卷积神经网络和一个卷积核大小为3的一维卷积神经网络,第三路包括一个卷积核大小为2的一维卷积神经网络和一个卷积核大小为4的一维卷积神经网络。
本申请还提出了一种基于深度学习的网络流量入侵检测装置,包括:
网络训练模块,用于对训练数据集进行预处理,采用预处理后的训练数据集训练构建的MSCNN-SLSTM混合神经网络,所述MSCNN-SLSTM混合神经网络依次包括两个串接的一维多尺度卷积层、一个最大池化层、两个并列的堆叠式长短期记忆网络、一个全连接层以及分类层;
入侵检测模块,用于采用训练好的MSCNN-SLSTM混合神经网络对网络流量进行检测,输出检测结果。
进一步的,所述网络训练模块对训练数据集进行预处理,执行如下操作:
当训练数据集中样本的特征值的数值类型为Nan时,用该特征值所处的列的平均值来代替;
当训练数据集中样本的特征值的数值类型为Inf时,用该特征值所处的列的最大值代替;
当训练数据集中样本的特征值的数值类型为Negative value时,用该特征值所处的列的最小值代替。
进一步的,所述网络训练模块对训练数据集进行预处理,执行如下操作::
对训练数据集中样本的各个特征值进行归一化处理。
进一步的,所述网络训练模块对训练数据集进行预处理,执行如下操作:
将DoS GoldenEye、DoS Hulk、DoS Slowhttptest、DoS Slowloris统一归于DoS一类,将Web Attack-Brute Force、Web Attack-XSS、Web Attack-Sql Injection统一归于Web Attack一类。
进一步的,所述一维多尺度卷积层包括三路一维卷积神经网络,其中第一路为卷积核大小为2的一维卷积神经网络,第二路包括一个卷积核大小为2的一维卷积神经网络和一个卷积核大小为3的一维卷积神经网络,第三路包括一个卷积核大小为2的一维卷积神经网络和一个卷积核大小为4的一维卷积神经网络。
本申请提出了一种基于深度学习的网络流量异常检测方法及装置,对训练数据集进行预处理,采用数据归一化的方式对每个特征值进行缩放和单数转换,将数据归一到[0,1]之间。消除数量级不同对实验结果产生的影响,同时还能加快计算处理。构建了MSCNN-SLTSM混合神经网络,MSCNN是一个多尺度卷积神经网络,拥有多个不同尺度的卷积核对数据的空间域特征进行处理,提取出不同大小的特征图。SLTSM可以在很好地应用于序列预测问题的同时减少需要投入的参数数量,达到轻量化网络结构的目的。本申请将MSCNN与SLSTM神经网络结合在一起学习原始网络数据流的时空特征。将构建好的MSCNN-SLTSM神经网络与池化层、Dropout层结合,通过设置一系列的超参数来构建网络流量的综合入侵检测系统,自动地提取目标数据集的多尺度时空特征,并有效地提高了入侵检测的准确率。
附图说明
图1为本申请基于深度学习的网络流量入侵检测方法流程图;
图2为本申请的MSCNN-SLSTM混合神经网络结构图;
图3为本申请MSCNN结构示意图;
图4为本申请的入侵检测分类结果示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅用以解释本申请,并不用于限定本申请。
在一个实施例中,如图1所示,提供了一种基于深度学习的网络流量入侵检测方法,包括:
步骤S1、对训练数据集进行预处理。
本实施例采用CIC-IDS2017数据集,该数据集由加拿大网络安全研究所为研究人员提供,其中包含良性和最新的常见攻击,该数据集使用基于HTTP、FTP、HTTPS和SSH等各种应用程序层协议,生成了25个用户的抽象行为来模仿真实世界数据(PCAPs)。它的数据采集从2017年7月3日(星期一)截至2017年7月7日(星期五)下午5时,共计5天。星期一是正常的一天,只包括正常的流量(Benign)。实现的攻击包括FTP-Patator(暴力破解FTP)、SSH-Patator(暴力破解SSH)、Dos GoldenEye、Dos Hulk、Dos Slowhttptest、Dos Slowloris、Heartbleed、Web Attack-Brute Force、Web Attack-XSS、Web Attack-Sql Injection、Infiltration(渗透)、PortScan(端口扫描)、DDoS和Bot等14种类别,攻击分别在周二、周三、周四和周五被执行。具体分布情况如下表1所示。
表1 CIC-IDS2017数据集各类攻击分布情况
本实施例,对训练数据集进行预处理,包括:
当训练数据集中样本的特征值的数值类型为Nan时,用该特征值所处的列的平均值来代替;
当训练数据集中样本的特征值的数值类型为Inf时,用该特征值所处的列的最大值代替;
当训练数据集中样本的特征值的数值类型为Negative value时,用该特征值所处的列的最小值代替。
CIC-IDS-2017数据集中一共包含78个特征和一个标签,由于初始数据集中存在数据缺陷,需要对其进行修正,当遇到特征值为Nan时用该特征值所处的列的平均值来代替;遇到Inf时,用该特征值所处的列的最大值代替;遇到Negative value时,用该特征值所处的列的最小值代替。
本实施例,对训练数据集进行预处理,还包括:
对训练数据集中样本的各个特征值进行归一化处理。
在训练样本的特征向量中,不同的特征一般具有不同的量纲和数量级。这样会造成每个样本不同特征值之间大小差异很大,从而影响到模型性能,数量级大的特征会大大影响模型分类的结果。例如在本实施例中采用的数据集中,Flow Duration的特征值范围为[-1,119999993],FwdPacket Length Max的特征值范围是[0,23360],这两个特征都具有不同的数量级。因此需要采用标准化处理来消除数量级不同对结果产生的影响,同时还能加快计算处理。
本实施例采用数据归一化的处理方式,用sklearn中的MinMaxScaler模块对数据集进行预处理,对每个特征值进行缩放和单数转换,将数据归一到[0,1]之间。归一化计算公式为
其中Xmin代表该组特征值下的最小值,Xmax代表该组特征值下的最大值。
考虑到原始数据集中并没有标签,所以本实施例使用Sklearn中的LabelEncoder对原数据集的攻击类别进行编码标签,其中将DoS GoldenEye、DoS Hulk、DoSSlowhttptest、DoS Slowloris统一归于DoS一类,将Web Attack-Brute Force、WebAttack-XSS、Web Attack-Sql Injection统一归于Web Attack一类,具体编码情况如下表2所示:
攻击类别 | 编号 |
Benign | 0 |
Bot | 1 |
DDoS | 2 |
DoS | 3 |
FTP-Patator | 4 |
HeartBleed | 5 |
Infiltration | 6 |
PortScan | 7 |
SSH-Patator | 8 |
Web Attack | 9 |
表2攻击类别标签编码
此外由于原始数据集是按照不同类型的攻击划分的,其中并没有包含训练集与测试集,所以需要将周一至周五的全部数据整合之后按照0.8:0.2的比例划分成训练集与测试集。考虑到原始数据集中普通和异常攻击流量数量差距较大,为了防止类的不平衡对结果造成影响,对周一的流量只随机抽样一半进行整合。
步骤S2、采用预处理后的训练数据集训练构建的MSCNN-SLSTM混合神经网络,所述MSCNN-SLSTM混合神经网络依次包括两个串接的一维多尺度卷积层、一个最大池化层、两个并列的堆叠式长短期记忆网络、一个全连接层以及分类层。
MSCNN网络的开发历程与人眼的识别模式相类似,人类视觉感知系统在脑海中映射一副图像时,首先会从远到近的形成完整的一组图像,这组图像从远景的模糊直到近景的清晰。因此,MSCNN网络会模拟人眼识别过程中不同距离的物体在视网膜上的不同投影。网络流量是一个高维度的数据集,不能只依靠某个或者某几个离散的特征来进行识别。
MSCNN作为一种多尺度卷积神经神经网络,拥有多个不同尺度的卷积核对数据的空间域特征进行处理,提取出不同大小的特征图,并将其结合在一起得到多组局部特征。
如图3所示,本申请MSCNN包括三路一维卷积神经网络,其中第一路为卷积核大小为2的一维卷积神经网络,第二路包括一个卷积核大小为2的一维卷积神经网络和一个卷积核大小为3的一维卷积神经网络,第三路包括一个卷积核大小为2的一维卷积神经网络和一个卷积核大小为4的一维卷积神经网络。
长短期记忆网络是RNN的改良版本,与标准RNN相比,LSTM结构在捕获长期依赖性方面要好得多。在LSTM中,隐藏层中的每个传统节点都被存储器单元替换。存储器单元是LSTM中最重要的结构,可以避免梯度消失和梯度爆炸。LSTM单元由存储器单元和它们包含的门单元共同组成。乘法输入门单元是用来防止无关输入可能带来的负面影响。输入流经过输入门处理后进入存储器单元,存储器的输出流通过输出门到其他LSTM单元。
长短期记忆网络的重复模块会将信息流通过一个不同的“cell”结构,这种结构会通过“门”(gates)来实现选择性地让信息通过,主要有三种门,每个门通过一个sigmoid的神经层和一个逐点相乘的操作来完成各自的任务。
长短期记忆网络一共有三个门,分别是遗忘门、出入门和输出门:
遗忘门决定了是否从上一个输出中丢弃信息,激活函数如式(2)所示:
ft=σ(Wf·[ht-1,xt]+bf) (2)
其中xt是输入序列,ht-1是前一个时刻的隐藏状态输出,bf是偏置矢量,使用sigmoid作为激活函数,输出一个0到1之间的数值,1表示“完全保留”,0表示“完全舍弃”。它决定了上一时刻的单元状态Ct-1有多少保留到当前时刻Ct。
输入门具有tanh激活功能和记忆阻滞效应,它决定了有多少新的信息加入进来,实现公式如式(3)、式(4)、式(5)所示:
it=σ(Wi·[ht-1,xt]+bi) (3)
输出门控制单元状态Ct有多少输出到LSTM的当前输出值ht,输出的计算方法如式(6)、式(7)所示:
ot=σ(Wo[ht-1,xt]+bo) (6)
ht=ot*tanh(Ct) (7)
深度神经网络在预测分类问题上的成功通常归因于网络的深度。目前堆叠式LSTM(Stack Long Short-term Memory,SLSTM)是用于序列预测问题的较好模型。SLSTM架构可以定义为由多个LSTM层组成的LSTM模型,上面的LSTM层提供序列输出,而不是单个值输出到下面的LSTM层。同时权值共享可以减少需要投入的参数数量,达到轻量化网络结构的目的。
池化层也叫下采样或欠采样。池化操作的目的是特征降维,压缩数据和参数数量,避免发生过拟合。对于图像而言,它将输入的图像分为大小相同的若干个矩阵区域,然后对每一个矩阵区域求其最大值(最大池化)或者平均值(平均池化),从而减小了数据的空间大小,参数和计算量也会减少,避免了过拟合。在本实施例中采用最大池化层来降低数据维度。
本实例中MSCNN-SLSTM混合神经网络依次包括两个串接的一维多尺度卷积层(MSCNN)、一个最大池化层(MaxPooling)、两个并列的堆叠式长短期记忆网络(SLSTM-Left,SLSETM-Right)以及一个全连接层(Fully Connected Layer)和分类层组成,网络结构如图2所示。
在本实施例中,对模型的训练和测试均在Ubuntu 16.04LTS环境下进行,使用Keras2.4.3环境库搭建网络模型,采用Tensor-flow-CPU2.3.0进行计算实现。在机器学习或深度学习中,需要在学习之前根据自己的经验和专业知识设置一些参数,选择一组相对最优的超参数训练出模型。这些参数不会根据优化算法进行迭代更新,称为超参数。经过多次实验调整参数,本实施例选择了以下超参数来训练神经网络:
(1)学习率:
学习率作为深度学习中重要的超参数,决定着损失函数(loss)能否在合适的时间收敛到最小值。过小的学习率,会造成收敛速度十分缓慢,设置过大时,可能造成梯度在最小值附近来回震荡,从而无法达到收敛。经过多次小范围的调整,本实施例的初始学习率设置为0.1,衰减率为0.01每一个epoch时,网络效率较优。
(2)损失函数:
损失函数用来评价模型的预测值和真实值不一样的程度,损失函数越好,通常模型的性能越好。不同的模型用的损失函数一般也不一样。由于标签的分类编号从0开始且为多分类,所以这里采用稀疏多类对数损失函数。
(3)mini-batch:
假设训练集含有1000条数据,将这1000条数据分成10个块,那么其中每一个块称之为一个mini-batch。模型训练中,每次取出一个mini-batch,计算损失,根据优化算法,更新网络权重和偏置。如果mini-batch的值太小,则无法运用到矩阵库的快速运算,从而使得学习速率变得缓慢。如果值选择太大,不能很好地更新权重。因此,需要选择一个折中的值,使得运算速率,权重更新最优化。本实施例中mini-batch设置为100。
(4)epoch:
1个epoch等于使用训练集中的全部样本训练一次。网络没有充足的数据和时间去训练得到最优参数。如果epoch设置过大,会使得网络训练过拟合,造成测试准确率十分低。由于本实施例训练数据较多,epoch设置为4时,训练效果较好。
步骤S3、采用训练好的MSCNN-SLSTM混合神经网络对网络流量进行检测,输出检测结果。
由于本实施例采取的是多分类识别检测,所以选择Softmax分类器对测试集进行分类处理。将待检测的网络流量输入到训练好的MSCNN-SLSTM混合神经网络,得到分类结果,即检测结果,确定是哪种类型的攻击。
本申请采用准确率(Accuracy)、真阳性(TPR)、假阳性(FPR)来作为评估模型性能的指标,在对照实验中采用精确率(precision)、召回率(recall)以及F1-Score来作为不同模型之间性能评估的指标。混淆矩阵指标是评估模型的指标之一,也是本实施例采用的指标基础,通过用样本数据跑出分类模型的结果可以计算出以下4个基础指标:
(1)True Positive,TP:代表真实值是Positive,模型认为是Positive的数量;
(2)False Negative,FN:代表真实值是Positive,模型认为是Negative的数量;
(3)False Positive,FP:代表真实值是Negative,模型认为是Positive的数量;
(4)True Negative,TN:代表真实值是Negative,模型认为是Negative的数量。
将这四个指标一起呈现在表格中,就能得到表3这样一个矩阵,可以称它为混淆矩阵(Confusion Matrix):
表3混合矩阵
混淆矩阵在基本的统计结果上延伸可以得到以下3个指标:
(1)准确率(Accuracy),即在分类模型所有判断正确的结果占总样本数的比重,计算公式如下:
(2)真阳性(TPR),即在真实值为Positive的所有样本中,模型预测正确的样本所占的比重,计算公式如下:
(3)假阳性(FPR),即在模型预测是Negative的所有样本中,模型预测错误的比重,计算公式如下:
图4为针对于CIC-IDS2017数据测试集的十分类ROC曲线,可以看出本申请的MSCNN-SLSTM混合检测模型对各个类别的攻击流量都有着较高的正确识别率。
本实施例同时设立了对照组实验,在基于CIC-IDS-2017数据集上与已有的异常检测方法进行了对比分析,结果如表4所示:
表4其他异常检测算法precision、recall、F1值
本申请提供的一种基于深度学习的网络流量异常检测方法和系统以及检测评估方法在节省人力的同时,能自动检测识别异常流量并且对于异常流量有着较高的检测精度和效率。从表4的结果可以看出,本申请技术方案能够得到更加准确的检测结果。
在一个实施例中,本申请还提供了一种基于深度学习的网络流量入侵检测装置,包括:
网络训练模块,用于对训练数据集进行预处理,采用预处理后的训练数据集训练构建的MSCNN-SLSTM混合神经网络,所述MSCNN-SLSTM混合神经网络依次包括两个串接的一维多尺度卷积层、一个最大池化层、两个并列的堆叠式长短期记忆网络、一个全连接层以及分类层;
入侵检测模块,用于采用训练好的MSCNN-SLSTM混合神经网络对网络流量进行检测,输出检测结果。
关于基于深度学习的网络流量入侵检测装置的具体限定可以参见上文中对于基于深度学习的网络流量入侵检测方法的限定,在此不再赘述。上述基于深度学习的网络流量入侵检测装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
存储器和处理器之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件互相之间可以通过一条或多条通讯总线或信号线实现电性连接。存储器中存储有可在处理器上运行的计算机程序,所述处理器通过运行存储在存储器内的计算机程序,从而实现本发明实施例中的网络拓扑布局方法。
其中,所述存储器可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。其中,存储器用于存储程序,所述处理器在接收到执行指令后,执行所述程序。
所述处理器可能是一种集成电路芯片,具有数据的处理能力。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(NetworkProcessor,NP)等。可以实现或者执行本发明实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种基于深度学习的网络流量入侵检测方法,其特征在于,所述基于深度学习的网络流量入侵检测方法,包括:
对训练数据集进行预处理,采用预处理后的训练数据集训练构建的MSCNN-SLSTM混合神经网络,所述MSCNN-SLSTM混合神经网络依次包括两个串接的一维多尺度卷积层、一个最大池化层、两个并列的堆叠式长短期记忆网络、一个全连接层以及分类层;
采用训练好的MSCNN-SLSTM混合神经网络对网络流量进行检测,输出检测结果。
2.如权利要求1所述的基于深度学习的网络流量入侵检测方法,其特征在于,所述对训练数据集进行预处理,包括:
当训练数据集中样本的特征值的数值类型为Nan时,用该特征值所处的列的平均值来代替;
当训练数据集中样本的特征值的数值类型为Inf时,用该特征值所处的列的最大值代替;
当训练数据集中样本的特征值的数值类型为Negative value时,用该特征值所处的列的最小值代替。
3.如权利要求1所述的基于深度学习的网络流量入侵检测方法,其特征在于,所述对训练数据集进行预处理,包括:
对训练数据集中样本的各个特征值进行归一化处理。
4.如权利要求1所述的基于深度学习的网络流量入侵检测方法,其特征在于,所述对训练数据集进行预处理,包括:
将DoS GoldenEye、DoS Hulk、DoS Slowhttptest、DoS Slowloris统一归于DoS一类,将Web Attack-Brute Force、Web Attack-XSS、Web Attack-Sql Injection统一归于WebAttack一类。
5.如权利要求1所述的基于深度学习的网络流量入侵检测方法,其特征在于,所述一维多尺度卷积层包括三路一维卷积神经网络,其中第一路为卷积核大小为2的一维卷积神经网络,第二路包括一个卷积核大小为2的一维卷积神经网络和一个卷积核大小为3的一维卷积神经网络,第三路包括一个卷积核大小为2的一维卷积神经网络和一个卷积核大小为4的一维卷积神经网络。
6.一种基于深度学习的网络流量入侵检测装置,其特征在于,所述基于深度学习的网络流量入侵检测装置,包括:
网络训练模块,用于对训练数据集进行预处理,采用预处理后的训练数据集训练构建的MSCNN-SLSTM混合神经网络,所述MSCNN-SLSTM混合神经网络依次包括两个串接的一维多尺度卷积层、一个最大池化层、两个并列的堆叠式长短期记忆网络、一个全连接层以及分类层;
入侵检测模块,用于采用训练好的MSCNN-SLSTM混合神经网络对网络流量进行检测,输出检测结果。
7.如权利要求6所述的基于深度学习的网络流量入侵检测装置,其特征在于,所述网络训练模块对训练数据集进行预处理,执行如下操作:
当训练数据集中样本的特征值的数值类型为Nan时,用该特征值所处的列的平均值来代替;
当训练数据集中样本的特征值的数值类型为Inf时,用该特征值所处的列的最大值代替;
当训练数据集中样本的特征值的数值类型为Negative value时,用该特征值所处的列的最小值代替。
8.如权利要求6所述的基于深度学习的网络流量入侵检测装置,其特征在于,所述网络训练模块对训练数据集进行预处理,执行如下操作::
对训练数据集中样本的各个特征值进行归一化处理。
9.如权利要求6所述的基于深度学习的网络流量入侵检测装置,其特征在于,所述网络训练模块对训练数据集进行预处理,执行如下操作:
将DoS GoldenEye、DoS Hulk、DoS Slowhttptest、DoS Slowloris统一归于DoS一类,将Web Attack-Brute Force、Web Attack-XSS、Web Attack-Sql Injection统一归于WebAttack一类。
10.如权利要求6所述的基于深度学习的网络流量入侵检测装置,其特征在于,所述一维多尺度卷积层包括三路一维卷积神经网络,其中第一路为卷积核大小为2的一维卷积神经网络,第二路包括一个卷积核大小为2的一维卷积神经网络和一个卷积核大小为3的一维卷积神经网络,第三路包括一个卷积核大小为2的一维卷积神经网络和一个卷积核大小为4的一维卷积神经网络。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110744826.9A CN113660196A (zh) | 2021-07-01 | 2021-07-01 | 一种基于深度学习的网络流量入侵检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110744826.9A CN113660196A (zh) | 2021-07-01 | 2021-07-01 | 一种基于深度学习的网络流量入侵检测方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113660196A true CN113660196A (zh) | 2021-11-16 |
Family
ID=78489840
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110744826.9A Pending CN113660196A (zh) | 2021-07-01 | 2021-07-01 | 一种基于深度学习的网络流量入侵检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113660196A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115086029A (zh) * | 2022-06-15 | 2022-09-20 | 河海大学 | 一种基于双通道时空特征融合的网络入侵检测方法 |
CN115086082A (zh) * | 2022-08-16 | 2022-09-20 | 四川公众项目咨询管理有限公司 | 基于深度学习的网络安全评估方法、系统、设备及介质 |
CN116668198A (zh) * | 2023-07-31 | 2023-08-29 | 南京争锋信息科技有限公司 | 基于深度学习的流量回放测试方法、装置、设备及介质 |
CN117579395A (zh) * | 2024-01-16 | 2024-02-20 | 成都市思叠科技有限公司 | 一种应用人工智能进行网络安全漏洞扫描的方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108200006A (zh) * | 2017-11-21 | 2018-06-22 | 中国科学院声学研究所 | 一种基于层次化时空特征学习的网络流量分类方法及装置 |
CN110213244A (zh) * | 2019-05-15 | 2019-09-06 | 杭州电子科技大学 | 一种基于时空特征融合的网络入侵检测方法 |
CN111275113A (zh) * | 2020-01-20 | 2020-06-12 | 西安理工大学 | 基于代价敏感混合网络的偏斜类时间序列异常检测方法 |
CN111428789A (zh) * | 2020-03-25 | 2020-07-17 | 广东技术师范大学 | 一种基于深度学习的网络流量异常检测方法 |
-
2021
- 2021-07-01 CN CN202110744826.9A patent/CN113660196A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108200006A (zh) * | 2017-11-21 | 2018-06-22 | 中国科学院声学研究所 | 一种基于层次化时空特征学习的网络流量分类方法及装置 |
CN110213244A (zh) * | 2019-05-15 | 2019-09-06 | 杭州电子科技大学 | 一种基于时空特征融合的网络入侵检测方法 |
CN111275113A (zh) * | 2020-01-20 | 2020-06-12 | 西安理工大学 | 基于代价敏感混合网络的偏斜类时间序列异常检测方法 |
CN111428789A (zh) * | 2020-03-25 | 2020-07-17 | 广东技术师范大学 | 一种基于深度学习的网络流量异常检测方法 |
Non-Patent Citations (1)
Title |
---|
连鸿飞等: "一种数据增强与混合神经网络的异常流量检测", 《小型微型计算机系统》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115086029A (zh) * | 2022-06-15 | 2022-09-20 | 河海大学 | 一种基于双通道时空特征融合的网络入侵检测方法 |
CN115086082A (zh) * | 2022-08-16 | 2022-09-20 | 四川公众项目咨询管理有限公司 | 基于深度学习的网络安全评估方法、系统、设备及介质 |
CN115086082B (zh) * | 2022-08-16 | 2022-11-01 | 四川公众项目咨询管理有限公司 | 基于深度学习的网络安全评估方法、系统、设备及介质 |
CN116668198A (zh) * | 2023-07-31 | 2023-08-29 | 南京争锋信息科技有限公司 | 基于深度学习的流量回放测试方法、装置、设备及介质 |
CN116668198B (zh) * | 2023-07-31 | 2023-10-20 | 南京争锋信息科技有限公司 | 基于深度学习的流量回放测试方法、装置、设备及介质 |
CN117579395A (zh) * | 2024-01-16 | 2024-02-20 | 成都市思叠科技有限公司 | 一种应用人工智能进行网络安全漏洞扫描的方法及系统 |
CN117579395B (zh) * | 2024-01-16 | 2024-03-26 | 成都市思叠科技有限公司 | 一种应用人工智能进行网络安全漏洞扫描的方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112165485B (zh) | 一种大规模网络安全态势智能预测方法 | |
CN113660196A (zh) | 一种基于深度学习的网络流量入侵检测方法及装置 | |
CN106973038B (zh) | 基于遗传算法过采样支持向量机的网络入侵检测方法 | |
CN110704840A (zh) | 一种基于卷积神经网络cnn的恶意软件检测方法 | |
CN111783442A (zh) | 入侵检测方法、设备和服务器、存储介质 | |
CN111629006B (zh) | 融合深度神经网络和层级注意力机制的恶意流量更新方法 | |
CN111669384B (zh) | 融合深度神经网络和层级注意力机制的恶意流量检测方法 | |
CN111669385B (zh) | 融合深度神经网络和层级注意力机制的恶意流量监测系统 | |
Kirichek et al. | System for detecting network anomalies using a hybrid of an uncontrolled and controlled neural network | |
Kumar et al. | Intrusion detection using artificial neural network with reduced input features | |
Praveen et al. | Combining CNNs and Bi-LSTMs for Enhanced Network Intrusion Detection: A Deep Learning Approach | |
Arya et al. | Ensemble filter-based feature selection model for cyber attack detection in industrial Internet of Things | |
Wang et al. | Profiling program and user behaviors for anomaly intrusion detection based on non-negative matrix factorization | |
Golovko et al. | Neural network approaches for intrusion detection and recognition | |
CN116346475A (zh) | 一种隐匿高危行为操作异常评分方法和系统 | |
CN115842647A (zh) | 一种基于流量数据的网络安全威胁检测方法 | |
Al-Nafjan et al. | Intrusion detection using PCA based modular neural network | |
Belej et al. | Development of a network attack detection system based on hybrid neuro-fuzzy algorithms. | |
Burney et al. | Feature deduction and ensemble design of parallel neural networks for intrusion detection system | |
CN112242973A (zh) | DDoS攻击检测方法、装置、计算设备及计算机存储介质 | |
CN112565200B (zh) | 基于边缘智能的工控网络误用入侵检测预警系统 | |
bin Haji Ismail et al. | A novel method for unsupervised anomaly detection using unlabelled data | |
Shaikh et al. | Anomaly Based Intrusion Detection System Using Deep Learning Methods | |
CN114553558B (zh) | 一种数据处理方法及装置 | |
CN117614742B (zh) | 一种蜜点感知增强的恶意流量检测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20211116 |
|
RJ01 | Rejection of invention patent application after publication |