CN114399029A - 一种基于gan样本增强的恶意流量检测方法 - Google Patents
一种基于gan样本增强的恶意流量检测方法 Download PDFInfo
- Publication number
- CN114399029A CN114399029A CN202210043157.7A CN202210043157A CN114399029A CN 114399029 A CN114399029 A CN 114399029A CN 202210043157 A CN202210043157 A CN 202210043157A CN 114399029 A CN114399029 A CN 114399029A
- Authority
- CN
- China
- Prior art keywords
- model
- malicious
- malicious traffic
- data
- sample
- 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 61
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 26
- 238000007781 pre-processing Methods 0.000 claims abstract description 14
- 238000000034 method Methods 0.000 claims description 40
- 238000009826 distribution Methods 0.000 claims description 24
- 238000012549 training Methods 0.000 claims description 17
- 238000000540 analysis of variance Methods 0.000 claims description 8
- 238000003066 decision tree Methods 0.000 claims description 8
- 230000000694 effects Effects 0.000 claims description 8
- 238000010219 correlation analysis Methods 0.000 claims description 7
- 238000005457 optimization Methods 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 5
- 238000010845 search algorithm Methods 0.000 claims description 4
- 238000013528 artificial neural network Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 16
- 239000011159 matrix material Substances 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000002902 bimodal effect Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000013145 classification model Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 238000011835 investigation Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011067 equilibration Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000002203 pretreatment Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
-
- 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/1416—Event detection, e.g. attack signature detection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Bioinformatics & Computational Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Molecular Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种基于GAN样本增强的恶意流量检测方法,该方法为原始数据集依次经由数据预处理模块、基于GAN恶意流量生成模块、串行特征选择模块以及基于CatBoost算法的恶意流量检测模块处理后进行检测并获得检测结果。本发明旨在解决网络流量数据不平衡问题,特征选择过度依赖于专家经验问题和检测误报率高、准确率低的问题。
Description
技术领域
本发明属于网络安全技术领域,具体涉及一种基于GAN样本增强的恶意流量检测方法。
背景技术
随着移动互联网应用的广泛使用,移动互联网中的恶意流量问题也不断涌现,这些恶意流量包括用户终端对网络产生的恶意流量,也包括非法服务提供商向用户终端发送数据包产生的恶意流量。
现有的恶意流量检测技术大致分为基于签名或基于异常的两类:
(1).基于签名的恶意流量检测技术,依赖于观察***或者网络中的流量,从已知的恶意流量情形中制定一套完整的规则,存储在签名知识库中,当有新的网络流量传入时,与签名数据库进行匹配,判断恶意流量类型。但是建立数据库需要大量已知的恶意流量,现有的网络流量数据集中正常流量占比巨大,恶意流量数量较少,存在严重的数据失衡,少量的恶意流量无法有效的提取恶意流量所包含的规则,致使该方法的无法有效检测到恶意流量,误报率高;另外,在加密的背景下,负载是不可用的,规则不可创建,该方法失效。
(2).基于异常的恶意流量检测技术,是对***恶意的流量进行检测,当检测的流量与正常流量偏离较大时,发出告警信息。早期利用统计学***衡性问题,使得机器学习和深度学习模型对恶意流量学习不充分,导致误报率高的问题。
现有技术中,申请号为202110956812.3的专利公开了一种基于XGBoost的端口扫描恶意流量的检测方法,该专利利用XGBoost算法对CICIDS2017数据集中的端口扫描恶意流量进行检测,该检测算法检测出的恶意流量类别单一,仅能进行二分类,对于其他恶意流量无法进行有效检测;在检测的过程中,对于误检和漏检的样本需要人工干预,增大了人工的开销;且对于CICIDS2017数据集中存在的数据不平衡问题没有进行有效解决,出现误报率高的问题。
申请号为202110853916.1的专利公开了一种提升不平衡恶意流量样本识别精度的双模态融合检测方法,该专利使用双模态融合检测方法提高不平衡恶意流量的识别精度,将数据包包头特征与负载特征分别输入到模型中,输出特征分布,之后利用对双模态流量特征进行有效融合,输出检测结果。对于加密流量,负载进行了加密,无法进行负载的特征的提取,该方法失效;对于存在的恶意流量较少的问题,仅通过改变模型的输入——由单模态变为多模态的方式仅增加了特征的表征方式,并未对恶意流量样本进行有效增强,容易出现漏检的情况。发明内容
为了克服上述现有技术的不足,本发明提供了一种基于GAN样本增强的恶意流量检测方法,旨在解决网络流量数据不平衡问题,特征选择过度依赖于专家经验问题,和检测误报率高、准确率低的问题。
本发明采用的技术方案是:原始数据集依次经由数据预处理模块、基于GAN恶意流量生成模块、串行特征选择模块以及基于CatBoost算法的恶意流量检测模块处理后进行检测并获得检测结果。
进一步地,所述数据预处理模块为对原始数据集进行预处理,所述原始数据集包括若干个数据文件。
进一步地,所述预处理的过程包括以下步骤,
步骤1.1:合并原始数据集的多个数据文件,数据文件中每一列代表一个特征,统计每个特征的缺失率,删除缺失率大于或等于阈值60%的特征,填充缺失率小于阈值60%的特征;
步骤1.2:标准化数据样本,按照网络流量的所属类别将数据文件拆分,计算正常流量与恶意流量以及各恶意流量之间的平衡度,对于比例严重失衡的类别使用基于GAN恶意流量生成模块进行样本增强。
进一步地,所述基于GAN恶意流量生成模块为经过数据预处理模块后,过滤出恶意流量样本,针对不同的恶意流量类别分别构建生成对抗网络模型GAN,学习恶意流量样本分布,训练生成模型生成恶意流量样本,然后利用判别模型识别生成恶意流量样本和实际恶意流量样本,输出判别损失。
进一步地,所述基于GAN恶意流量生成模块进行GAN恶意流量生成的过程包括以下步骤,
步骤2.1:构建生成对抗网络,构建生成模型G和判别模型D;
步骤2.2:生成模型G接收多峰噪声z的输入,生成模型G使用一个深度神经网络将z的分布p(z),映射到另一个数据空间G(z,θg),θg为生成模型中所有的参数,生成模型的目标是缩小G(z,θg)的分布与真实恶意样本分布pdata(x)之间的差距;
步骤2.3:判别模型D通过输出0或1来表示判别模型对输入恶意流量样本真假的判别情况,当输入的数据采样于真实恶意样本分布pdata(x)时,判别模型输出1,而当输入数据采样于合成恶意样本G(z)时,也就是从生成模型中输出数据时,判别器输出为0;
步骤2.4:生成模型与判别模型相互对抗进行优化;
步骤2.5:两个模型交替训练,同步提高,直到判别模型D的输出D(G(z))=0.5。进一步地,步骤2.4中,对于模型G要最大化D(G(z)),即最小化log(1-D(G(z))),使得判别器D的输出D(G(z))接近1,如公式(1)所示,对于模型D,要最大化logD(x)与log(1-D(G(z))),也就是当输入数据为真实数据x时,判别模型的输出D(x)尽可能接近1,而当输入数据为合成数据G(z)时,判别模型的输出D(G(z))尽可能接近0,如公式(2)所示:
步骤2.4中,采用RMSProp优化方法,进行效果优化,生成对抗网络模型最终要优化的函数如式(3)所示:
进一步地,所述串行特征选择模块为将原始数据集和基于GAN恶意流量生成模块生成的恶意流量数据合之后输入到串行特征选择模块,该模块采用方差分析法和相关性分析法串行进行特征选择,利用方差分析计算特征发散性,利用相关性分析法计算特征之间和特征与标签间的相关性大小,通过设置阈值的方式选择对恶意流量检测贡献突出的特征。
进一步地,所述串行特征选择模块的处理过程包括以下步骤,
步骤3.1:计算每个流量特征的方差,设定方差阈值0,方如式(4)所示。
步骤3.2:计算每个特征和标签的相关性以及任意两个特征之间的Pearson相关系数,保留与标签中等相关和强相关的特征,同时,去除特征之间相关性强的特征,计算公式如式(5)所示:
进一步地,所述基于CatBoost算法的恶意流量检测模块为基于CatBoost算法进行建模,并利用网格搜索算法进行模型的参数调节,模型评估优秀后进行恶意流量检测。
进一步地,所述基于CatBoost算法的恶意流量检测模块的处理过程为:
生成一个高精度模型,如式(6)所示:
其中x是特征向量,T(x;θk)表示决策树,θk为决策树参数,K为树的数量。
训练数据集D={(xi,yi)}i=1,2,...,n,其中是t维特征向量,是标签值,n是样本量。目标是通过训练函数F:t→使得期望损失函数(L(y,F(x)))最小。在梯度下降中,对Ft进行第t次迭代时,通过函数组H求取基分类器ht以最小化期望损失:
假设前一轮迭代得到的强学习器F(t-1)(x),损失函数时是L(y,F(x)),则本轮迭代的目的是找到一个弱分类器ht,让本轮的损失函数最小,式(7)表示的是本轮迭代的目标函数ht。
使用损失函数的负梯度-gt(x,y)去拟合每一轮的损失的近似值,式(8)中gt(x,y)表示的是上述梯度:
在实际计算中,用式(9)进行近似拟合ht:
ht=argminE(-gt(xi,yi)-h(xi))2 (18)
CatBoost对每一个样本xi都会训练一个单独的模型Mi,模型Mi由使用了不含样本xi的训练集训练得到,使用Mi得到关于样本的梯度估计,并使用该梯度来训练基分类器得到最终的模型。
本发明的有益效果是:
本发明基于GAN样本增强的恶意流量检测方法在一定程度上缓解了特征选择过分依赖专家经验的问题,还解决了数据不平衡的带来的误报率高的问题,利用CatBoost算法建立多分类模型,实现多种恶意流量的检测,同时利用网格搜索优化模型,提高模型检测准确率。
附图说明
图1为本发明方法的整体框架;
图2为本发明基于GAN恶意流量生成的流程示意图;
图3为本发明筛选出的特征机器描述;
图4为本发明Total Fwd packets的KDE图;
图5为本发明Fwd Packet Length Min的KDE图;
图6为本发明原始数据集的混淆矩阵;
图7为本发明平衡化数据集的混淆矩阵;
图8为本发明平衡化前后性能对比。
具体实施方式
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
实施例1
本发明提出了一种基于GAN样本增强的恶意加密流量检测方法,旨在解决网络流量数据不平衡问题,特征选择过度依赖于专家经验问题,和检测误报率高、准确率低的问题。该方法为:原始数据集依次经由数据预处理模块、基于GAN恶意流量生成模块、串行特征选择模块以及基于CatBoost算法的恶意流量检测模块处理后进行检测并获得检测结果。如图1所示。
(1).数据预处理模块:对原始数据集进行预处理,所述原始数据集包括若干个数据文件,首先将多个数据文件合并为一个;之后删除缺失率大于或等于阈值60%的特征。根据经验得出,当一个特征的缺失率大于60%时,这个特征对于恶意加密流量检测意义甚微,缺失率小于阈值的特征用该特征的平均值(数值特征)或众数(类别特征)补全缺失;最后利用标准化消除特征间量纲的影响。
(2).基于GAN恶意流量生成模块:经过数据预处理模块后,过滤出恶意流量样本(少数类样本),针对不同的恶意流量类别分别构建生成对抗网络模型(GAN),学***衡问题。
(3).串行特征选择模块:将原始数据和生成数据混合之后输入到串行特征选择模块,该模块采用方差分析法和相关性分析法串行进行特征选择,利用方差分析计算特征发散性,利用相关性分析法计算特征之间和特征与标签间的相关性大小,通过设置阈值的方式选择对恶意流量检测贡献突出的特征,在一定程度上解决特征选择过度依赖专家经验的问题。
(4).基于CatBoost算法的恶意流量检测模块:为实现恶意流量检测和判断技术,本发明采用基于CatBoost算法进行建模,并利用网格搜索算法进行模型的参数调节,在模型评估优秀的前提下进行恶意流量检测和判断,使得恶意流量检测拥有较高的准确率和较低的误报率。
实施例2
结合实施细节,阐述实现本发明所采用的具体的技术手段:
步骤1:所述数据预处理模块对原始数据集进行预处理。原始数据集是多个csv格式文件的集合,包含不同的恶意流量特征数据,每一列代表一个特征,除了第一行外每一行为一条流量样本)。
原始数据集是一个压缩包的形式,解压之后包含多个CSV格式的数据文件,本实施例以CICIDS2017数据集为例,其包含周一到周五实施的不同网络攻击产生的恶意流量和正常流量。
具体处理步骤如下:
步骤1.1:合并原始数据集的多个数据文件,数据文件中每一列代表一个特征,统计每个特征的缺失率,删除缺失率大于或等于阈值60%的特征,填充缺失率小于阈值60%的特征,其中,类别特征使用该特征的众数填充数值特征使用该特征的平均值填充;
步骤1.2:标准化数据样本,按照网络流量的所属类别(标签)将文件拆分,计算正常流量与恶意流量以及各恶意流量之间的平衡度,对于比例严重失衡的类别使用步骤2进行样本增强;所述比例严重失衡的判别标准为:恶意流量样本数:正常流量样本数<=1:10
步骤2:GAN恶意流量生成模块进行GAN恶意流量生成,GAN恶意流量生成,如图2所示。具体处理步骤如下:
步骤2.1:构建生成对抗网络,构建生成模型G和判别模型D。
步骤2.2:生成模型G接收多峰噪声z的输入(传统的GAN中的生成模型输入的噪声是单峰正态分布,但是实际数据往往不能满足这个条件,输入多峰噪声能够增加合成数据的多样性),生成模型G使用一个深度神经网络将z的分布p(z),映射到另一个数据空间G(z,θg),θg为生成模型中所有的参数,生成模型的目标是尽量缩小G(z,θg)的分布与真实恶意样本分布pdata(x)之间的差距;
步骤2.3:判别模型D通过输出0或1来表示判别模型对输入恶意流量样本真假的判别情况,当输入的数据采样于真实恶意样本分布pdata(x)时,判别模型输出1,而当输入数据采样于合成恶意样本G(z)时,也就是从生成模型中输出数据时,判别器输出为0。
步骤2.4:生成模型与判别模型相互对抗进行优化,对于G而言,需要最大化D(G(z)),即最小化log(1-D(G(z))),也就是尽可能让G合成的恶意样本G(z)能够欺骗D,使得判别器D的输出D(G(z))接近1。如公式(1)所示。对于D而言,需要增强自己判别真假数据的能力,即最大化logD(x)与log(1-D(G(z))),也就是当输入数据为真实数据x时,判别模型的输出D(x)尽可能接近1,而当输入数据为合成数据G(z)时,判别模型的输出D(G(z))尽可能接近0。如公式(2)所示。
步骤2.5:两个模型交替训练,同步提高,直到判别模型D的输出D(G(z))=0.5。为防止GAN在训练过程中发生模式崩溃,采用RMSProp优化方法,进行效果优化。生成对抗网络模型最终要优化的函数如式(3)所示。
步骤3:
所述串行特征选择模块为将原始数据集和基于GAN恶意流量生成模块生成的恶意流量数据合之后输入到串行特征选择模块,该模块采用方差分析法和相关性分析法串行进行特征选择,利用方差分析计算特征发散性,利用相关性分析法计算特征之间和特征与标签间的相关性大小,通过设置阈值的方式选择对恶意流量检测贡献突出的特征。,筛选出的特征如图3所示,具体处理步骤如下:
步骤3.1:从特征发散性的角度计算每个流量特征的方差,设定方差阈值0,过滤掉方差为0的8个特征,这8个特征在全部样本上的取值相同,对于区分正常流量和恶意流量没有作用。方差分析法公式如式(4)所示。
这里的流量特征就是csv数据中的每一列,就是特征,只不过这些数据是网络流量数据,所以这里称为了流量特征,都是一个概念。
步骤3.2:从相关性的角度计算每个特征和标签的相关性以及任意两个特征之间的Pearson相关系数,保留与标签中等相关(取值为0.3~0.5)和强相关(0.5~1.0)的特征,同时,去除特征之间相关性强的特征。计算公式如式(5)所示。
步骤4:基于CatBoost算法的恶意流量检测
所述基于CatBoost算法的恶意流量检测模块为基于CatBoost算法进行建模,并利用网格搜索算法进行模型的参数调节,模型评估优秀后进行恶意流量检测。CatBoost使用对称树作为基分类器,其计算特征重要性和模型的训练密切相关,在传统的梯度提升算法(如Gradient Boosting Decision Tree,GBDT)中,将大量决策树组合在一起,生成一个高精度模型,如式(6)所示:
其中x是特征向量,T(x;θk)表示决策树,θk为决策树参数,K为树的数量。
训练数据集D={(xi,yi)}i=1,2,...,n,其中是t维特征向量,是标签值,n是样本量。目标是通过训练函数F:t→使得期望损失函数(L(y,F(x)))最小。在梯度下降中,对Ft进行第t次迭代时,通过函数组H求取基分类器ht以最小化期望损失:
假设前一轮迭代得到的强学习器F(t-1)(x),损失函数时是L(y,F(x)),则本轮迭代的目的是找到一个弱分类器ht,让本轮的损失函数最小,式(7)表示的是本轮迭代的目标函数ht。
使用损失函数的负梯度-gt(x,y)去拟合每一轮的损失的近似值,式(8)中gt(x,y)表示的是上述梯度:
在实际计算中,通常用式(9)进行近似拟合ht:
ht=argminE(-gt(xi,yi)-h(xi))2 (27)
gt(xi,yi)|xi的条件分布和训练集上的条件分布不一致会产生预测偏移,为解决该问题,CatBoost采用排序梯度(ordered boosting)的方式替换传统算法中梯度估计方法。CatBoost对每一个样本xi都会训练一个单独的模型Mi,模型Mi由使用了不含样本xi的训练集训练得到。使用Mi得到关于样本的梯度估计,并使用该梯度来训练基分类器得到最终的模型。CatBoost算法通过对传统梯度提升算法中的梯度估计方式进行改变,在每次迭代时使用无偏梯度估计以完成建树过程,减缓预测偏移,增强模型的泛化能力。
本发明基于GAN样本增强的恶意流量检测方法在一定程度上缓解了特征选择过分依赖专家经验的问题,还解决了数据不平衡的带来的误报率高的问题,利用CatBoost算法建立多分类模型,实现多种恶意流量的检测,同时利用网格搜索优化模型,提高模型检测准确率。
原始数据和生成数据的一致性检验
比较平衡化前后数据集的特征的概率密度角度,如图4、5所示,选择Total FwdPackets和Fwd Packet Length Min两个特征绘制原始数据和平衡化后数据的核密度估计图(KDE图),拟合平衡化前后数据的分布,可以反映出原始数据恶意流量样本和生成流量样本在各个特征上的一致性。
由图4、5可知,横坐标表示特征取值,纵坐标表示该取值对应的概率密度,其中红色曲线为预处理后原始数据分布,蓝色曲线为预处理后生成数据分布,从两个特征的核密度估计图中可以看出,数据集平衡前后数据特征的分布基本一致,基于GAN恶意样本生成方法生成的恶意样本和原始的恶意样本基本相同,本发明验证了该方法在使用前后特征的一致性。
基于GAN恶意样本生成的有效性检验
本发明使用混淆矩阵来评估该方法的有效性。如图6、7所示,纵坐标表示样本的真实类别,横坐标表示通过CatBoost模型预测的类别,图6为原始数据集训练得到混淆矩阵,通过图6可以看出,有大量恶意流量被误分类为正常流量,其中包括61%的Bot恶意流量、85%的Web Attract–Brute Force恶意流量和97%的Web Attract–XSS恶意流量等,通过分析原始数据集发现Bot、Web Attract–Brute Force、Web Attract–XSS恶意流量样本数量与正常流量样本数量相差巨大,由于缺乏足够的恶意流量数据,使得在训练时CatBoost对恶意流量学***衡化后的数据集训练得到混淆矩阵,可以看出各类别均能够被正确分类,除少部分Web Attrack-Brute Force和Web Attrack-XSS恶意流量被误分类外,这是因为两种恶意流量同属Web Attack恶意类别,在流量行为上具有相似性,特征表现相近,本发明验证了基于GAN恶意样本生成的有效性。
实施例3
将实施例2的方法,基于CatBoost恶意流量算法实施。
本发明验证了基于CatBoost多分类算法的有效性,图8为平衡数据集前后CatBoost算法的性能表现,通过比较可以看到模型检测的准确率在平衡化后虽然略有降低,但召回率、精确率、和F1分数都有大幅度提高,恶意流量检测对召回率的要求较高,一旦某一恶意流量被误判为良性流量,则该流量可能会给***带来不可挽回的损失,平衡化后的数据集弥补了召回率低的缺陷,有效地检测到网络流量中存在的恶意流量,规避了潜在的风险,再次验证本发明提出的基于GAN恶意样本生成方法的有效性,缓解了数据不平衡的问题,提高了恶意流量检测效率。
目前,本发明的技术方案已经进行了中试,即产品在大规模量产前的较小规模试验;中试完成后,在小范围内开展了用户使用调研,调研结果表明用户满意度较高;现在已开始着手准备正式投产进行产业化(包括知识产权风险预警调研)。
以上所述仅是本发明的较佳实施方式,故凡依本发明专利申请范围所述的构造、特征及原理所做的等效变化或修饰,均包括于本发明专利申请范围内。
Claims (10)
1.一种基于GAN样本增强的恶意流量检测方法,其特征在于,原始数据集依次经由数据预处理模块、基于GAN恶意流量生成模块、串行特征选择模块以及基于CatBoost算法的恶意流量检测模块处理后进行检测并获得检测结果。
2.根据权利要求1所述的一种基于GAN样本增强的恶意流量检测方法,其特征在于,所述数据预处理模块为对原始数据集进行预处理,所述原始数据集包括若干个数据文件。
3.根据权利要求2所述的一种基于GAN样本增强的恶意流量检测方法,其特征在于,所述预处理的过程包括以下步骤,
步骤1.1:合并原始数据集的多个数据文件,数据文件中每一列代表一个特征,统计每个特征的缺失率,删除缺失率大于或等于阈值60%的特征,填充缺失率小于阈值60%的特征;
步骤1.2:标准化数据样本,按照网络流量的所属类别将数据文件拆分,计算正常流量与恶意流量以及各恶意流量之间的平衡度,对于比例严重失衡的类别使用基于GAN恶意流量生成模块进行样本增强。
4.根据权利要求1所述的一种基于GAN样本增强的恶意流量检测方法,其特征在于,所述基于GAN恶意流量生成模块为经过数据预处理模块后,过滤出恶意流量样本,针对不同的恶意流量类别分别构建生成对抗网络模型GAN,学习恶意流量样本分布,训练生成模型生成恶意流量样本,然后利用判别模型识别生成恶意流量样本和实际恶意流量样本,输出判别损失。
5.根据权利要求4所述的一种基于GAN样本增强的恶意流量检测方法,其特征在于,所述基于GAN恶意流量生成模块进行GAN恶意流量生成的过程包括以下步骤,
步骤2.1:构建生成对抗网络,构建生成模型G和判别模型D;
步骤2.2:生成模型G接收多峰噪声z的输入,生成模型G使用一个深度神经网络将z的分布p(z),映射到另一个数据空间G(z,θg),θg为生成模型中所有的参数,生成模型的目标是缩小G(z,θg)的分布与真实恶意样本分布pdata(x)之间的差距;
步骤2.3:判别模型D通过输出0或1来表示判别模型对输入恶意流量样本真假的判别情况,当输入的数据采样于真实恶意样本分布pdata(x)时,判别模型输出1,而当输入数据采样于合成恶意样本G(z)时,也就是从生成模型中输出数据时,判别器输出为0;
步骤2.4:生成模型与判别模型相互对抗进行优化;
步骤2.5:两个模型交替训练,同步提高,直到判别模型D的输出D(G(z))=0.5。
7.根据权利要求1所述的一种基于GAN样本增强的恶意流量检测方法,其特征在于,所述串行特征选择模块为将原始数据集和基于GAN恶意流量生成模块生成的恶意流量数据合之后输入到串行特征选择模块,该模块采用方差分析法和相关性分析法串行进行特征选择,利用方差分析计算特征发散性,利用相关性分析法计算特征之间和特征与标签间的相关性大小,通过设置阈值的方式选择对恶意流量检测贡献突出的特征。
8.根据权利要求7所述的一种基于GAN样本增强的恶意流量检测方法,其特征在于,所述串行特征选择模块的处理过程包括以下步骤,
步骤3.1:计算每个流量特征的方差,设定方差阈值0,方如式(4)所示;
步骤3.2:计算每个特征和标签的相关性以及任意两个特征之间的Pearson相关系数,保留与标签中等相关和强相关的特征,同时,去除特征之间相关性强的特征,计算公式如式(5)所示:
9.根据权利要求1所述的一种基于GAN样本增强的恶意流量检测方法,其特征在于,所述基于CatBoost算法的恶意流量检测模块为基于CatBoost算法进行建模,并利用网格搜索算法进行模型的参数调节,模型评估优秀后进行恶意流量检测。
10.根据权利要求9所述的一种基于GAN样本增强的恶意流量检测方法,其特征在于,所述基于CatBoost算法的恶意流量检测模块的处理过程为:
生成一个高精度模型,如式(6)所示:
其中x是特征向量,T(x;θk)表示决策树,θk为决策树参数,K为树的数量;
训练数据集D={(xi,yi)}i=1,2,...,n,其中是t维特征向量,是标签值,n是样本量。目标是通过训练函数F:t→使得期望损失函数(L(y,F(x)))最小。在梯度下降中,对Ft进行第t次迭代时,通过函数组H求取基分类器ht以最小化期望损失:
假设前一轮迭代得到的强学习器F(t-1)(x),损失函数时是L(y,F(x)),则本轮迭代的目的是找到一个弱分类器ht,让本轮的损失函数最小,式(7)表示的是本轮迭代的目标函数ht。
使用损失函数的负梯度-gt(x,y)去拟合每一轮的损失的近似值,式(8)中gt(x,y)表示的是上述梯度:
在实际计算中,用式(9)进行近似拟合ht:
ht=argminE(-gt(xi,yi)-h(xi))2 (9)
CatBoost对每一个样本xi都会训练一个单独的模型Mi,模型Mi由使用了不含样本xi的训练集训练得到,使用Mi得到关于样本的梯度估计,并使用该梯度来训练基分类器得到最终的模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210043157.7A CN114399029A (zh) | 2022-01-14 | 2022-01-14 | 一种基于gan样本增强的恶意流量检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210043157.7A CN114399029A (zh) | 2022-01-14 | 2022-01-14 | 一种基于gan样本增强的恶意流量检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114399029A true CN114399029A (zh) | 2022-04-26 |
Family
ID=81231477
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210043157.7A Pending CN114399029A (zh) | 2022-01-14 | 2022-01-14 | 一种基于gan样本增强的恶意流量检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114399029A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115174237A (zh) * | 2022-07-08 | 2022-10-11 | 河北科技大学 | 一种物联网***恶意流量的检测方法、装置和电子设备 |
CN115174170A (zh) * | 2022-06-23 | 2022-10-11 | 东北电力大学 | 一种基于集成学习的vpn加密流量识别方法 |
CN115996135A (zh) * | 2022-09-09 | 2023-04-21 | 重庆邮电大学 | 一种基于特征组合优化的工业互联网恶意行为实时检测方法 |
CN116167872A (zh) * | 2023-04-20 | 2023-05-26 | 湖南工商大学 | 异常医疗数据检测方法、装置及设备 |
CN116319107A (zh) * | 2023-05-19 | 2023-06-23 | 新华三人工智能科技有限公司 | 一种数据流量识别模型训练方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150200962A1 (en) * | 2012-06-04 | 2015-07-16 | The Board Of Regents Of The University Of Texas System | Method and system for resilient and adaptive detection of malicious websites |
CN111526144A (zh) * | 2020-04-21 | 2020-08-11 | 福州大学 | 基于DVAE-Catboost的异常流量检测方法与*** |
CN112235288A (zh) * | 2020-10-13 | 2021-01-15 | 北京理工大学 | 一种基于gan的ndn网络入侵检测方法 |
CN112733954A (zh) * | 2021-01-20 | 2021-04-30 | 湖南大学 | 一种基于生成对抗网络的异常流量检测方法 |
-
2022
- 2022-01-14 CN CN202210043157.7A patent/CN114399029A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150200962A1 (en) * | 2012-06-04 | 2015-07-16 | The Board Of Regents Of The University Of Texas System | Method and system for resilient and adaptive detection of malicious websites |
CN111526144A (zh) * | 2020-04-21 | 2020-08-11 | 福州大学 | 基于DVAE-Catboost的异常流量检测方法与*** |
CN112235288A (zh) * | 2020-10-13 | 2021-01-15 | 北京理工大学 | 一种基于gan的ndn网络入侵检测方法 |
CN112733954A (zh) * | 2021-01-20 | 2021-04-30 | 湖南大学 | 一种基于生成对抗网络的异常流量检测方法 |
Non-Patent Citations (3)
Title |
---|
刘嘉穗: "基于XGBoost和CatBoost相结合的消费券精准投放研究", 《中国优秀硕士学位论文全文数据库 (信息科技辑)》 * |
张浩等: "基于数据增强和模型更新的异常流量检测技术", 《信息网络安全》 * |
贾俊星: "基于CFS-SAMME集成算法的入侵检测应用研究", 《网络安全技术与应用》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115174170A (zh) * | 2022-06-23 | 2022-10-11 | 东北电力大学 | 一种基于集成学习的vpn加密流量识别方法 |
CN115174170B (zh) * | 2022-06-23 | 2023-05-09 | 东北电力大学 | 一种基于集成学习的vpn加密流量识别方法 |
CN115174237A (zh) * | 2022-07-08 | 2022-10-11 | 河北科技大学 | 一种物联网***恶意流量的检测方法、装置和电子设备 |
CN115174237B (zh) * | 2022-07-08 | 2023-04-18 | 河北科技大学 | 一种物联网***恶意流量的检测方法、装置和电子设备 |
CN115996135A (zh) * | 2022-09-09 | 2023-04-21 | 重庆邮电大学 | 一种基于特征组合优化的工业互联网恶意行为实时检测方法 |
CN115996135B (zh) * | 2022-09-09 | 2024-03-12 | 重庆邮电大学 | 一种基于特征组合优化的工业互联网恶意行为实时检测方法 |
CN116167872A (zh) * | 2023-04-20 | 2023-05-26 | 湖南工商大学 | 异常医疗数据检测方法、装置及设备 |
CN116319107A (zh) * | 2023-05-19 | 2023-06-23 | 新华三人工智能科技有限公司 | 一种数据流量识别模型训练方法及装置 |
CN116319107B (zh) * | 2023-05-19 | 2023-08-18 | 新华三人工智能科技有限公司 | 一种数据流量识别模型训练方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114399029A (zh) | 一种基于gan样本增强的恶意流量检测方法 | |
CN109768985B (zh) | 一种基于流量可视化与机器学习算法的入侵检测方法 | |
WO2019144521A1 (zh) | 信息物理交通***中基于深度学习的恶意攻击检测方法 | |
CN112491796B (zh) | 一种基于卷积神经网络的入侵检测及语义决策树量化解释方法 | |
CN113922985B (zh) | 一种基于集成学习的网络入侵检测方法及*** | |
CN111901340B (zh) | 一种面向能源互联网的入侵检测***及其方法 | |
CN111598179B (zh) | 电力监控***用户异常行为分析方法、存储介质和设备 | |
CN111461784B (zh) | 一种基于多模型融合的欺诈行为检测方法 | |
CN113067798B (zh) | Ics入侵检测方法、装置、电子设备和存储介质 | |
CN115622806B (zh) | 一种基于bert-cgan的网络入侵检测方法 | |
CN113821793A (zh) | 一种基于图卷积神经网络的多阶段攻击场景构建方法及*** | |
CN111507385A (zh) | 一种可扩展的网络攻击行为分类方法 | |
CN115242441A (zh) | 一种基于特征选择和深度神经网络的网络入侵检测方法 | |
CN116318928A (zh) | 一种基于数据增强和特征融合的恶意流量识别方法及*** | |
CN113901448A (zh) | 基于卷积神经网络和轻量级梯度提升机的入侵检测方法 | |
CN113098862A (zh) | 一种基于混合采样与膨胀卷积相结合的入侵检测方法 | |
CN115577357A (zh) | 一种基于堆叠集成技术的Android恶意软件检测方法 | |
CN111047428A (zh) | 基于少量欺诈样本的银行高风险欺诈客户识别方法 | |
CN110365625B (zh) | 物联网安全检测方法、装置及存储介质 | |
Samadzadeh et al. | Evaluating Security Anomalies by Classifying Traffic Using Deep Learning | |
US20230095966A1 (en) | Intrusion detection method based on improved immune network algorithm, and application thereof | |
Tran et al. | DeepInsight-convolutional neural network for intrusion detection systems | |
CN116527346A (zh) | 基于深度学习图神经网络理论的威胁节点感知方法 | |
CN113746707B (zh) | 一种基于分类器及网络结构的加密流量分类方法 | |
CN113852612B (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: 20220426 |
|
RJ01 | Rejection of invention patent application after publication |