CN113379000B - 一种自适应更新的网络入侵检测方法 - Google Patents

一种自适应更新的网络入侵检测方法 Download PDF

Info

Publication number
CN113379000B
CN113379000B CN202110791305.9A CN202110791305A CN113379000B CN 113379000 B CN113379000 B CN 113379000B CN 202110791305 A CN202110791305 A CN 202110791305A CN 113379000 B CN113379000 B CN 113379000B
Authority
CN
China
Prior art keywords
sample
data
feature space
equal
classification
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
CN202110791305.9A
Other languages
English (en)
Other versions
CN113379000A (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.)
Sichuan University
Original Assignee
Sichuan University
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 Sichuan University filed Critical Sichuan University
Priority to CN202110791305.9A priority Critical patent/CN113379000B/zh
Publication of CN113379000A publication Critical patent/CN113379000A/zh
Application granted granted Critical
Publication of CN113379000B publication Critical patent/CN113379000B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2411Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • G06F18/2135Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on approximation criteria, e.g. principal component analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • 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

Abstract

本发明公开了一种自适应更新的网络入侵检测方法,通过特征空间映射,在不同的特征空间下训练多个分类模型;多个分类模型协同进行入侵检测;多个分类模型根据当前样本分布与历史样本分布的差异自动更新触发;多个分类模型协同进行自适应更新。本发明通过周期性的计算新收集的样本分布与历史样本分布相对熵变化情况,自动确定入侵检测模型触发更新的时机;以及通过多分类模型协同学习,实现入侵检测模型的自适应更新,更能适应环境的变更。

Description

