CN110691100B - 基于深度学习的分层网络攻击识别与未知攻击检测方法 - Google Patents

基于深度学习的分层网络攻击识别与未知攻击检测方法 Download PDF

Info

Publication number
CN110691100B
CN110691100B CN201911031327.4A CN201911031327A CN110691100B CN 110691100 B CN110691100 B CN 110691100B CN 201911031327 A CN201911031327 A CN 201911031327A CN 110691100 B CN110691100 B CN 110691100B
Authority
CN
China
Prior art keywords
flow
attack
unknown
encoder
self
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.)
Active
Application number
CN201911031327.4A
Other languages
English (en)
Other versions
CN110691100A (zh
Inventor
姜晓枫
陈翔
杨坚
谭小彬
张勇东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Science and Technology of China USTC
Original Assignee
University of Science and Technology of China USTC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by University of Science and Technology of China USTC filed Critical University of Science and Technology of China USTC
Priority to CN201911031327.4A priority Critical patent/CN110691100B/zh
Publication of CN110691100A publication Critical patent/CN110691100A/zh
Application granted granted Critical
Publication of CN110691100B publication Critical patent/CN110691100B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Molecular Biology (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Medical Informatics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于深度学习的分层网络攻击识别与未知攻击检测方法,包括:采用自编码器对正常流量与异常流量的行为模式进行学习,从而利用学习后的自编码器判别待测流量为正常流量或者异常流量;利用深度神经网络作为判别模型,来判别待测流量的攻击类型为某一已知的攻击类别或为未知类别;融合自编码器与判别模型的结果,完成网络攻击分类与未知攻击检测。该方法既能识别正常流量并且对已知的异常流量进行分类,又能检测新型未知的网络攻击,结合生成模型和判别模型各自的优势提高检测准确率。

Description

基于深度学习的分层网络攻击识别与未知攻击检测方法
技术领域
本发明涉及计算机网络技术领域,尤其涉及一种基于深度学习的分层网络攻击识别与未知攻击检测方法。
背景技术
随着网络技术的高速发展,互联网已经覆盖了社会生活的各个方面,对社会生活产生了深远的影响。网络的广泛应用虽然推动了社会经济的快速发展,但同时也成为黑客和不法分子传播恶意软件、实施网络攻击的重要媒介。近年来,针对网络协议和应用程序漏洞的新型网络攻击方法更是层出不穷,网络安全检测成为网络监管、运维中的重要任务之一,尤其是未知的零日网络攻击检测问题受到广泛关注。
传统的网络安全检测方法主要分为误用检测和异常检测两类。
误用检测:误用检测技术又称基于知识的检测技术。它假定所有入侵行为和手段都能够表达为一种模式或特征,并对已知的入侵行为和手段进行分析,提取入侵特征,构建攻击模式或攻击签名,通过系统当前状态与攻击模式或攻击签名的匹配判断入侵行为。误用检测是最成熟、应用最广泛的技术。然而,随着加密协议和广泛使用以及新型网络协议、应用的出现,加密网络攻击和利用零日漏洞的新型网路攻击也越来越多。由于零日攻击的攻击特征和攻击签名通常是未知的,因此误用攻击方法无法有效的应对这些网络安全攻击的新挑战。而且误用检测通常需要消耗大量的人力对攻击流量进行分析,人工提取其中的特征,面临着人工成本高,分析难度大,分析周期长等问题。
异常检测,首先要对网络流量的不同特征进行汇总、筛选和分析,利用各个维度的流量特征对正常的流量及其数据进行建模,通过模型对网络的行为数据进行预测或检测。这种方法需要模型先对网络流量行为进行学习训练,不断地调整参数以得到较为适合的模型,再用此模型对网络流量数据进行检测或者是预测。如果是预测,则还需将预测的值与正常范围内的特征值进行对比,即可判断网络是否出现异常。异常检测只需要正常流量作为输入数据,对数据的要求较小,而且从一定程度上可以检测未知的入侵行为,但是这类方法却面临着检测精度低、误报率高,且无法对网络攻击进行分类等问题。
发明内容
本发明的目的是提供一种基于深度学习的分层网络攻击识别与未知攻击检测方法,在实现对已知攻击进行分类的基础上,利用深度学习模型的泛化能力检测不同于正常流量的未知攻击流量。
本发明的目的是通过以下技术方案实现的:
一种基于深度学习的分层网络攻击识别与未知攻击检测方法,包括:
采用自编码器对正常流量与异常流量的行为模式进行学习,从而利用学习后的自编码器判别待测流量为正常流量或者异常流量;
利用深度神经网络作为判别模型,来判别待测流量的攻击类型为某一已知的攻击类别或为未知类别;
融合自编码器与判别模型的结果,完成网络攻击分类与未知攻击检测。
由上述本发明提供的技术方案可以看出,解决了传统基于规则的方法无法识别新型未知网络攻击的问题。利用生成模型实现对流量的二分类,检测未知的异常流量;利用判别模型实现已知攻击的细分类,提高已知攻击检测准确率;通过结果融合使得本发明既能识别正常流量并且对已知的异常流量进行分类,又能检测新型未知的网络攻击,结合生成模型和判别模型各自的优势提高检测准确率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明实施例提供的一种基于深度学习的分层网络攻击识别与未知攻击检测方法的整体框架示意图;
图2为本发明实施例提供的自编码器及其学习过程示意图;
图3为本发明实施例提供的判别模型进行攻击分类与未知类别检测示意图;
图4为本发明实施例提供的安全检测举例示意图。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
现有的基于规则的网络安全检测方法面临着未知攻击威胁、人工成本高、专业性要求高、分析周期长等问题;同时,基于异常的安全检测方法又面临着检测精度低、无法对攻击进行分类等问题。因此,本发明提出了一种基于深度学习的网络攻击分类与未知攻击检测方法。首先基于生成模型分别对正常流量和异常流量的行为模式进行学习,将待测流量分别与正常行为和异常行为做比较从而区分正常流量和异常流量。同时,利用判别模型将待测流量按攻击类型进行细分,并利用开放集合识别理论判断待测流量是否属于未知类型。最后通过融合生成模型和判别模型的检测结果,既能实现对未知攻击的检测,又能保证对已知攻击的检测准确度。
未知攻击检测是一个相对开放集合识别问题。若将流量分为正常流量和异常流量,由于识别结果被训练集全部涵盖,因此这是一个封闭集合识别问题;若将流量按照攻击类型进行分类,由于许多未知的攻击类型没有包含在训练集中,因此这是一个开放集合识别问题。针对这一混合场景,本发明提出一种分层的网络攻击识别与未知攻击检测方法,首先在封闭集合条件下,将网络流量分类为正常流量和异常流量;然后在开放集合条件下对网络流量按照攻击类别分类同时检测未知类别,最后将融合检测结果提高检测准确率。如图1所示,该方法主要由三部分组成,包括:异常流量检测、攻击类型检测与未知类识别以及结果融合。
第一部分利用无监督训练加微调的方式训练自编码器,分别对正常和异常网络流量行为模式进行学习,通过训练,自编码器可以对某一类流量(正常或异常)的行为特征进行重构,使得自编码器的输出趋近于输入。如果待测流量不属于某一类别,那么该待测流量的行为特征与对应的自编码器学习到的行为模式相差较远,则自编码器对该待测流量将产生较大的重构误差。反之,重构误差较小。通过待测流量在自编码器中的重构误差判断该样本属于正常流量还是异常流量。
第二部分利用深度神经网络实现对流量按攻击类型进行分类,利用已知攻击类型的异常流量有监督的训练神经网络,使得神经网络对已知攻击具有较高的识别准确率。同时,为了实现对未知类别的检测,引入度量学习方法,使得神经网络对每一类攻击流量学习到的特征在空间上尽量紧凑,通过待测流量在该特征空间上的距离判断属于某一类攻击或者未知类型。由于该部分训练的神经网络只用到了异常流量,因此未知类别包含正常流量或者未知攻击流量。
第三部分对前两部分的检测结果进行融合,用第一部分基于自编码器的检测结果提高未知攻击检测的能力,用第二部分基于有监督的分类方法提高已知攻击的检测准确率。
为了便于理解,下面针对本发明做详细介绍。
本发明实施例中,将原始数据包按照源IP、目的IP、源端口、目的端口和协议五元组聚合成数据流,用数据流的行为特征表示网络流量。用于训练的网络流量表示为{(x1,y1),(x2,y2),…,(xn,yn)},其中xi∈Rd表示第i个样本,其表示相应网络流量的行为特征,yi∈{0,1,2,…,k}表示第i个样本的标签,yi=0表示正常流量,yi>0表示异常流量,且攻击类型为yi,根据取值1,2,…,k,表示具体的攻击类型。为了方便起见,在后面的表述中,我们也会将流量样本及其标签用一个符号表示,即用
Figure BDA0002250240750000041
表示属于第j类流量的i个样本。测试样本表示为
Figure BDA0002250240750000042
其中k+1表示未知攻击。本发明利用上述训练数据学习一个分类器,对测试数据
Figure BDA0002250240750000044
能够正确判断其流量类型
Figure BDA0002250240750000043
还参见图1,本发明主要分为如下三个步骤:
步骤1、采用自编码器对正常流量与异常流量的行为模式进行学习,从而利用学习后的自编码器判别待测流量为正常流量或者异常流量。
本步骤的原理为:自动编码器的目标是实现样本重构,先通过编码层把高维空间中的向量压缩成低维向量,然后通过解码层把低维向量解压重构出高维向量,通过最小化重构误差学习输入样本的行为模式。若输入样本的重构误差小,则说明输入样本与训练数据属于同一类,反之,说明与训练数据属于不同类。
本步骤主要分为如下几个阶段:
1)利用自编码器学习正常流量的行为模式。
本发明实施例中,利用正常流量的样本预训练一个表达正常流量行为模式的自编码器。如图2所示,自编码器包含编码层与解码层;编码层对输入的正常流量样本的特征向量进行压缩,输出压缩后的特征向量:
h=f(Wx+b1)
解码层对压缩后的特征向量进行解压重构出特征向量:
z=f(Vh+b2)
通过最小化重构误差使得自编码器能够学习正常流量的行为模式:
Lae(x,W,V,b1,b2)=||x-z||2
2)利用已知的异常流量对自编码器进行微调。
本发明实施例中,利用已知的异常流量和正常流量的样本有监督的对预训练的自编码器进行微调,使得自编码器不仅能够较好的学习正常流量本身的行为特征,还能学习正常流量和异常流量的区别,提高识别准确率。
设样本x属于正常流量(y=0)的概率为ρ,那么属于异常流量(y>0)的概率则为1-ρ。则样本x的类别为y的概率为:
P(y|x)=ρ1-y(1-ρ)y
其中,概率ρ可以用样本对自编码器的损失函数来衡量,正常流量的重构误差应该较小,异常流量的重构误差应该较大,即
Figure BDA0002250240750000051
有监督微调的损失函数可以取为P(y|x)的负对数:
Figure BDA0002250240750000052
其中,Lae(x)是指重构误差,也即损失函数,等同于前文的Lae(x,W,V,b1,b2),此处为了便于表示省略了网络参数W,V,b1,b2
3)计算待测流量的重构误差,得出异常检测结果。
利用学习后的自编码器计算待测流量
Figure BDA0002250240750000053
为正常流量的概率
Figure BDA0002250240750000054
若大于等于设定值δ,则认为待测流量
Figure BDA0002250240750000055
为正常流量,否则,为异常流量:
Figure BDA0002250240750000056
步骤2、利用深度神经网络作为判别模型,来判别待测流量的攻击类型为某一已知的攻击类别或为未知类别。
深度神经网络是一种判别模型,能够较好的处理多分类任务。然而现有的神经网络通常工作在封闭集合下。即测试样本的类别全部包含在训练集中。为了使用神经网络实现对网络攻击分类,同时识别训练集中未出现过的未知类,本发明采用度量学习的方法使得神经网络能够学习到有区分度的特征表达,利用样本在特征空间上的距离判断是否为未知类。
本步骤的原理为:在传统的神经网络的损失函数的基础上,对学习到的特征表达加入正则化项,使得同一类攻击流量在特征空间上的距离较近。在紧凑的特征空间上,如果输入流量的特征表达离所有已知攻击的特征都较远,则判断该流量属于未知类。
本步骤主要分为如下几个阶段:
1)构建深度神经网络用于攻击类型检测。
如图3所示,神经网络中采用多层感知机作为基分类器Gθ,利用训练集中所有异常流量的样本{(x,y)|y>0}训练神经网络;其中,θ表示网络参数,x表示异常流量,y为x的标签,即真实类别,y>0表示异常流量,对应一类攻击。
为了利用神经网络识别已知攻击的攻击类型,利用负交叉熵损失函数训练神经网络:
Figure BDA0002250240750000061
神经网络的输出节点与攻击类型一一对应,Gθ(x)[j]表示神经网络输出向量的第j个元素,也即样本x属于第j类攻击的概率,j=1,2,…,k,k为攻击类型的总数。Gθ(x)[y]表示神经网络判断样本x属于其真实类别y的概率。
为了使用神经网络实现未知类检测,在传统的神经网络训练方法的基础上加入度量学习损失函数,使得神经网络学习有区分度的特征表达,即使得同一类攻击的流量在特征空间上的距离较近(即,小于指定距离,具体数值可以根据实际情况设定);度量学习损失函数表示为:
Figure BDA0002250240750000062
其中,Gθ(x)表示神经网络对于异常流量的样本x的输出向量,即Gθ(x)={Gθ(x)[1],…,Gθ(x)[k]},μy表示第y类攻击的特征中心,通过批训练在线更新:
Figure BDA0002250240750000063
其中,xu表示第u个异常流量的样本,Gθ(xu)表示神经网络对于异常流量的样本xu的输出向量;yu表示其对应的真实类别,
Figure BDA0002250240750000064
为更新后的第yu类攻击的特征中心,N为每次批训练的样本总数;
最终训练神经网络的损失函数定义为:
L(θ,x,y)=Ls(θ,x,k)+λLd(θ,x,y)
其中,λ为系数。
2)学习未知类检测模型。
通过改进后的攻击识别模型,可以学习一个紧凑的特征空间,在特征空间上,未知类别的流量距离已知攻击的流量的距离较远(即,超出指定距离,具体数值可以根据实际情况设定)。
对每一类已知攻击j,计算训练集中第j类攻击的样本xj在特征空间上的表达Gθ(xj);在有监督的训练阶段中,样本的类别是已知的,可以在特征空间上计算该样本xj到所在类的特征中心μj的距离:
Dj(xj)=||Gθ(xj)-μj||2
对所有属于第j类的样本计算出来的距离
Figure BDA0002250240750000071
根据极端值理论将该距离中偏离正常值的分布建模成广义帕德罗分布,并用最大似然估计GDPfit()拟合分布,获得拟合后的广义帕德罗分布:
Figure BDA0002250240750000072
其中,
Figure BDA0002250240750000073
表示第j类流量的第r个样本,m为训练集中第j类样本的总数,ρj表示拟合的广义帕德罗分布;对每一类攻击做同样的计算,得到每一类攻击在特征空间上异常距离的分布{ρ12…,ρk}。
本领域技术人员可以理解,根据极端值理论,可以将一个随机变量中的异常值建模成广义帕德罗分布,在本发明中,也就是对于距离类中心超出设定值的点,将他们与类中心的距离的分布看成广义帕德罗分布,然后用训练样本拟合广义帕德罗分布参数。
3)攻击类型检测和未知类识别。
对于待测流量
Figure BDA0002250240750000074
计算神经网络的输出向量
Figure BDA0002250240750000075
从而得到识别结果:
Figure BDA0002250240750000076
计算在特征空间上待测流量
Figure BDA00022502407500000710
到第j类攻击的特征中心μj的距离,利用第j类攻击在特征空间上距离的广义帕德罗分布ρj,判断该待测流量
Figure BDA0002250240750000078
属于被误分为第j类攻击的未知攻击的概率:
Figure BDA0002250240750000079
若对j第类攻击来说,该待测流量
Figure BDA0002250240750000088
属于异常点的概率
Figure BDA0002250240750000081
越大,则说明属于第j类攻击的可能性越小,利用概率值更新神经网络的输出,并利用softmax函数转化成概率分布:
Figure BDA0002250240750000082
Figure BDA0002250240750000083
若更新后,待测流量
Figure BDA0002250240750000087
仍然属于第j类的概率小于预设的阈值∈,则将其识别为未知类别,否则,将其识别为第j类攻击,
Figure BDA0002250240750000085
其中,y*=k+1表示待测流量
Figure BDA0002250240750000089
属于未知类别,y*=j,0<j<k+1表示待测流量
Figure BDA0002250240750000086
属于某个具体攻击类型。
由于攻击类型检测模型的训练集中只包含攻击流量,因此,基于该模型识别出的未知类包含正常流量和未知攻击。
步骤3、融合自编码器与判别模型的结果,完成网络攻击分类与未知攻击检测。
如图1所示,待测流量分别经过自编码器(异常流量检测模块)和判别模型(攻击类型识别模块处理),最后将两个模块的识别结果进行融合。利用异常流量检测模块提高攻击类型检测模块检测未知攻击的能力。利用攻击类型检测模块提高异常流量检测模块识别已知攻击精度,并实现对攻击的分类,主要包括如下几种情况:
1)若学习后的自编码器的判别结果为正常流量,判别模型的判别结果为第j类攻击,则融合后的识别结果是待测流量属于第j类攻击;原理:对同一条待测流量给出了矛盾的检测结果,由于判别模型对已知攻击的识别准确率比自编码器高,此时以判别模型的结果为主可以提高检测准确率。
2)若学习后的自编码器的判别结果为异常流量,判别模型的判别结果为第j类攻击,则融合后的识别结果是待测流量属于第j类攻击;原理:对同一条待测流量的检测结果相符,此时检测结果即为对应的攻击类型。
3)若学习后的自编码器的判别结果为正常流量,判别模型的判别结果为未知类别,则融合后的识别结果是待测流量为正常流量;原理:如果判别模型的判别结果为未知类,那么该待测流量是正常流量或者未知攻击。此时,若自编码器的判别结果为正常流量,那么可以判断该待测流量为正常流量。
4)若学习后的自编码器的判别结果为异常流量,判别模型的判别结果为未知类别,则融合后的识别结果是待测流量属于未知类别。原理:如果判别模型的判别结果为未知类,那么该待测流量是正常流量或者未知攻击。此时,若自编码器的判别结果为异常,则判断该待测流量为未知攻击。
上述融合策略如表1所示。
Figure BDA0002250240750000091
表1融合策略
为了说明本发明上述方案的效果,还进行了相关实验。
如图4所示,在训练阶段,首先利用交换机流量镜像技术旁路出网络流量,利用商业或者开源入侵检测工具对流量进行标注,同时利用CICFlowMeter工具将流量按五元组(源ip,目的ip,源端口,目的端口,协议号)提取流量的行为统计特征。本实验中,利用83种不同的特征来描述一条网络流量,包括前向和反向的持续时间,数据包个数、总的字节数、数据包长度等。将入侵检测工具和CICFlowMeter的结果进行匹配,得到流量行为统计特征加标签的训练数据集。利用训练集中的正常流量和异常流量训练异常流量检测模型(自编码器),利用训练集中的异常流量训练攻击类型检测模型(判别模型)。
在测试阶段,首先利用交换机流量镜像技术旁路出网络流量,这时流量中包含正常流量,训练阶段出现过的已知攻击流量,同时可能包含训练阶段未出现过的未知攻击流量。利用CICFlowMeter工具提取网络流量的行为统计特征,分别输入训练好的异常流量检测模型和攻击类型检测模型,最后通过结果融合判断该流量属于正常流量或者某一类具体的已知攻击类型或者未知攻击。
本发明在CICIDS2017数据集上进行了验证,CICIDS2017包含正常流量和14中最新的常见攻击流量。选择其中的六种攻击类型作为未知攻击,这六种攻击样本只出现于测试集中;剩余的正常流量和八种攻击流量按照80%-20%的比例生成训练集和测试集。利用该数据集分别训练异常检测模型和攻击分类模型,然后在测试集上分别测试了两个模型的识别准确率。最后利用结果融合模块计算最终的识别效果。如表2所示,异常流量检测可以区分正常流量和异常流量,但是无法对攻击进行分类,而且识别准确率不是很高。攻击分类在保证准确率的情况下无法同时实现识别正常流量和未知攻击,为了识别未知攻击,只对流量按攻击类型进行分类,同时检测未知类型,由结果可知,对已知攻击进行分类的准确率很高,对未知类检测的准确率较低。对两个模型的结果进行融合后,在保证准确率的情况下,既能识别正常流量和异常流量,并对异常流量进行分类,同时还能实现未知攻击检测。
Figure BDA0002250240750000101
表2验证结果
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例可以通过软件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,上述实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。

