CN117294476A - 基于深度学习神经网络的网络入侵检测方法、装置、系统及存储介质 - Google Patents
基于深度学习神经网络的网络入侵检测方法、装置、系统及存储介质 Download PDFInfo
- Publication number
- CN117294476A CN117294476A CN202311161513.6A CN202311161513A CN117294476A CN 117294476 A CN117294476 A CN 117294476A CN 202311161513 A CN202311161513 A CN 202311161513A CN 117294476 A CN117294476 A CN 117294476A
- Authority
- CN
- China
- Prior art keywords
- network
- output
- intrusion detection
- data
- neural network
- 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 65
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 42
- 238000013135 deep learning Methods 0.000 title claims abstract description 33
- 238000003860 storage Methods 0.000 title claims abstract description 20
- 238000000034 method Methods 0.000 claims abstract description 44
- 230000004927 fusion Effects 0.000 claims abstract description 18
- 230000002123 temporal effect Effects 0.000 claims abstract description 16
- 238000013527 convolutional neural network Methods 0.000 claims description 46
- 238000000605 extraction Methods 0.000 claims description 26
- 230000007246 mechanism Effects 0.000 claims description 21
- 239000013598 vector Substances 0.000 claims description 20
- 230000006870 function Effects 0.000 claims description 19
- 239000011159 matrix material Substances 0.000 claims description 15
- 238000010586 diagram Methods 0.000 claims description 14
- 230000015654 memory Effects 0.000 claims description 14
- 230000008569 process Effects 0.000 claims description 13
- 230000004913 activation Effects 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 10
- 238000009826 distribution Methods 0.000 claims description 10
- 238000010606 normalization Methods 0.000 claims description 10
- 238000011176 pooling Methods 0.000 claims description 10
- 239000000284 extract Substances 0.000 claims description 8
- 238000012935 Averaging Methods 0.000 claims description 5
- 229910000856 hastalloy Inorganic materials 0.000 claims description 4
- 230000007787 long-term memory Effects 0.000 claims description 4
- 238000004422 calculation algorithm Methods 0.000 description 8
- 238000010801 machine learning Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000000306 recurrent effect Effects 0.000 description 6
- 238000011156 evaluation Methods 0.000 description 4
- 238000007637 random forest analysis Methods 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 230000008033 biological extinction Effects 0.000 description 3
- 238000003066 decision tree Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000004880 explosion Methods 0.000 description 2
- 238000007477 logistic regression Methods 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 102100021283 1-aminocyclopropane-1-carboxylate synthase-like protein 1 Human genes 0.000 description 1
- 229930091051 Arenine Natural products 0.000 description 1
- 101000675558 Homo sapiens 1-aminocyclopropane-1-carboxylate synthase-like protein 1 Proteins 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000008485 antagonism Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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
- 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
- G06N3/0442—Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
-
- 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/0464—Convolutional networks [CNN, ConvNet]
-
- 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
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- Image Analysis (AREA)
Abstract
本发明提供一种基于深度学习神经网络的网络入侵检测方法、装置、系统及存储介质,该方法包括步骤一、构建CNN网络提取网络流量数据的空间特征;步骤二、构建LSTM网络提取网络流量数据的时间特征;步骤三、将步骤一提取的空间特征和步骤二提取的时间特征进行并联得到融合特征;步骤四、利用Self‑Attention对融合特征分配不同的权重,进行二次特征提取以选择重要的特征信息,基于所述选择的重要的特征信息通过检测模型的输出层进行网络入侵检测。本发明是基于CNN、RNN及self‑attention的一种新型入侵检测方法(CRNN‑SA),防止了信息的丢失,可以有效的提高网络入侵检测的能力。
Description
技术领域
本发明涉及网络入侵检测技术领域,具体是一种基于深度学习神经网络的网络入侵检测方法、装置、系统及存储介质。
背景技术
近20年来,网络技术发展迅速,在经济、军事、教育等领域得到了广泛而深入的应用,深刻影响着社会发展。同时,针对网络系统的攻击越来越严重,攻击范围越来越大,各种新的攻击工具和方法层出不穷,不仅造成经济损失,甚至威胁国家安全。因此,有效的网络入侵检测(NID)解决方案最终对现代社会至关重要。入侵检测系统(IDS)是一种广泛使用的网络安全设备,可以实时监控网络活动和检测威胁。NIDS是一种部署在网络节点上的IDS,通过直接分析网络流量来检测攻击。
NIDS包括误用检测和异常检测,其中,误用检测方法使用一系列规则根据专家知识定义恶意活动,并通过逐行匹配网络流量来检测攻击,在实际部署中广泛使用,因为它可以快速检测到攻击,误报率低。然而,攻击者不断升级攻击工具和策略,误用检测方法无法检测这些未知攻击。异常检测方法可以检测未知攻击,是近年来入侵检测的重点。机器学习和深度学习是入侵检测的主要技术。
基于机器学习的入侵检测方法首先通过特征工程从原始流量中提取特征,然后训练方法检测异常。常规入侵检测方法,如随机森林、支持向量机(SVM)。虽然基于机器学习的方法已经取得了相对较高的性能,但随着数据复杂性和多样性的增加,它们高度依赖于通过复杂的特征工程提取的特征,特征的设计依赖于专业知识并导致信息丢失,这些问题成为了机器学习方法的瓶颈。针对上述问题,基于深度学习的入侵检测方法突破了基于机器学习的入侵检测方法的瓶颈,通过从原始数据中自动学习特征来获得更好的性能。近十年来,随着硬件的发展和海量数据的产生,深度学习技术得到了快速发展,并在包括入侵检测在内的各种应用中取得了令人瞩目的成果。代表性的深度学习方法包括卷积神经网络(CNN),递归神经网络(RNN),长短期记忆(LSTM),Transformer和生成对抗网络(GAN)。这些方法从不同的角度学习特征,例如,CNN学习网络流量的空间特征,LSTM学习时间特征。
尽管现有的基于深度学习的方法已经取得了较高的性能,但它们仍然存在以下不足:
(1)包头和包有效载荷在入侵检测中起着关键作用,但大多数基于深度学习的方法将它们作为一个整体同时处理,这在方法中无法学习到更集中的特征。
(2)会话中包含的数据包数量和数据包的大小是不固定的,现有方法通过直接截断或修补到固定长度来解决这个问题,但是截断的部分不能使用,这无疑会导致信息丢失。
(3)忽略数据包之间的时间间隔,会话可以被认为是多个数据包的序列,就像一个句子可以被认为是多个单词的序列。然而,与句子的模式不同,会话中元素之间的距离范围很广。由于在处理会话期间丢失时间信息,现有的普通序列方法效果不佳。
发明内容
针对上述问题,本发明通过构建一种基于深度学习神经网络的网络入侵检测方法、装置、系统及存储介质,其是基于CNN、RNN及self-attention的一种新型入侵检测方法(CRNN-SA),该方法利用一维卷积神经网络(CNN)和递归神经网络(RNN)分别提取空间特征和时间特征,将二者提取的特征“并联”得到融合特征,通过并联的方式组合模型已学习到更集中的特征,引入self-attention以提取可变长度会话的特征,进一步进行特征提取以选择重要的特征信息,防止了信息的丢失,可以有效的提高网络入侵检测的能力。
一种基于深度学习神经网络的网络入侵检测方法,包括如下步骤:
步骤一、构建CNN网络提取网络流量数据的空间特征;
步骤二、构建LSTM网络提取网络流量数据的时间特征;
步骤三、将步骤一提取的空间特征和步骤二提取的时间特征进行并联得到融合特征;
步骤四、利用Self-Attention对融合特征分配不同的权重,进行二次特征提取以选择重要的特征信息,基于所述选择的重要的特征信息通过检测模型的输出层进行网络入侵检测。
进一步的,所述步骤一具体包括:
步骤1.1、卷积通过一组过滤器或内核将输入数据转换为突出输入数据特征的输出,卷积输出由激活函数进一步处理,然后通过池化进行下采样以去除不相关的数据;
步骤1.2、CNN通过多轮的学习过程自动调整过滤器来学习输入数据,使其输出特征图有效地表示原始输入数据,捕获空间特征;网络数据包以一维形式存在,一维卷积表示如下:
其中,g表示图,i和j表示序列数据中不同值的位置,f是大小为m的滤波器;
步骤1.3、使用批量归一化来调整RNN模块中的CNN输出,调整CNN捕获的空间特征,如下所示:
其中,x是输入批量中的值,μB和δB分别表示批量均值和方差,ε是一个常数值;基于归一化产生的归一化得到公式(3)所示的输出/>
其中γ和β表示超参数。
进一步的,所述步骤二具体包括:
步骤2.1、通过构建长短期记忆网络LSTM提取时间特征,LSTM抽象为四个子网络、一组控制门和一个记忆组件的连接,输入和输出值是由输入x(t)确定的相同大小的向量,保存在内存中的状态s(t)作为对当前学习的反馈,具体表示如下:
b+U×x(t)+W×h(t-1) (4)
其中,x(t)表示当前输入,h(t-1)表示先前输出,b表示偏置,U表示权重矩阵;
步骤2.2、使用子网(p(t),g(t),f(t),q(t)),通过两种类型的控制门(α,tanh)来确定反馈s(t)从之前的学习和当前的输出h(t),具体表示如下:
s(t)=σ(f(t))*s(t-1)+σ(p(t))*tanhg(t) (5)
h(t)=tanhs(t)*σ(q(t)) (6)
其中,σ表示激活函数,LSTM通过调整这些网络中的权重和σ值来学习输入,以便可以在输出中有效地生成输入数据之间的时间特征。
进一步的,所述步骤四具体包括:
步骤4.1、通过使用自注意力机制从大量的信息中选出更重要的部分,以提高入侵检测的准确率,通过利用注意力机制来动态地生成不同连接的权重,用来处理变长的输入序列,作为神经网络中的一层来使用,表示如下:
式中,Q表示一组查询向量矩,K表示一组键向量矩阵,V表示向量矩阵;首先计算Q与K的点乘,然后除以以防止其结果过大,再利用Softmax函数将其结果归一化为概率分布,最后乘以矩阵V得到权重;
步骤4.2、通过使用自注意力机制获得的权重进行二次特征提取,以捕获重要的流量数据特征信息;通过添加一个维度重朔层来重塑下一模块的数据;使用一个额外的卷积层和一个全局平均池化层来进一步提取时空特征,最终的学习输出由最后一层全连接层生成。
一种基于深度学习神经网络的网络入侵检测装置,包括:
空间特征提取模块,用于构建CNN网络提取网络流量数据的空间特征;
时间特征提取模块,用于构建LSTM网络提取网络流量数据的时间特征;
特征融合模块,用于将提取的空间特征和时间特征进行并联得到融合特征;
二次特征提取模块,用于利用Self-Attention对融合特征分配不同的权重,进行二次特征提取以选择重要的特征信息,基于所述选择的重要的特征信息通过检测模型的输出层进行网络入侵检测。
进一步的,所述空间特征提取模块,具体用于:
卷积通过一组过滤器或内核将输入数据转换为突出输入数据特征的输出,卷积输出由激活函数进一步处理,然后通过池化进行下采样以去除不相关的数据;
CNN通过多轮的学习过程自动调整过滤器来学习输入数据,使其输出特征图有效地表示原始输入数据,捕获空间特征;网络数据包以一维形式存在,一维卷积表示如下:
其中,g表示图,i和j表示序列数据中不同值的位置,f是大小为m的滤波器;
使用批量归一化来调整RNN模块中的CNN输出,调整CNN捕获的空间特征,如下所示:
其中,x是输入批量中的值,μB和δB分别表示批量均值和方差,ε是一个常数值;基于归一化产生的归一化得到公式(3)所示的输出/>
其中γ和β表示超参数。
进一步的,所述时间特征提取模块,具体用于:
通过构建长短期记忆网络LSTM提取时间特征,LSTM抽象为四个子网络、一组控制门和一个记忆组件的连接,输入和输出值是由输入x(t)确定的相同大小的向量,保存在内存中的状态s(t)作为对当前学习的反馈,具体表示如下:
b+U×x(t)+W×h(t-1) (4)
其中,x(t)表示当前输入,h(t-1)表示先前输出,b表示偏置,U表示权重矩阵;
使用子网(p(t),g(t),f(t),q(t)),通过两种类型的控制门(α,tanh)来确定反馈s(t)从之前的学习和当前的输出h(t),具体表示如下:
s(t)=σ(f(t))*s(t-1)+σ(p(t))*tanhg(t) (5)
h(t)=tanhs(t)*σ(q(t)) (6)
其中,σ表示激活函数,LSTM通过调整这些网络中的权重和σ值来学习输入,以便可以在输出中有效地生成输入数据之间的时间特征。
进一步的,所述二次特征提取模块,具体用于:
通过使用自注意力机制从大量的信息中选出更重要的部分,以提高入侵检测的准确率,通过利用注意力机制来动态地生成不同连接的权重,用来处理变长的输入序列,作为神经网络中的一层来使用,表示如下:
式中,Q表示一组查询向量矩,K表示一组键向量矩阵,V表示向量矩阵;首先计算Q与K的点乘,然后除以以防止其结果过大,再利用Softmax函数将其结果归一化为概率分布,最后乘以矩阵V得到权重;
通过使用自注意力机制获得的权重进行二次特征提取,以捕获重要的流量数据特征信息;通过添加一个维度重朔层来重塑下一模块的数据;使用一个额外的卷积层和一个全局平均池化层来进一步提取时空特征,最终的学习输出由最后一层全连接层生成。
一种基于深度学习神经网络的网络入侵检测系统,包括:计算机可读存储介质和处理器;
所述计算机可读存储介质用于存储可执行指令;
所述处理器用于读取所述计算机可读存储介质中存储的可执行指令,执行所述的基于深度学习神经网络的网络入侵检测方法。
一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述的基于深度学习神经网络的网络入侵检测方法。
本发明具有如下优点:
1.本发明提出了一种基于(CRNN-SA)的新型入侵检测方法,该方法通过CNN网络和LSTM网络提取了原始网络流量各个组成部分的特征,可以分层学习网络流量的时空特征;
2.本发明引入了自注意力机制对每个输入赋予的权重取决于输入数据之间的关系,即通过输入项内部之间的相互博弈决定每个输入项的权重,以此给融合后的特征分配不同的权重;从大量信息中,有选择的筛选出少量重要信息,并聚焦到这些重要信息上,忽略掉大多数不重要的信息;权重越大越聚焦于其对应的值上,即权重代表了信息的重要性,而值是其对应的信息,进行二次特征提取以选择重要的特征信息;
3.本发明在UNSW-NB15数据集上进行了评估,实验结果表明本发明方法的有效性和鲁棒性。
附图说明
图1是本发明实施例HAST-IDS框架图;
图2是本发明实施例CRNN-SA框架图;
图3是本发明实施例LSTM网络结构图;
图4是本发明实施例Self-Attention结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种基于深度学习神经网络的网络入侵检测方法(CRNN-SA),由一种分层的卷积神经网络(CNN)、递归神经网络(RNN)以及自注意力机制(Self-Attention)组成,该方法通过利用一维CNN和RNN分别提取空间特征和时间特征,如图1所示。由于CNN能够从大量数据中提取高级特征,因此本发明将CNN放在RNN之前,CNN输出仍将保留时间信息,然后由RNN捕获这些信息,最后,Self-Attention可以利用注意力机制来“动态”地生成不同连接的权重,因此可以用来处理变长的输入序列,随着数据处理的进行到下一步,学习粒度变得更细。通过这种方式,CNN、RNN和Self-Attention可以充分学习且不会相互干扰,如图2所示。
所述方法包括如下步骤:
步骤一、构建CNN网络提取网络流量数据的空间特征;
步骤1.1、卷积通过一组过滤器或内核将输入数据转换为突出输入数据特征的输出,卷积输出由激活函数进一步处理,然后通过池化进行下采样以去除不相关的数据,以提取流量数据的空间特征;
步骤1.2、CNN通过一轮又一轮的学习过程自动调整过滤器来学习输入数据,使其输出特征图可以有效地表示原始输入数据,捕获空间特征;由于网络数据包以一维形式存在,一维卷积表示如下:
其中,g表示图,i和j表示序列数据中不同值的位置,f是大小为m的滤波器。
步骤1.3、本实施例使用批量归一化来调整RNN模块中的CNN输出,调整CNN捕获的空间特征,如下所示:
其中,x是输入批量中的值,μB和δB分别表示批量均值和方差,ε是一个常数值,为了保证公式中的分母不为零;基于归一化产生的归一化得到公式(3)所示的输出/>
其中γ和β表示超参数,都在学习过程中训练,以获得更好的学习结果。
步骤二、构建LSTM网络提取网络流量数据的时间特征;
所述步骤二具体包括:
步骤2.1、通过构建长短期记忆网络(LSTM)提取时间特征,LSTM可以抽象为四个子网络、一组控制门和一个记忆组件的连接,输入和输出值是由输入x(t)确定的相同大小的向量,保存在内存中的状态s(t)作为对当前学习的反馈,如图3所示,具体表示如下:
b+U×x(t)+W×h(t-1) (4)
其中,x(t)表示当前输入,h(t-1)表示先前输出,b表示偏置,U表示权重矩阵;
步骤2.2、使用子网(p(t),g(t),f(t),q(t)),通过两种类型的控制门(α,tanh)来确定反馈s(t)从之前的学习和当前的输出h(t),具体表示如下:
s(t)=σ(f(t))*s(t-1)+σ(p(t))*tanhg(t) (5)
h(t)=tanhs(t)*σ(q(t)) (6)其中,σ表示激活函数,LSTM通过调整这些网络中的权重和σ值来学习输入,以便可以在输出中有效地生成输入数据之间的时间特征。
步骤三、将步骤一提取的空间特征和步骤二提取的时间特征进行并联得到融合特征:
步骤四、利用Self-Attention对融合特征分配不同的权重,进行二次特征提取以选择重要的特征信息;
所述步骤四具体包括:
步骤4.1、通过使用自注意力机制从大量的信息中选出更重要的部分,以提高入侵检测的准确率,通过利用注意力机制来“动态”地生成不同连接的权重,用来处理变长的输入序列,可以作为神经网络中的一层来使用,如图4所示,表示如下:
式中,Q表示一组查询向量矩,K表示一组键向量矩阵,V表示向量矩阵。首先计算Q与K的点乘,然后除以以防止其结果过大,再利用Softmax函数将其结果归一化为概率分布,最后乘以矩阵V得到权重。
步骤4.2、由于学习粒度从一个CNN与RNN相结合得级别变化到另一个级别,通过使用自注意力机制获得的权重,进行二次特征提取,以捕获重要的流量数据特征信息,以提升检测的准确性;由于一个级别的输出大小与下一个级别的预期输入大小不同,因此通过添加一个维度重朔层来重塑下一模块的数据;此外,使用深度神经网络学习时的一个典型问题是过拟合,本发明实施例通过丢弃操作来处理;丢弃操作从深度神经网络中随机移除一些连接以减少过拟合;最后,使用一个额外的卷积层和一个全局平均池化层来进一步提取时空特征,最终的学习输出由最后一层全连接层生成。
下面通过具体实验对本发明的方案效果进行验证:
步骤1、数据描述:
本发明的神经网络设计的评估与所使用的数据集密切相关,为NID收集的许多数据集包含大量冗余数据,这使得评估结果不可靠,为了确保评估的有效性,本发明在调查中选择了非冗余数据集UNSW-NB15。
UNSW-NB15由澳大利亚网络安全中心(ACCS)于2015年生成,对于数据集,攻击样本首先从三个真实世界的网站收集:CVE(Common Vulnerabilities and Exposures),BID(Symantec Corporation)和MSD(Microsoft Security Bulletin),然后在实验室环境中模拟样本攻击以生成数据集。UNSW-NB15数据集中有九种攻击类别:DoS、Exploits、Generic、Shellcode、Reconnaissance、Backdoor、Worms、Analysis和Fuzzers。
步骤2、基线方法:
逻辑回归(LR):计算成本低,速度快。它的输出可以解释为一个概率,其输出可解释为概率。可能存在拟合不足的问题。当特征空间较大时,性能较差。
高斯朴素贝叶斯(GNB):针对大小数据集的快速训练速度。对缺失数据不太敏感。它需要计算先验概率。
k-最近邻(KNN):可用于分类和回归。易于理解和实施。分析不平衡样本时性能较差。对于大型数据集,计算复杂度较高。
决策树(DT):快速预测。处理高度非线性数据。存在过度拟合问题。需要更多时间来训练方法。
自适应增强(AdaB):可使用各种算法建立子分类器。不易导致过度拟合。性能取决于所选的弱分类器。对异常值敏感。
随机森林(RF):对异常值具有鲁棒性,可以很好地处理异常值。受噪声的影响相对较小。训练时间较长,因为它会生成很多棵树。需要更多的计算能力和资源。
卷积神经网络(CNN):通过共享卷积核,能很好地处理高维数据。使用梯度下降法,训练结果很容易收敛到局部最小值,而不是全局最小值。
长短期记忆(LSTM):门控机制大大缓解了梯度消失或梯度爆炸的问题,并简化了调整参数的复杂性。
门控循环单元(GRU):门控机制大大缓解了梯度消失或梯度爆炸的问题。
简单递归神经网络(RNN):它可以在序列预测中明确学习和使用上下文信息。但容易出现梯度消失问题。
深度神经网络(DNN):与传统的机器学习方法相比,它可以独立执行特征工程。
步骤3、确定评价指标:
本发明根据验证准确性(ACC)、检测率(DR)和误报率(FPR)评估CRNN-SA。ACC衡量CRNN-SA正确预测受攻击和未受攻击的正常流量的能力,而DR表示其仅预测攻击的能力。高DR可能会被高误报率(FPR)所掩盖,因此需要与DR共同考虑,具体表示如下:
其中TP为攻击次数,TN为正确分类的正常流量数,FP是实际的正常记录被误归类为攻击的数量,以及FN是被错误地归类为正常流量的攻击的数量。
步骤四、实验结果与分析:
本发明首先根据两种情况来衡量CRNN-SA方法的性能:(1)二分类,即CRNN-SA方法预测一个数据包只有两种情况:攻击或正常流量;(2)多类分类,即CRNN-SA方法将一个数据包识别为正常,或者是UNSW-NB15数据集(10类)中攻击方法中给出的一种攻击类型。实验结果如下:
如表1所示,显示了本发明的CRNN-SA算法在二元分类下的Accuracy、F1-score和Recall的二分类的检测结果,从表1中可以观察到,其他对比算法的准确率在55%到99.8%之间。相比之下,本发明提出的CRNN-SA算法在所有的对比方法方法中,表现出了最优的检测性能,CRNN-SA的Accuracy为93.7%,F1-score为91.3%,Recall为99.8%。
表1二分类结果
表2显示了多分类的检测结果,从表2中可以看出,使用本发明提出的CRNN-SA算法对UNSW-NB15数据集的预测准确率达到89.9%,而其他算法在8.5%至73.5%的范围内,RF算法对UNSW-NB15数据集的预测准确率达到73.6%。对于UNSW-NB15数据集,本发明提出的CRNN-SA算法相比于多类分类的RF和DT方法,均表现出了最优的性能,CRNN-SA在UNSW-NB15上的准确率为89.9%,F1-score为77.5%。CRNN-SA算法与其他方法方法的多分类的详细结果如表2所示,包括准确性和F1-score。
表2多分类结果
本发明是基于深度学习神经网络的网络入侵检测方法(CRNN-SA),由一种分层的卷积神经网络(CNN),递归神经网络(RNN)以及自注意力机制(Self-Attention)组成,该方法通过利用一维CNN和RNN分别提取空间特征和时间特征,将CNN与RNN提取的特征通过“并联”得到融合特征。为了让有用的输入信息得到更好表达,通过使用Self-Attention对融合后的特征分配不同的权重,从而可以有效地提取数据的空间和时间特征。
本发明另一实施例还提供一种基于深度学习神经网络的网络入侵检测装置,包括:
空间特征提取模块,用于构建CNN网络提取网络流量数据的空间特征;
时间特征提取模块,用于构建LSTM网络提取网络流量数据的时间特征;
特征融合模块,用于将提取的空间特征和时间特征进行并联得到融合特征;
二次特征提取模块,用于利用Self-Attention对融合特征分配不同的权重,进行二次特征提取以选择重要的特征信息,基于所述选择的重要的特征信息通过检测模型的输出层进行网络入侵检测。
本发明另一实施例提供了一种基于深度学习神经网络的网络入侵检测系统,包括:计算机可读存储介质和处理器;
所述计算机可读存储介质用于存储可执行指令;
所述处理器用于读取所述计算机可读存储介质中存储的可执行指令,执行第一方面所述的基于深度学习神经网络的网络入侵检测方法。
本发明另一实施例提供了一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现第一方面所述的基于深度学习神经网络的网络入侵检测方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何属于本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (10)
1.一种基于深度学习神经网络的网络入侵检测方法,其特征在于,包括如下步骤:
步骤一、构建CNN网络提取网络流量数据的空间特征;
步骤二、构建LSTM网络提取网络流量数据的时间特征;
步骤三、将步骤一提取的空间特征和步骤二提取的时间特征进行并联得到融合特征;
步骤四、利用Self-Attention对融合特征分配不同的权重,进行二次特征提取以选择重要的特征信息,基于所述选择的重要的特征信息通过检测模型的输出层进行网络入侵检测。
2.如权利要求1所述的基于深度学习神经网络的网络入侵检测方法,其特征在于:所述步骤一具体包括:
步骤1.1、卷积通过一组过滤器或内核将输入数据转换为突出输入数据特征的输出,卷积输出由激活函数进一步处理,然后通过池化进行下采样以去除不相关的数据;
步骤1.2、CNN通过多轮的学习过程自动调整过滤器来学习输入数据,使其输出特征图有效地表示原始输入数据,捕获空间特征;网络数据包以一维形式存在,一维卷积表示如下:
其中,g表示图,i和j表示序列数据中不同值的位置,f是大小为m的滤波器;
步骤1.3、使用批量归一化来调整RNN模块中的CNN输出,调整CNN捕获的空间特征,如下所示:
其中,x是输入批量中的值,μB和δB分别表示批量均值和方差,ε是一个常数值;基于归一化产生的归一化得到公式(3)所示的输出/>
其中γ和β表示超参数。
3.如权利要求1所述的基于深度学习神经网络的网络入侵检测方法,其特征在于:所述步骤二具体包括:
步骤2.1、通过构建长短期记忆网络LSTM提取时间特征,LSTM抽象为四个子网络、一组控制门和一个记忆组件的连接,输入和输出值是由输入x(t)确定的相同大小的向量,保存在内存中的状态s(t)作为对当前学习的反馈,具体表示如下:
b+U×x(t)+W×h(t-1) (4)其中,x(t)表示当前输入,h(t-1)表示先前输出,b表示偏置,U表示权重矩阵;
步骤2.2、使用子网(p(t),g(t),f(t),q(t)),通过两种类型的控制门(α,tanh)来确定反馈s(t)从之前的学习和当前的输出h(t),具体表示如下:
s(t)=σ(f(t))*s(t-1)+σ(p(t))*tanhg(t) (5)
h(t)=tanhs(t)*σ(q(t)) (6)
其中,σ表示激活函数,LSTM通过调整这些网络中的权重和σ值来学习输入,以便可以在输出中有效地生成输入数据之间的时间特征。
4.如权利要求1所述的基于深度学习神经网络的网络入侵检测方法,其特征在于:所述步骤四具体包括:
步骤4.1、通过使用自注意力机制从大量的信息中选出更重要的部分,以提高入侵检测的准确率,通过利用注意力机制来动态地生成不同连接的权重,用来处理变长的输入序列,作为神经网络中的一层来使用,表示如下:
式中,Q表示一组查询向量矩,K表示一组键向量矩阵,V表示向量矩阵;首先计算Q与K的点乘,然后除以以防止其结果过大,再利用Softmax函数将其结果归一化为概率分布,最后乘以矩阵V得到权重;
步骤4.2、通过使用自注意力机制获得的权重进行二次特征提取,以捕获重要的流量数据特征信息;通过添加一个维度重朔层来重塑下一模块的数据;使用一个额外的卷积层和一个全局平均池化层来进一步提取时空特征,最终的学习输出由最后一层全连接层生成。
5.一种基于深度学习神经网络的网络入侵检测装置,其特征在于,包括:
空间特征提取模块,用于构建CNN网络提取网络流量数据的空间特征;
时间特征提取模块,用于构建LSTM网络提取网络流量数据的时间特征;
特征融合模块,用于将提取的空间特征和时间特征进行并联得到融合特征;
二次特征提取模块,用于利用Self-Attention对融合特征分配不同的权重,进行二次特征提取以选择重要的特征信息,基于所述选择的重要的特征信息通过检测模型的输出层进行网络入侵检测。
6.如权利要求5所述的基于深度学习神经网络的网络入侵检测装置,其特征在于:所述空间特征提取模块,具体用于:
卷积通过一组过滤器或内核将输入数据转换为突出输入数据特征的输出,卷积输出由激活函数进一步处理,然后通过池化进行下采样以去除不相关的数据;
CNN通过多轮的学习过程自动调整过滤器来学习输入数据,使其输出特征图有效地表示原始输入数据,捕获空间特征;网络数据包以一维形式存在,一维卷积表示如下:
其中,g表示图,i和j表示序列数据中不同值的位置,f是大小为m的滤波器;
使用批量归一化来调整RNN模块中的CNN输出,调整CNN捕获的空间特征,如下所示:
其中,x是输入批量中的值,μB和δB分别表示批量均值和方差,ε是一个常数值;基于归一化产生的归一化得到公式(3)所示的输出/>
其中γ和β表示超参数。
7.如权利要求5所述的基于深度学习神经网络的网络入侵检测装置,其特征在于:所述时间特征提取模块,具体用于:
通过构建长短期记忆网络LSTM提取时间特征,LSTM抽象为四个子网络、一组控制门和一个记忆组件的连接,输入和输出值是由输入x(t)确定的相同大小的向量,保存在内存中的状态s(t)作为对当前学习的反馈,具体表示如下:
b+U×x(t)+W×h(t-1) (4)
其中,x(t)表示当前输入,h(t-1)表示先前输出,b表示偏置,U表示权重矩阵;
使用子网(p(t),g(t),f(t),q(t)),通过两种类型的控制门(α,tanh)来确定反馈s(t)从之前的学习和当前的输出h(t),具体表示如下:
s(t)=σ(f(t))*s(t-1)+σ(p(t))*tanhg(t) (5)
h(t)=tanhs(t)*σ(q(t)) (6)
其中,σ表示激活函数,LSTM通过调整这些网络中的权重和σ值来学习输入,以便可以在输出中有效地生成输入数据之间的时间特征。
8.如权利要求5所述的基于深度学习神经网络的网络入侵检测装置,其特征在于:所述二次特征提取模块,具体用于:
通过使用自注意力机制从大量的信息中选出更重要的部分,以提高入侵检测的准确率,通过利用注意力机制来动态地生成不同连接的权重,用来处理变长的输入序列,作为神经网络中的一层来使用,表示如下:
式中,Q表示一组查询向量矩,K表示一组键向量矩阵,V表示向量矩阵;首先计算Q与K的点乘,然后除以以防止其结果过大,再利用Softmax函数将其结果归一化为概率分布,最后乘以矩阵V得到权重;
通过使用自注意力机制获得的权重进行二次特征提取,以捕获重要的流量数据特征信息;通过添加一个维度重朔层来重塑下一模块的数据;使用一个额外的卷积层和一个全局平均池化层来进一步提取时空特征,最终的学习输出由最后一层全连接层生成。
9.一种基于深度学习神经网络的网络入侵检测系统,包括:计算机可读存储介质和处理器;
所述计算机可读存储介质用于存储可执行指令;
所述处理器用于读取所述计算机可读存储介质中存储的可执行指令,执行权利要求1-4中任一项所述的基于深度学习神经网络的网络入侵检测方法。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现权利要求1-4中任一项所述的基于深度学习神经网络的网络入侵检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311161513.6A CN117294476A (zh) | 2023-09-08 | 2023-09-08 | 基于深度学习神经网络的网络入侵检测方法、装置、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311161513.6A CN117294476A (zh) | 2023-09-08 | 2023-09-08 | 基于深度学习神经网络的网络入侵检测方法、装置、系统及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117294476A true CN117294476A (zh) | 2023-12-26 |
Family
ID=89257983
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311161513.6A Pending CN117294476A (zh) | 2023-09-08 | 2023-09-08 | 基于深度学习神经网络的网络入侵检测方法、装置、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117294476A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108154504A (zh) * | 2017-12-25 | 2018-06-12 | 浙江工业大学 | 一种基于卷积神经网络的钢板表面缺陷的检测方法 |
CN111970309A (zh) * | 2020-10-20 | 2020-11-20 | 南京理工大学 | 基于Spark车联网组合深度学习入侵检测方法及系统 |
CN114697096A (zh) * | 2022-03-23 | 2022-07-01 | 重庆邮电大学 | 基于空时特征和注意力机制的入侵检测方法 |
CN115550009A (zh) * | 2022-09-22 | 2022-12-30 | 广东工业大学 | 一种融合CNN-BiLSTM和SVM的工业物联网入侵检测系统和方法 |
CN116506210A (zh) * | 2023-05-18 | 2023-07-28 | 山东省计算中心(国家超级计算济南中心) | 基于流量特征融合的网络入侵检测方法及系统 |
CN116592993A (zh) * | 2023-04-11 | 2023-08-15 | 辽宁科技大学 | 一种基于深度学习的机械振动故障诊断方法 |
-
2023
- 2023-09-08 CN CN202311161513.6A patent/CN117294476A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108154504A (zh) * | 2017-12-25 | 2018-06-12 | 浙江工业大学 | 一种基于卷积神经网络的钢板表面缺陷的检测方法 |
CN111970309A (zh) * | 2020-10-20 | 2020-11-20 | 南京理工大学 | 基于Spark车联网组合深度学习入侵检测方法及系统 |
CN114697096A (zh) * | 2022-03-23 | 2022-07-01 | 重庆邮电大学 | 基于空时特征和注意力机制的入侵检测方法 |
CN115550009A (zh) * | 2022-09-22 | 2022-12-30 | 广东工业大学 | 一种融合CNN-BiLSTM和SVM的工业物联网入侵检测系统和方法 |
CN116592993A (zh) * | 2023-04-11 | 2023-08-15 | 辽宁科技大学 | 一种基于深度学习的机械振动故障诊断方法 |
CN116506210A (zh) * | 2023-05-18 | 2023-07-28 | 山东省计算中心(国家超级计算济南中心) | 基于流量特征融合的网络入侵检测方法及系统 |
Non-Patent Citations (2)
Title |
---|
俞建业等: ""基于Spark的车联网分布式组合深度学习入侵检测方法"", 《计算机科学》, no. 1, 31 December 2021 (2021-12-31), pages 518 - 523 * |
马明艳等: ""基于CNN_BiLSTM网络的入侵检测方法"", 《计算机工程与应用》, no. 10, 31 May 2022 (2022-05-31), pages 116 - 124 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Disha et al. | Performance analysis of machine learning models for intrusion detection system using Gini Impurity-based Weighted Random Forest (GIWRF) feature selection technique | |
Sethi et al. | Deep reinforcement learning based intrusion detection system for cloud infrastructure | |
Haggag et al. | Implementing a deep learning model for intrusion detection on apache spark platform | |
De Souza et al. | Two-step ensemble approach for intrusion detection and identification in IoT and fog computing environments | |
Lazzarini et al. | A stacking ensemble of deep learning models for IoT intrusion detection | |
Patil et al. | Majority voting and feature selection based network intrusion detection system | |
Disha et al. | A Comparative study of machine learning models for Network Intrusion Detection System using UNSW-NB 15 dataset | |
Manjula et al. | An effective network intrusion detection and classification system for securing WSN using VGG-19 and hybrid deep neural network techniques | |
Poornima et al. | Network attack classification using LSTM with XGBoost feature selection | |
Sayed et al. | Augmenting IoT intrusion detection system performance using deep neural network | |
Abdulganiyu et al. | Towards an efficient model for network intrusion detection system (IDS): systematic literature review | |
Shewale et al. | Machine Learning Based Intrusion Detection in IoT Network Using MLP and LSTM | |
Yao et al. | A two-layer soft-voting ensemble learning model for network intrusion detection | |
Thanh et al. | An approach to reduce data dimension in building effective network intrusion detection systems | |
Pakanzad et al. | Providing a hybrid approach for detecting malicious traffic on the computer networks using convolutional neural networks | |
Gu et al. | Learning-based intrusion detection for high-dimensional imbalanced traffic | |
Satyanegara et al. | Implementation of CNN-MLP and CNN-LSTM for MitM attack detection system | |
Safwan et al. | An IoT environment based framework for intelligent intrusion detection | |
CN117294476A (zh) | 基于深度学习神经网络的网络入侵检测方法、装置、系统及存储介质 | |
Vibhute et al. | Deep learning-based network anomaly detection and classification in an imbalanced cloud environment | |
Reis et al. | Intrusion detection systems with GPU-accelerated deep neural networks and effect of the depth | |
Prabhakaran et al. | An optimized deep learning framework for network intrusion detection system (NIDS) | |
Sharma et al. | Botnet Attack Detection in IoT Networks using CNN and LSTM | |
Alotaibi | Network Intrusion Detection Model Using Fused Machine Learning Technique. | |
Patel et al. | Detection of intrusions using support vector machines and deep neural networks |
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 |