一种自适应更新的网络入侵检测方法
技术领域
本发明涉及网络空间安全技术领域,具体的说,是一种自适应更新的网络入侵检测方法。
背景技术
随着大数据、人工智能时代的到来,互联网攻击模式呈现多样化、规模化和智能化,且攻击持续时间更长、速度更快、实施成本更低。攻击者多采用集团化运作,大多攻击目标明确,主要针对企事业单位的核心业务系统,综合利用了漏洞、社工、新型木马等手段。
传统的网络入侵检测利用了机器学习模型,而传统的机器学习模型以结构化风险最小为理论为基础,认为只要模型在训练样本集上满足经验风险和置信风险最小化,就可以获得数据拟和与推广、泛化能力的平衡。然而在网络环境下,我们将机器学习模型用于网络异常数据检测,所要面临的问题不仅是结构化风险最小。我们还要面临网络数据环境的变化:历史数据的经验分布可能已经发生变化,仅靠在历史数据上训练出的模型结构化风险最小并不能保证模型能够适应变化了的数据环境,因此传统的网络入侵检测方法存在以下问题:
1)现有的网络入侵检测模型不能自动感知网络环境变化进而自动触发入侵检测模型的自动更新;
2)现有的网络入侵检测模型不能在触发更新后,在仅有少量已标记样本的情况下使模型具备自动更新学习的能力。
传统的入侵检测技术已难以适应日益复杂、多变的网络环境,不能对网络中存在的各类已知和未知安全威胁的快速检测与识别。我们需要寻求新的方法使机器学习模型能够自适应的进行更新训练,以适应环境的变更,以解决复杂网络环境下安全威胁的发现。
发明内容
本发明的目的在于提供一种自适应更新的网络入侵检测方法,用于解决传统的网络入侵检测方法不能自动触发入侵检测模型的自动更新、不具备自动更新学习的能力、不能适应环境的变更的问题。
本发明通过下述技术方案解决上述问题:
一种自适应更新的网络入侵检测方法,包括:
步骤S100:通过特征空间映射,在不同的特征空间下训练多个分类模型;
步骤S200:多个分类模型协同进行入侵检测;
步骤S300:多个分类模型根据当前样本分布与历史样本分布的差异自动更新触发;
步骤S400:多个分类模型协同进行自适应更新。
本发明训练生成的多个分类模型,通过协同学习,实现入侵检测模型的自适应更新;采用周期性的计算新收集的样本分布与历史样本分布相对熵变化情况,自动确定入侵检测模型触发更新的时机;能够适应环境的变更。
所述步骤S100具体包括:
步骤S110:收集初始已标记样本集Dataoriginal,Dataoriginal={<xi,yi>|xi∈Rd,1≤i≤L},其中Rd代表d维实数向量集,xi在每一维的值代表一种网络数据流特征值,取值包括网络入侵检测数据流特征中的源IP、目的IP、源端口、目的端口、TTL时长、session会话错误、包负载大小、数据包负载特征值及其线性组合,L为已标记样本数量,yi代表样本xi的标签类别,yi∈{‘正常’,‘异常’};
步骤S120:Dataoriginal构成了d维原始样本特征空间,随后通过PCA主成分分析、深度神经网络DNN等方法,将Dataoriginal中的样本{<xi,yi>|xi∈Rd,1≤i≤L}映射到低维的特征空间Vj(PCA主成分分析降维后的低维特征空间)或深度神经网络DNN的隐含层特征空间(神经网络中间层数据输出):
Figure 635903DEST_PATH_IMAGE001
其中,
Figure 693027DEST_PATH_IMAGE002
是dj维实数向量集,代表
Figure 430039DEST_PATH_IMAGE003
映射后的特征空间,
Figure 953424DEST_PATH_IMAGE003
为映射函数,映射函数为PCA降维函数或DNN深度神经网络,
Figure 524214DEST_PATH_IMAGE003
将d维向量映射到维特征空间Vj,θj代表映射函数
Figure 765840DEST_PATH_IMAGE003
的参数,j=1,2,…,n;Dataoriginal中的样本映射到Vj后产生的样本集合为Data’j={<
Figure 40963DEST_PATH_IMAGE004
,yi>|xi∈Dataoriginal,1≤i≤L},j=1,2,…,n;
步骤S130:在差异化的特征空间V1,V2,…,Vj,…,Vn中,分别基于数据集Data’1,Data’2,…,Data’j,…,Data’n训练n个不同的分类模型Dj,j=1,2,…,n。
利用不同的θj可以获得不同的映射函数,对于PCA,θj代表降维的阈值参数,对于DNN,θj代表神经网络结构和连接权值参数;然后在差异化的特征空间V1,V2,…,Vn中产生n个不同的分类模型Dj,j=1,2,…,n,Dj可以是SVM,神经网络,决策树等通用机器学习模型,由此入侵检测模型具备了在差异化特征空间下的异常检测能力。
所述步骤S200具体为:
步骤S210:提取网络数据流的原始特征,构成待测试样本集Datatest={xp|xp∈Rd,1≤p≤mt},mt为待测试样本集中样本的数量;
步骤S220:将待测试样本集Datatest中的样本{xp,xp∈Rd,1≤p≤mt}分别映射到n个特征空间Vj,获得映射后的样本集Data’testj
Figure 746751DEST_PATH_IMAGE005
其中,j=1,2,…,n;xp为待测试样本集Datatest中第p个样本;
步骤S230:利用分类模型Dj对Data’testj中的每个样本划分类别,j=1,2,…,n,具体包括:
步骤S231:令p=1; 步骤S232:令j=1,对于样本xp∈Datatest,初始化样本xp被分类为‘正常’的数量Tnp=0,初始化样本xp被分类为‘异常’的数量Tap=0;
步骤S233:在特征空间Vj中,分类模型Dj对样本
Figure 81917DEST_PATH_IMAGE006
的分类结果为‘正常’,则Tnp=Tnp+1;否则Tap=Tap+1;
步骤S234:j=j+1,若j<n,返回步骤S233执行;否则进入下一步;
步骤S235:若Tnp>Tap,则xp对应的标记类别yp为‘正常’,否则yp为‘异常’,进入下一步;
步骤S236:p=p+1,若p≤mt,返回步骤S232执行;否则结束。
所述步骤S300包括:n个分类模型周期性的执行模型自动更新自动触发检查,检查过程如下:
在更新周期内进行自动采样,根据采样得到的样本值,通过Parzen窗法计算历史网络数据流特征样本在每个特征维度取值的概率分布Pr(x)、以及当前时间周期窗口下新收集的网络样本在每个特征维度取值数据分布Qr(x),1≤r≤d,d为数据维数;随后计算Pr(x)与Qr(x)间的KL距离,KL距离用于量化数据的概率分布的变化:
Figure 810839DEST_PATH_IMAGE007
其中Xc为更新周期内进行自动采样的样本集合;
计算加权KL距离S:
Figure 466817DEST_PATH_IMAGE008
其中ωr为对应维度的权重;
当S超出阈值λ1,则自动触发入侵检测模型更新。
所述步骤S400具体包括:依次对每一个分类模型执行下述更新过程:
步骤S410:采集更新周期的网络通信数据流,提取其中的网络数据流原始特征,构成更新样本集合Dataupdate={xs|xs∈Rd,1≤s≤U},U为更新样本数量;将Dataupdate中的样本映射到的特征空间Vj,获得映射后的样本集
Figure 964795DEST_PATH_IMAGE009
步骤S420:对于特征空间Vj训练出来的分类模型Dj,j=1,2,…,n,由其余特征空间训练出的n-1个分类模型Dk,k=1,2,…,n,且j≠k,通过投票机制从Dataupdate中为Dj产生更新用的新标记样本,具体如下:
步骤S421:对于更新样本xq∈Dataupdate,q=1,2,…,U,若在特征空间Vk中,k=1,2,…,n且k≠j,分类模型Dk
Figure 736441DEST_PATH_IMAGE010
的分类结果为‘正常’,则累加xq被分类为‘正常’的数量Tnq,否则累计xq被分类为‘异常’的数量Taq,若Tnq>Taq,则xq对应的类别标记yq为‘正常’,否则yq为‘异常’;
步骤S422:并将<xq,yq>放入新标记样本集Lj
步骤S430:对第j个分类模型Dj,j=1,2,…,n,获得的新标记样本集Lj进行可信度评估,具体包括:
步骤S431:定义概率传播矩阵P,具体如下:
定义XU为随机采集更新周期内的少量样本集,XU={x1,x2,…,xv,…,xu},对XU中样本进行人工标记,得到人工标记的标签集合Y’U,Y’U={y1,y2,…,yv,…,yu},其中yv=[pv1,pv2],v=1,2…u,pv1、pv2分别表示XU中已标记样本xv属于‘正常’和‘异常’的概率;
从新标记样本集Lj中随机选出子集XL={x1,x2,…,xl},XL对应的标签集合YL={y1,y2,…,yl},令X=[XL∪XU]T;定义规模为(l+u)*2的标签类别概率矩阵Y=[YL,YU]T,Y中第e行,第f列的元素Yef表示X中第e个样本xe属于类别f的概率,1≤e≤l+u,1≤f≤2,YU为标签传播结果集合,初始时YU设置为规模为u*2的0矩阵;
定义样本xe∈X、xz∈X,xe与xz之间的相似度wez
Figure 749397DEST_PATH_IMAGE011
其中,d代表样本维数,xet代表样本xe的第t维属性值,xzt代表样本xz的第t维属性值,σ为量化参数,则规模为(l+u)*(l+u)的概率传播矩阵P中第e行,第z列的元素Pez
Figure 631902DEST_PATH_IMAGE012
其中,1≤e,z≤l+u,Pez代表将样本xe的标签传递给样本xz的概率;
步骤S432:由于多个分类模型通过投票机制对xi,i=1,2,…,U进行了标记,但新标记的样本<xi,yi>仍然可能存在错误的标记yi,如果不对yi进行筛选,则由错误的样本对分类模型进行迭代更新将引起错误累积。因此,本发明引入基于标签传播的新标记样本可信度评估过程,依次对第分类模型Dj,j=1,2,…,n,获得的新标记样本集Lj进行可信度评估,对于分类模型Dj,对新标记样本集Lj进行基于标签传播的置信评估:
1)临时变量YTemp=YU
2)计算概率传播矩阵P与标签类别概率矩阵Y的乘积PY,更新标签类别概率矩阵Y,Y=PY;
3)替换标签类别概率矩阵Y的前l行为YL,保持YL中的类别标签不变;
4)令F=|YTemp-YU|,若矩阵F中的全部元素之和小于阈值λ,则输出YU,迭代结束,进入下一步,否则跳转2);
5)计算人工标记的标签集合Y’U与标签传播结果集合YU的差异VD=|YU-Y’U|,若VD中元素的累积和值超过阈值λ2,则表明本次多个分类模型通过投票机制为分类模型Dj协同产生的新标记样本Tj中存在较高的标记错误率,舍弃Lj,返回步骤S400;否则利用样本集合Lj∪XU组成新的样本集,通过特征空间映射,在特征空间Vj下对分类模型Dj,j=1,2,…,n进行更新训练,实现多个分类模型的自适应更新。
通过基于标签传播的样本可信度评估过程,对新标记样本进行筛选,筛选后的样本集合用于对分类模型进行更新,以实现网络异常检测模型随网络环境同步动态演化的目的。
本发明与现有技术相比,具有以下优点及有益效果:
本发明通过周期性地计算新收集的样本分布与历史样本分布相对熵变化情况,自动确定入侵检测模型触发更新的时机;以及通过多分类模型协同学习,实现入侵检测模型的自适应更新,更能适应环境的变更。
附图说明
图1为本发明的流程图;
图2为本发明的多分类模型初始训练示意图;
图3为本发明的多分类模型协同入侵检测示意图;
图4为本发明的多分类模型自适应更新示意图。
具体实施方式
下面结合实施例对本发明作进一步地详细说明,但本发明的实施方式不限于此。
实施例1:
结合图1所示,一种自适应更新的网络入侵检测方法,包括:
步骤S100:通过特征空间映射,在不同的特征空间下训练多个分类模型;
步骤S200:多个分类模型协同进行入侵检测;
步骤S300:多个分类模型根据当前样本分布与历史样本分布的差异自动更新触发;
步骤S400:多个分类模型协同进行自适应更新。
采用周期性的计算新收集的样本分布与历史样本分布相对熵变化情况,自动确定入侵检测模型触发更新的时机;2)通过多分类模型协同学习,实现入侵检测模型的自适应更新。
结合图2所示,所述步骤S100具体包括:
步骤S110:收集初始已标记样本集Dataoriginal,Dataoriginal={<xi,yi>|xi∈Rd,1≤i≤L},其中Rd代表d维实数向量集,xi在每一维的值代表一种网络数据流特征值,取值包括网络入侵检测数据流特征中的源IP、目的IP、源端口、目的端口、TTL时长、session会话错误、包负载大小、数据包负载特征值及其线性组合,L为已标记样本数量,yi代表样本xi的标签类别,yi∈{‘正常’,‘异常’};
步骤S120:Dataoriginal构成了d维原始样本特征空间,随后通过PCA主成分分析、深度神经网络DNN等方法,将Dataoriginal中的样本{<xi,yi>|xi∈Rd,1≤i≤L}映射到低维的特征空间Vj(PCA主成分分析降维后的低维特征空间)或深度神经网络DNN的隐含层特征空间(神经网络中间层数据输出):
Figure 984386DEST_PATH_IMAGE014
其中,
Figure 739984DEST_PATH_IMAGE016
是dj维实数向量集,代表
Figure 177918DEST_PATH_IMAGE018
映射后的特征空间,
Figure 598535DEST_PATH_IMAGE018
为映射函数,映射函数为PCA降维函数或DNN深度神经网络,
Figure 336684DEST_PATH_IMAGE018
将d维向量映射到dj维特征空间Vj,θj代表映射函数
Figure 450134DEST_PATH_IMAGE018
的参数,j=1,2,…,n;Dataoriginal中的样本映射到Vj后产生的样本集合为Data’j={<
Figure 375364DEST_PATH_IMAGE020
,yi>|xi∈Dataoriginal,1≤i≤L},j=1,2,…,n;
步骤S130:在差异化的特征空间V1,V2,…,Vj,…,Vn中,分别基于数据集Data’1,Data’2,…,Data’j,…,Data’n训练n个不同的分类模型Dj,j=1,2,…,n。
利用不同的θj可以获得不同的映射函数,对于PCA,θj代表降维的阈值参数,对于DNN,θj代表神经网络结构和连接权值参数;然后在差异化的特征空间V1,V2,…,Vn中产生n个不同的分类模型Dj,j=1,2,…,n,Dj可以是SVM,神经网络,决策树等通用机器学习模型,由此入侵检测模型具备了在差异化特征空间下的异常检测能力。
结合图3所示,所述步骤S200具体为:
步骤S210:提取网络数据流的原始特征,构成待测试样本集Datatest={xp|xp∈Rd,1≤p≤mt},mt为待测试样本集中样本的数量;
步骤S220:将待测试样本集Datatest中的样本{xp,xp∈Rd,1≤p≤mt}分别映射到n个特征空间Vj,获得映射后的样本集Data’testj
Figure 914186DEST_PATH_IMAGE022
其中,j=1,2,…,n;xp为待测试样本集Datatest中第p个样本;
步骤S230:利用分类模型Dj对Data’testj中的每个样本划分类别,j=1,2,…,n,具体包括:
步骤S231:令p=1;
步骤S232:令j=1,对于样本xp∈Datatest,初始化样本xp被分类为‘正常’的数量Tnp=0,初始化样本xp被分类为‘异常’的数量Tap=0;
步骤S233:在特征空间Vj中,分类模型Dj对样本
Figure 975683DEST_PATH_IMAGE024
的分类结果为‘正常’,则Tnp=Tnp+1;否则Tap=Tap+1;
步骤S234:j=j+1,若j<n,返回步骤S233执行;否则进入下一步;
步骤S235:若Tnp>Tap,则xp对应的标记类别yp为‘正常’,否则yp为‘异常’,进入下一步;
步骤S236:p=p+1,若p≤mt,返回步骤S232执行;否则结束。
所述步骤S300包括:n个分类模型周期性的执行模型自动更新自动触发检查,检查过程如下:
在更新周期内进行自动采样,根据采样得到的样本值,通过Parzen窗法计算历史网络数据流特征样本在每个特征维度取值的概率分布Pr(x)、以及当前时间周期窗口下新收集的网络样本在每个特征维度取值数据分布Qr(x),1≤r≤d,d为数据维数;随后计算Pr(x)与Qr(x)间的KL距离,KL距离用于量化数据的概率分布的变化:
Figure DEST_PATH_IMAGE026
其中Xc为更新周期内进行自动采样的样本集合;
计算加权KL距离S:
Figure DEST_PATH_IMAGE028
其中ωr为对应维度的权重;
当S超出阈值λ1,则自动触发入侵检测模型更新。
结合附图4所示,所述步骤S400具体包括:依次对每一个分类模型执行下述更新过程:
步骤S410:采集更新周期的网络通信数据流,提取其中的网络数据流原始特征,构成更新样本集合Dataupdate={xs|xs∈Rd,1≤s≤U},U为更新样本数量;将Dataupdate中的样本映射到的特征空间Vj,获得映射后的样本集
Figure DEST_PATH_IMAGE030
步骤S420:对于特征空间Vj训练出来的分类模型Dj,j=1,2,…,n,由其余特征空间训练出的n-1个分类模型Dk,k=1,2,…,n,且j≠k,通过投票机制从Dataupdate中为Dj产生更新用的新标记样本,具体如下:
步骤S421:对于更新样本xq∈Dataupdate,q=1,2,…,U,若在特征空间Vk中,k=1,2,…,n且k≠j,分类模型Dk
Figure DEST_PATH_IMAGE032
的分类结果为‘正常’,则累加xq被分类为‘正常’的数量Tnq,否则累计xq被分类为‘异常’的数量Taq,若Tnq>Taq,则xq对应的类别标记yq为‘正常’,否则yq为‘异常’;
步骤S422:并将<xq,yq>放入新标记样本集Lj
步骤S430:对第j个分类模型Dj,j=1,2,…,n,获得的新标记样本集Lj进行可信度评估,具体包括:
步骤S431:定义概率传播矩阵P,具体如下:
定义XU为随机采集更新周期内的少量样本集,XU={x1,x2,…,xv,…,xu},对XU中样本进行人工标记,得到人工标记的标签集合Y’U,Y’U={y1,y2,…,yv,…,yu},其中yv=[pv1,pv2],v=1,2…u,pv1、pv2分别表示XU中已标记样本xv属于‘正常’和‘异常’的概率;
从新标记样本集Lj中随机选出子集XL={x1,x2,…,xl},XL对应的标签集合YL={y1,y2,…,yl},令X=[XL∪XU]T;定义规模为(l+u)*2的标签类别概率矩阵Y=[YL,YU]T,Y中第e行,第f列的元素Yef表示X中第e个样本xe属于类别f的概率,1≤e≤l+u,1≤f≤2,YU为标签传播结果集合,初始时YU设置为规模为u*2的0矩阵;
定义样本xe∈X、xz∈X,xe与xz之间的相似度wez
Figure DEST_PATH_IMAGE034
其中,d代表样本维数,xet代表样本xe的第t维属性值,xzt代表样本xz的第t维属性值,σ为量化参数,则规模为(l+u)*(l+u)的概率传播矩阵P中第e行,第z列的元素Pez
Figure DEST_PATH_IMAGE036
其中,1≤e,z≤l+u,Pez代表将样本xe的标签传递给样本xz的概率;
步骤S432:由于多个分类模型通过投票机制对xi,i=1,2,…,U进行了标记,但新标记的样本<xi,yi>仍然可能存在错误的标记yi,如果不对yi进行筛选,则由错误的样本对分类模型进行迭代更新将引起错误累积。因此,本发明引入基于标签传播的新标记样本可信度评估过程,依次对第分类模型Dj,j=1,2,…,n,获得的新标记样本集Lj进行可信度评估,对于分类模型Dj,对新标记样本集Lj进行基于标签传播的置信评估:
1)临时变量YTemp=YU
2)计算概率传播矩阵P与标签类别概率矩阵Y的乘积PY,更新标签类别概率矩阵Y,Y=PY;
3)替换标签类别概率矩阵Y的前l行为YL,保持YL中的类别标签不变;
4)令F=|YTemp-YU|,若矩阵F中的全部元素之和小于阈值λ,则输出YU,迭代结束,进入下一步,否则跳转2);
5)计算人工标记的标签集合Y’U与标签传播结果集合YU的差异VD=|YU-Y’U|,若VD中元素的累积和值超过阈值λ2,则表明本次多个分类模型通过投票机制为分类模型Dj协同产生的新标记样本Tj中存在较高的标记错误率,舍弃Lj,返回步骤S400;否则利用样本集合Lj∪XU组成新的样本集,通过特征空间映射,在特征空间Vj下对分类模型Dj,j=1,2,…,n进行更新训练,实现多个分类模型的自适应更新。
通过基于标签传播的样本可信度评估过程,对新标记样本进行筛选,筛选后的样本集合用于对分类模型进行更新,以实现网络异常检测模型随网络环境同步动态演化的目的。
尽管这里参照本发明的解释性实施例对本发明进行了描述,上述实施例仅为本发明较佳的实施方式,本发明的实施方式并不受上述实施例的限制,应该理解,本领域技术人员可以设计出很多其他的修改和实施方式,这些修改和实施方式将落在本申请公开的原则范围和精神之内。