Claims (6)

1.一种基于深度学习的分层网络攻击识别与未知攻击检测方法,其特征在于,包括:
采用自编码器对正常流量与异常流量的行为模式进行学习,从而利用学习后的自编码器判别待测流量为正常流量或者异常流量;
利用深度神经网络作为判别模型,来判别待测流量的攻击类型为某一已知的攻击类别或为未知类别;
融合自编码器与判别模型的结果,完成网络攻击分类与未知攻击检测;
其中,利用深度神经网络作为判别模型,来判别待测流量的攻击类型为某一已知的攻击类别或为未知类别包括:在传统的神经网络训练方法的基础上加入度量学习损失函数,使得神经网络学习有区分度的特征表达,即使得同一类攻击的流量在特征空间上的距离小于指定距离;然后,通过学习一个特征空间,在特征空间上,未知类别的流量距离已知攻击的流量的距离超出指定距离,以此为依据判别待测流量的攻击类型;
在传统的神经网络训练方法的基础上加入度量学习损失函数,使得神经网络学习有区分度的特征表达包括:
神经网络中采用多层感知机作为基分类器Gθ,利用训练集中所有异常流量的样本{(x,y)|y>0}训练神经网络;其中,θ表示网络参数,x表示异常流量,y为x的标签,即真实类别,y>0表示异常流量,对应一类攻击;
利用负交叉熵损失函数训练神经网络:
Figure FDA0002965462230000011
神经网络的输出节点与攻击类型一一对应,Gθ(x)[j]表示神经网络输出向量的第j个元素,也即样本x属于第j类攻击的概率,j=1,2,…,k,k为攻击类型的总数;Gθ(x)[y]表示神经网络判断样本x属于真实类别y的概率;
在传统的神经网络训练方法的基础上加入度量学习损失函数:
Figure FDA0002965462230000012
其中,Gθ(x)={Gθ(x)[1],…,Gθ(x)[k]},μy表示第y类攻击的特征中心,通过批训练在线更新:
Figure FDA0002965462230000021
其中,xu表示第u个异常流量的样本,yu表示其对应的真实类别,
Figure FDA0002965462230000022
为更新后的第yu类攻击的特征中心,N为每次批训练的样本总数;
最终训练神经网络的损失函数定义为:
L(θ,x,y)=Ls(θ,x,k)+λLd(θ,x,y)
其中,λ为系数。
2.根据权利要求1所述的一种基于深度学习的分层网络攻击识别与未知攻击检测方法,其特征在于,采用自编码器对正常流量与异常流量的行为模式进行学习的方式包括:
利用正常流量的样本预训练一个表达正常流量行为模式的自编码器,自编码器包含编码层与解码层;编码层对输入的正常流量样本的特征向量进行压缩,输出压缩后的特征向量;解码层对压缩后的特征向量进行解压重构出特征向量;通过最小化重构误差使得自编码器能够学习正常流量的行为模式;
利用已知的异常流量和正常流量的样本有监督的对预训练的自编码器进行微调,使得自编码器还能够学习正常流量和异常流量的区别。
3.根据权利要求1或2所述的一种基于深度学习的分层网络攻击识别与未知攻击检测方法,其特征在于,利用学习后的自编码器判别待测流量为正常流量或者异常流量包括:
利用学习后的自编码器计算待测流量为正常流量的概率
Figure FDA0002965462230000023
若大于等于设定值δ,则认为待测流量为正常流量,否则,为异常流量:
Figure FDA0002965462230000024
上式中,
Figure FDA0002965462230000025
为待测流量
Figure FDA0002965462230000026
的标签,
Figure FDA0002965462230000027
则表示待测流量
Figure FDA0002965462230000028
为正常流量,
Figure FDA0002965462230000029
则表示待测流量
Figure FDA00029654622300000210
为异常流量。
4.根据权利要求1所述的一种基于深度学习的分层网络攻击识别与未知攻击检测方法,其特征在于,
对每一类已知攻击j,计算训练集中第j类攻击的样本xj在特征空间上的表达Gθ(xj);在特征空间上计算样本xj到所在类的特征中心μj的距离:
Dj(xj)=||Gθ(xj)-μj||2
对所有属于第j类的样本计算出来的距离
Figure FDA0002965462230000031
根据极端值理论将该距离中偏离正常值的分布建模成广义帕德罗分布,并用最大似然估计GDPfit()拟合,获得拟合后的广义帕德罗分布:
Figure FDA0002965462230000032
其中,ρj表示拟合的广义帕德罗分布;m为训练集中第j类样本的总数,
Figure FDA0002965462230000033
表示第j类流量的第r个样本;
对每一类攻击做同样的计算,得到每一类攻击在特征空间上异常距离的分布{ρ12…,ρk}。
5.根据权利要求4所述的一种基于深度学习的分层网络攻击识别与未知攻击检测方法,其特征在于,对待测流量进行攻击类型检测和未知类识别的方式包括:
对于待测流量
Figure FDA0002965462230000034
计算神经网络的输出向量
Figure FDA0002965462230000035
从而得到识别结果:
Figure FDA0002965462230000036
计算在特征空间上待测流量
Figure FDA0002965462230000037
到第j类攻击的特征中心μj的距离,利用第j类攻击在特征空间上距离的广义帕德罗分布ρj,判断该待测流量
Figure FDA0002965462230000038
属于被误分为第j类的未知攻击的概率:
Figure FDA0002965462230000039
若对第j类攻击来说,概率
Figure FDA00029654622300000310
越大,则说明属于第j类攻击的可能性越小,利用概率值更新神经网络的输出,并利用softmax函数转化成概率分布:
Figure FDA00029654622300000311
Figure FDA00029654622300000312
若更新后,待测流量
Figure FDA00029654622300000313
仍然属于第j类的概率小于预设的阈值∈,则将其识别为未知类别,否则,将其识别为第j类攻击,
Figure FDA00029654622300000314
其中,y*=k+1表示待测流量
Figure FDA00029654622300000315
属于未知类别,y*=j,0j<k+1表示待测流量
Figure FDA00029654622300000316
属于某个具体攻击类型。
6.根据权利要求1所述的一种基于深度学习的分层网络攻击识别与未知攻击检测方法,其特征在于,融合自编码器与判别模型的结果的方式包括:
若学习后的自编码器的判别结果为正常流量,判别模型的判别结果为第j类攻击,则融合后的识别结果是待测流量属于第j类攻击;
若学习后的自编码器的判别结果为异常流量,判别模型的判别结果为第j类攻击,则融合后的识别结果是待测流量属于第j类攻击;
若学习后的自编码器的判别结果为正常流量,判别模型的判别结果为未知类别,则融合后的识别结果是待测流量为正常流量;
若学习后的自编码器的判别结果为异常流量,判别模型的判别结果为未知类别,则融合后的识别结果是待测流量属于未知类别。
CN201911031327.4A 2019-10-28 2019-10-28 基于深度学习的分层网络攻击识别与未知攻击检测方法 Active CN110691100B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911031327.4A CN110691100B (zh) 2019-10-28 2019-10-28 基于深度学习的分层网络攻击识别与未知攻击检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911031327.4A CN110691100B (zh) 2019-10-28 2019-10-28 基于深度学习的分层网络攻击识别与未知攻击检测方法