Claims (1)

1.一种自适应更新的网络入侵检测方法,其特征在于,包括:
步骤S100:通过特征空间映射,在不同的特征空间下训练多个分类模型;
步骤S200:多个分类模型协同进行入侵检测;
步骤S300:多个分类模型根据当前样本分布与历史样本分布的差异自动更新触发;
步骤S400:多个分类模型协同进行自适应更新;所述步骤S100具体包括:
步骤S110:收集初始已标记样本集Dataoriginal,Dataoriginal={<xi,yi>|xi∈Rd,1≤i≤L},其中Rd代表d维实数向量集,xi在每一维的值代表一种网络数据流特征值,取值包括网络入侵检测数据流特征中的源IP、目的IP、源端口、目的端口、TTL时长、session会话错误、包负载大小、数据包负载特征值及其线性组合,L为已标记样本数量,yi代表样本xi的标签类别,yi∈{‘正常’,‘异常’};
步骤S120:将初始已标记样本集Dataoriginal中的样本映射到特征空间Vj,Vj为低维特征空间或深度神经网络DNN的隐含层特征空间:
Figure FDA0003445495680000011
其中,
Figure FDA0003445495680000012
是dj维实数向量集,代表
Figure FDA0003445495680000013
映射后的特征空间,
Figure FDA0003445495680000014
为映射函数,映射函数为PCA降维函数或DNN深度神经网络,
Figure FDA0003445495680000015
将d维向量映射到dj维特征空间Vj,θj代表映射函数
Figure FDA0003445495680000016
的参数,j=1,2,…,n;Dataoriginal中的样本映射到Vj后产生的样本集合为
Figure FDA0003445495680000017
Figure FDA0003445495680000018
步骤S130:在差异化的特征空间V1,V2,…,Vj,…,Vn中,分别基于数据集Data’1,Data’2,…,Data’j,…,Data’n训练n个不同的分类模型Dj,j=1,2,…,n;
所述步骤S200具体为:
步骤S210:提取网络数据流的原始特征,构成待测试样本集Datatest={xp|xp∈Rd,1≤p≤mt},mt为待测试样本集中样本的数量;
步骤S220:将待测试样本集Datatest中的样本{xp,xp∈Rd,1≤p≤mt}分别映射到n个特征空间Vj,获得映射后的样本集Data’testj
Figure FDA0003445495680000021
其中,j=1,2,…,n;xp为待测试样本集Datatest中第p个样本;
步骤S230:利用分类模型Dj对Data’testj中的每个样本划分类别,j=1,2,…,n,具体包括:
步骤S231:令p=1;
步骤S232:令j=1,对于样本xp∈Datatest,初始化样本xp被分类为‘正常’的数量Tnp=0,初始化样本xp被分类为‘异常’的数量Tap=0;
步骤S233:在特征空间Vj中,分类模型Dj对样本
Figure FDA0003445495680000022
的分类结果为‘正常’,则Tnp=Tnp+1;否则Tap=Tap+1;
步骤S234:j=j+1,若j<n,返回步骤S233执行;否则进入下一步;
步骤S235:若Tnp>Tap,则xp对应的标记类别yp为‘正常’,否则yp为‘异常’,进入下一步;
步骤S236:p=p+1,若p≤mt,返回步骤S232执行;否则结束;
所述步骤S300包括:n个分类模型周期性的执行模型自动更新自动触发检查,检查过程如下:
在更新周期内进行自动采样,根据采样得到的样本值,通过Parzen窗法计算历史网络数据流特征样本在每个特征维度取值的概率分布Pr(x)、以及当前时间周期窗口下新收集的网络样本在每个特征维度取值数据分布Qr(x),1≤r≤d,d为数据维数;随后计算Pr(x)与Qr(x)间的KL距离,KL距离用于量化数据的概率分布的变化:
Figure FDA0003445495680000031
其中Xc为更新周期内进行自动采样的样本集合;
计算加权KL距离S:
Figure FDA0003445495680000032
其中ωr为对应维度的权重;
当S超出阈值λ1,则自动触发入侵检测模型更新;
所述步骤S400具体包括:依次对每一个分类模型执行下述更新过程:
步骤S410:采集更新周期的网络通信数据流,提取其中的网络数据流原始特征,构成更新样本集合Dataupdate={xs|xs∈Rd,1≤s≤U},U为更新样本数量;将Dataupdate中的样本映射到的特征空间Vj,获得映射后的样本集
Figure FDA0003445495680000033
步骤S420:对于特征空间Vj训练出来的分类模型Dj,j=1,2,…,n,由其余特征空间训练出的n-1个分类模型Dk,k=1,2…n,且j≠k,通过投票机制从Dataupdate中为Dj产生更新用的新标记样本,具体如下:
步骤S421:对于更新样本xq∈Dataupdate,q=1,2,…,U,若在特征空间Vk中,k=1,2,…,n且k≠j,分类模型Dk
Figure FDA0003445495680000034
的分类结果为‘正常’,则累加xq被分类为‘正常’的数量Tnq,否则累计xq被分类为‘异常’的数量Taq,若Tnq>Taq,则xq对应的类别标记yq为‘正常’,否则yq为‘异常’;
步骤S422:并将<xq,yq>放入新标记样本集Lj
步骤S430:对第j个分类模型Dj,j=1,2,…,n,获得的新标记样本集Lj进行可信度评估,具体包括:
步骤S431:定义概率传播矩阵P,具体如下:
定义XU为随机采集更新周期内的少量样本集,XU={x1,x2,...,xv,...,xu},对XU中样本进行人工标记,得到人工标记的标签集合Y’U,Y’U={y1,y2,...,yv,...,yu},其中yv=[pv1,pv2],v=1,2...u,pv1、pv2分别表示XU中已标记样本xv属于‘正常’和‘异常’的概率;
从新标记样本集Lj中随机选出子集XL={x1,x2,...,xl},XL对应的标签集合YL={y1,y2,…,yl},令X=[XL∪XU]T;定义规模为(l+u)*2的标签类别概率矩阵Y=[YL,YU]T,Y中第e行,第f列的元素Yef表示X中第e个样本xe属于类别f的概率,1≤e≤l+u,1≤f≤2,YU为标签传播结果集合,初始时YU设置为规模为u*2的0矩阵;
定义样本xe∈X、xz∈X,xe与xz之间的相似度wez
Figure FDA0003445495680000041
其中,d代表样本维数,xet代表样本xe的第t维属性值,xzt代表样本xz的第t维属性值,σ为量化参数,则规模为(l+u)*(l+u)的概率传播矩阵P中第e行,第z列的元素Pez
Figure FDA0003445495680000042
其中,1≤e,z≤l+u,Pez代表将样本xe的标签传递给样本xz的概率;
步骤S432:对于分类模型Dj,对新标记样本集Lj进行基于标签传播的置信评估:
1)临时变量YTemp=YU
2)计算概率传播矩阵P与标签类别概率矩阵Y的乘积PY,更新标签类别概率矩阵Y,Y=PY;
3)替换标签类别概率矩阵Y的前l行为YL,保持YL中的类别标签不变;
4)令F=|YTemp-YU|,若矩阵F中的全部元素之和小于阈值λ,则输出YU,迭代结束,进入下一步,否则跳转2);
5)计算人工标记的标签集合Y’U与标签传播结果集合YU的差异VD=|YU-Y’U|,若VD中元素的累积和值超过阈值λ2,则表明本次多个分类模型通过投票机制为分类模型Dj协同产生的新标记样本Tj中存在较高的标记错误率,舍弃Lj,返回步骤S400;否则利用样本集合Lj∪XU组成新的样本集,通过特征空间映射,在特征空间Vj下对分类模型Dj,j=1,2,…,n进行更新训练,实现多个分类模型的自适应更新。
CN202110791305.9A 2021-07-13 2021-07-13 一种自适应更新的网络入侵检测方法 Active CN113379000B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110791305.9A CN113379000B (zh) 2021-07-13 2021-07-13 一种自适应更新的网络入侵检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110791305.9A CN113379000B (zh) 2021-07-13 2021-07-13 一种自适应更新的网络入侵检测方法

Publications (2)

Publication Number Publication Date
CN113379000A CN113379000A (zh) 2021-09-10
CN113379000B true CN113379000B (zh) 2022-03-15

Family

ID=77581961

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110791305.9A Active CN113379000B (zh) 2021-07-13 2021-07-13 一种自适应更新的网络入侵检测方法

Country Status (1)

Country Link
CN (1) CN113379000B (zh)

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7941382B2 (en) * 2007-10-12 2011-05-10 Microsoft Corporation Method of classifying and active learning that ranks entries based on multiple scores, presents entries to human analysts, and detects and/or prevents malicious behavior
CN101471782B (zh) * 2007-12-26 2011-04-13 中国科学院自动化研究所 基于在线提升算法的网络入侵检测方法
CN102324046A (zh) * 2011-09-01 2012-01-18 西安电子科技大学 结合主动学习的四分类器协同训练方法
CN108364016A (zh) * 2018-01-12 2018-08-03 华南理工大学 基于多分类器的渐进式半监督分类方法
US10686807B2 (en) * 2018-06-12 2020-06-16 International Business Machines Corporation Intrusion detection system
CN109347872A (zh) * 2018-11-29 2019-02-15 电子科技大学 一种基于模糊度和集成学习的网络入侵检测方法
CN109962909B (zh) * 2019-01-30 2021-05-14 大连理工大学 一种基于机器学习的网络入侵异常检测方法
CN111222133A (zh) * 2019-11-14 2020-06-02 辽宁工程技术大学 一种工控网络入侵检测的多级自适应耦合方法
CN110868414B (zh) * 2019-11-14 2021-07-13 北京理工大学 一种基于多投票技术的工控网络入侵检测方法及系统