Publications (2)

Publication Number Publication Date
CN110691100A CN110691100A (zh) 2020-01-14
CN110691100B true CN110691100B (zh) 2021-07-06

Family

ID=69114412

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911031327.4A Active CN110691100B (zh) 2019-10-28 2019-10-28 基于深度学习的分层网络攻击识别与未知攻击检测方法

Country Status (1)

Country Link
CN (1) CN110691100B (zh)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113162891B (zh) * 2020-01-23 2024-03-26 北京华顺信安科技有限公司 攻击流量快速识别系统、方法、计算机可读介质及设备
CN111314331B (zh) * 2020-02-05 2020-11-03 北京中科研究院 一种基于条件变分自编码器的未知网络攻击检测方法
CN111343147B (zh) * 2020-02-05 2020-12-11 北京中科研究院 一种基于深度学习的网络攻击检测装置及方法
CN111401447B (zh) * 2020-03-16 2023-04-07 腾讯云计算(北京)有限责任公司 一种基于人工智能的流量作弊识别方法、装置、电子设备
CN111507385B (zh) * 2020-04-08 2023-04-28 中国农业科学院农业信息研究所 一种可扩展的网络攻击行为分类方法
CN111507262B (zh) * 2020-04-17 2023-12-08 北京百度网讯科技有限公司 用于检测活体的方法和装置
CN111737688B (zh) * 2020-06-08 2023-10-20 上海交通大学 基于用户画像的攻击防御系统
CN113810333B (zh) * 2020-06-11 2023-06-27 中国科学院计算机网络信息中心 基于半监督谱聚类和集成svm的流量检测方法及系统
CN111786999B (zh) * 2020-06-30 2023-03-24 中国电子科技集团公司电子科学研究院 一种入侵行为的检测方法、装置、设备和存储介质
CN111800758B (zh) * 2020-06-30 2021-10-01 中国科学技术大学 基于区块链的无人机蜂群分层共识方法
CN111988277A (zh) * 2020-07-18 2020-11-24 郑州轻工业大学 一种基于双向生成对抗网络的攻击检测方法
CN111988237A (zh) * 2020-07-31 2020-11-24 中移(杭州)信息技术有限公司 流量识别方法、装置、电子设备及存储介质
CN112068926A (zh) * 2020-07-31 2020-12-11 中国科学院信息工程研究所 一种局域网内虚拟机的识别方法
CN111917781A (zh) * 2020-08-05 2020-11-10 湖南匡楚科技有限公司 一种智能内部恶意行为网络攻击识别方法及电子设备
CN112134847A (zh) * 2020-08-26 2020-12-25 郑州轻工业大学 基于用户流量行为基线的攻击检测方法
CN112014821B (zh) * 2020-08-27 2022-05-17 电子科技大学 一种基于雷达宽带特征的未知车辆目标识别方法
CN112165464B (zh) * 2020-09-15 2021-11-02 江南大学 一种基于深度学习的工控混合入侵检测方法
CN112202743B (zh) * 2020-09-23 2023-04-07 北方国际合作股份有限公司 一种基于scada系统的地铁网络入侵防御方法
CN112738015B (zh) * 2020-10-28 2023-05-02 北京工业大学 一种基于可解释卷积神经网络cnn与图检测的多步攻击检测方法
CN112714079B (zh) * 2020-12-14 2022-07-12 成都安思科技有限公司 一种vpn环境下的目标服务识别方法
CN112671768A (zh) * 2020-12-24 2021-04-16 四川虹微技术有限公司 一种异常流量检测方法、装置、电子设备及存储介质
CN112822184B (zh) * 2020-12-31 2023-04-07 网络通信与安全紫金山实验室 一种内生安全系统中的无监督自主攻击检测方法
CN112733954A (zh) * 2021-01-20 2021-04-30 湖南大学 一种基于生成对抗网络的异常流量检测方法
CN112953924B (zh) * 2021-02-04 2022-10-21 西安电子科技大学 网络异常流量检测方法、系统、存储介质、终端及应用
CN112953956B (zh) * 2021-03-05 2022-11-18 中电积至(海南)信息技术有限公司 一种基于主被动结合的反射放大器识别方法
CN113206824B (zh) * 2021-03-23 2022-06-24 中国科学院信息工程研究所 动态网络异常攻击检测方法、装置、电子设备和存储介质
CN113255750B (zh) * 2021-05-17 2022-11-08 安徽大学 一种基于深度学习的vcc车辆攻击检测方法
CN113395276B (zh) * 2021-06-10 2022-07-26 广东为辰信息科技有限公司 基于自编码器能量检测的网络入侵检测方法
CN113542222B (zh) * 2021-06-16 2023-07-25 浙江工业大学 一种基于双域vae的零日多步威胁识别方法
CN113595987B (zh) * 2021-07-02 2022-06-21 中国科学院信息工程研究所 一种基于基线行为刻画的通联异常发现方法、装置、存储介质及电子装置
CN113630385B (zh) * 2021-07-13 2022-05-06 电子科技大学 一种sdn网络下dos攻击防控方法及装置
CN113538049A (zh) * 2021-07-14 2021-10-22 北京明略软件系统有限公司 异常流量识别系统
CN115941218A (zh) * 2021-08-24 2023-04-07 中兴通讯股份有限公司 流量检测方法、装置、电子设备和存储介质
CN114039745B (zh) * 2021-10-08 2024-06-04 中移(杭州)信息技术有限公司 网站异常流量的识别方法、设备及介质
CN114124460B (zh) * 2021-10-09 2023-07-18 广东技术师范大学 工控系统入侵检测方法、装置、计算机设备及存储介质
CN114095260A (zh) * 2021-11-22 2022-02-25 广东电网有限责任公司 一种电网异常流量检测方法、装置、设备及计算机介质
CN114070641B (zh) * 2021-11-25 2024-02-27 网络通信与安全紫金山实验室 一种网络入侵检测方法、装置、设备和存储介质
CN114584345B (zh) * 2022-01-26 2023-04-28 北京邮电大学 轨道交通网络安全处理方法、装置及设备
CN114679308B (zh) * 2022-03-21 2023-04-07 山东大学 一种基于双路自编码的未知流量识别方法及系统
CN115102790B (zh) * 2022-08-24 2022-12-20 珠海市鸿瑞信息技术股份有限公司 基于大数据的网络流量异常感知系统及方法
CN115865483A (zh) * 2022-11-30 2023-03-28 四川启睿克科技有限公司 一种基于机器学习的异常行为分析方法和装置
CN116056087B (zh) * 2023-03-31 2023-06-09 国家计算机网络与信息安全管理中心 网络攻击检测方法、装置及设备
CN116156505B (zh) * 2023-04-18 2023-08-04 南京桂瑞得信息科技有限公司 基于去噪自编码器与度量学习的WiFi设备检测方法
CN116668089B (zh) * 2023-05-11 2024-04-16 齐齐哈尔大学 基于深度学习的网络攻击检测方法、系统及介质
CN117675351A (zh) * 2023-12-06 2024-03-08 中国电子产业工程有限公司 一种基于bert模型的异常流量检测方法及系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102750545A (zh) * 2012-06-01 2012-10-24 南京师范大学 一种同时实现聚类、分类和度量学习的模式识别方法
US10579923B2 (en) * 2015-09-15 2020-03-03 International Business Machines Corporation Learning of classification model
CN106656981B (zh) * 2016-10-21 2020-04-28 东软集团股份有限公司 网络入侵检测方法和装置
WO2019018693A2 (en) * 2017-07-19 2019-01-24 Altius Institute For Biomedical Sciences METHODS OF ANALYZING MICROSCOPIC IMAGES USING AUTOMATIC LEARNING
CN108737406B (zh) * 2018-05-10 2020-08-04 北京邮电大学 一种异常流量数据的检测方法及系统
CN109829299B (zh) * 2018-11-29 2022-05-10 电子科技大学 一种基于深度自编码器的未知攻击识别方法
CN109831392B (zh) * 2019-03-04 2020-10-27 中国科学技术大学 半监督网络流量分类方法