Also Published As

Publication number Publication date
CN113379000A (zh) 2021-09-10

Similar Documents

Publication Publication Date Title
US10154051B2 (en) Automatic detection of network threats based on modeling sequential behavior in network traffic
CN109194612B (zh) 一种基于深度置信网络和svm的网络攻击检测方法
Sommer et al. Towards probabilistic verification of machine unlearning
Bostani et al. Modification of supervised OPF-based intrusion detection systems using unsupervised learning and social network concept
Tuor et al. Recurrent neural network language models for open vocabulary event-level cyber anomaly detection
EP3798926A1 (en) Method, product, and system for detecting malicious network activity using a graph mixture density neural network
Carrasco et al. Unsupervised intrusion detection through skip-gram models of network behavior
CN110808971B (zh) 一种基于深度嵌入的未知恶意流量主动检测系统及方法
CN109670302B (zh) 一种基于svm的虚假数据注入攻击的分类方法
CN111461784B (zh) 一种基于多模型融合的欺诈行为检测方法
CN111786951B (zh) 流量数据特征提取方法、恶意流量识别方法及网络系统
Usama et al. The adversarial machine learning conundrum: can the insecurity of ml become the achilles' heel of cognitive networks?
CN111581352B (zh) 基于可信度的互联网恶意域名检测方法
CN116506181A (zh) 一种基于异构图注意力网络的车联网入侵检测方法
Hernandez et al. Using deep learning for temporal forecasting of user activity on social media: challenges and limitations
Xian et al. A novel intrusion detection method based on clonal selection clustering algorithm
Harbola et al. Improved intrusion detection in DDoS applying feature selection using rank & score of attributes in KDD-99 data set
Aravamudhan A novel adaptive network intrusion detection system for internet of things
Elghamrawy et al. An intrusion detection model based on deep learning and multi-layer perceptron in the internet of things (IoT) network
Gao et al. The prediction role of hidden markov model in intrusion detection
Ravipati et al. A survey on different machine learning algorithms and weak classifiers based on KDD and NSL-KDD datasets
Yin et al. A bagging strategy-based kernel extreme learning machine for complex network intrusion detection
CN113379000B (zh) 一种自适应更新的网络入侵检测方法
WO2020088338A1 (zh) 一种建立识别模型的方法及装置
Jeyanna et al. A network intrusion detection system using clustering and outlier detection

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