Also Published As

Publication number Publication date
CN110691100A (zh) 2020-01-14

Similar Documents

Publication Publication Date Title
CN110691100B (zh) 基于深度学习的分层网络攻击识别与未知攻击检测方法
CN111314331B (zh) 一种基于条件变分自编码器的未知网络攻击检测方法
CN109194612B (zh) 一种基于深度置信网络和svm的网络攻击检测方法
CN110213222B (zh) 基于机器学习的网络入侵检测方法
CN112734000A (zh) 一种入侵检测方法、系统、设备及可读存储介质
CN107241358B (zh) 一种基于深度学习的智能家居入侵检测方法
CN110287439A (zh) 一种基于lstm的网络行为异常检测方法
JP7044117B2 (ja) モデル学習装置、モデル学習方法、及びプログラム
CN111343147B (zh) 一种基于深度学习的网络攻击检测装置及方法
Qiao et al. Concept drift analysis by dynamic residual projection for effectively detecting botnet cyber-attacks in IoT scenarios
CN112087442A (zh) 基于注意力机制的时序相关网络入侵检测方法
CN113554094A (zh) 网络异常检测方法、装置、电子设备及存储介质
CN114422184A (zh) 基于机器学习的网络安全攻击类型和威胁等级预测方法
CN113553624A (zh) 基于改进pate的wgan-gp隐私保护系统和方法
CN115811440B (zh) 一种基于网络态势感知的实时流量检测方法
CN112714130A (zh) 一种基于大数据自适应网络安全态势感知方法
CN111767538A (zh) 一种基于相关信息熵的工控入侵检测系统特征选择方法
CN114386514A (zh) 基于动态网络环境下的未知流量数据识别方法及装置
CN113343123B (zh) 一种生成对抗多关系图网络的训练方法和检测方法
Basterrech et al. Tracking changes using Kullback-Leibler divergence for the continual learning
Wang et al. ICDF: Intrusion collaborative detection framework based on confidence
CN111260029A (zh) 一种面向空气质量数据的可信度分析方法
Luo et al. Focal loss based two-stage training for class imbalance network intrusion detection
CN116170187A (zh) 一种基于cnn和lstm融合网络的工业互联网入侵监测方法
Jin et al. Zero-day traffic identification using one-dimension convolutional neural networks and auto encoder machine

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
GR01 Patent grant
GR01 Patent grant