CN117278314A - 一种DDoS攻击检测方法 - Google Patents
一种DDoS攻击检测方法 Download PDFInfo
- Publication number
- CN117278314A CN117278314A CN202311381759.4A CN202311381759A CN117278314A CN 117278314 A CN117278314 A CN 117278314A CN 202311381759 A CN202311381759 A CN 202311381759A CN 117278314 A CN117278314 A CN 117278314A
- Authority
- CN
- China
- Prior art keywords
- data
- features
- importance
- feature
- calculating
- 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 39
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 28
- 230000007246 mechanism Effects 0.000 claims abstract description 21
- 238000012545 processing Methods 0.000 claims abstract description 19
- 238000007637 random forest analysis Methods 0.000 claims abstract description 19
- 238000010606 normalization Methods 0.000 claims abstract description 13
- 238000007781 pre-processing Methods 0.000 claims abstract description 13
- 238000004140 cleaning Methods 0.000 claims abstract description 10
- 238000010220 Pearson correlation analysis Methods 0.000 claims abstract description 4
- 238000000034 method Methods 0.000 claims description 18
- 238000011176 pooling Methods 0.000 claims description 10
- 238000000605 extraction Methods 0.000 claims description 8
- 230000009467 reduction Effects 0.000 claims description 8
- 230000002159 abnormal effect Effects 0.000 claims description 6
- 239000011159 matrix material Substances 0.000 claims description 5
- 230000004913 activation Effects 0.000 claims description 4
- 238000003066 decision tree Methods 0.000 claims description 4
- 238000013507 mapping Methods 0.000 claims description 3
- 238000012216 screening Methods 0.000 claims description 3
- 238000013527 convolutional neural network Methods 0.000 description 17
- 238000002474 experimental method Methods 0.000 description 11
- 238000011156 evaluation Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000010187 selection method Methods 0.000 description 6
- 238000012549 training Methods 0.000 description 6
- 238000013135 deep learning Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000000052 comparative effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 206010003671 Atrioventricular Block Diseases 0.000 description 1
- 208000010271 Heart Block Diseases 0.000 description 1
- 101000826116 Homo sapiens Single-stranded DNA-binding protein 3 Proteins 0.000 description 1
- 102100023008 Single-stranded DNA-binding protein 3 Human genes 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 229910002056 binary alloy Inorganic materials 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 230000000779 depleting effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000008034 disappearance Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 238000011946 reduction process Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method 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
- G06N20/00—Machine learning
-
- 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]
-
- 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/1441—Countermeasures against malicious traffic
- H04L63/1458—Denial of Service
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种DDoS攻击检测方法,包括以下步骤:S1,数据预处理阶段,对数据集进行数据清洗、one‑hot编码和归一化处理;S2,特征选择阶段,即先采用随机森林算法来计算流量数据的特征重要性,并根据其重要性进行排序;然后,通过皮尔逊相关分析来计算特征之间的相关性,结合S1结果进行特征选择,减少数据冗余;S3,采用CNN和Bi LSTM模型分别进行空间维度和时间维度的特征提取,对二者提取到的特征进行融合后,再利用自注意力机制分配以不同的权重;S4,分类阶段,将训练好的结果输入softmax分类器进行分类处理。本发明提供了一种DDoS攻击检测方法,基于CNN和Bi LSTM网络引入注意力机制,构建了全新的CNN‑Bi LSTM模型,以此实现了准确率高、误报率低的DDoS攻击检测。
Description
技术领域
本发明涉及DDoS攻击检测技术领域,尤其涉及一种DDoS攻击检测方法。
背景技术
DDoS(Distributed Denial of Service,分布式拒绝服务)攻击是目前黑客常使用的攻击方式,通过耗尽攻击者主机的资源,拒绝合法用户的正常访问非常容易使得攻击对象的金钱、服务和名誉受到严重损害。随着网络技术的不断升级更新,DDOS攻击手段越来越难以被察觉,且破坏力日益增大。因此如何快速检测并区分出正常流量和攻击流量,已成为国内外众多研究学者最新关注的研究热点。
随着深度学习的飞速发展,大量的研究人员开始将深度学习引入到DDoS攻击检测中来。深度学习通过多层神经元或感知机构建网络模型,并对模型进行训练,以便从海量数据中分析并学习其中的内在规律。深度学习方法能对海量的高维数据进行降维处理,还能解决一定的数据噪声问题。现有资料提出的方法是对攻击行为进行分析,将CNN和LSTM结合起来,构成CNN-LSTM3模型,反向传播过程中使用梯度下降算法进行权重的更新;也有Iandol等人在SDN中将DNN和CNN两种深度学习模型算法结合起来,提出了混合模型,这种方法可缩小网络的规模、减少参数和计算量,能预防训练中参数过拟合问题、提高准确率,缺点是训练时间长。也有学者提出过基于卷积神经网络的网络流灰度矩阵特征的DDoS攻击检测方法,根据IP协议中攻击流和正常流的不同特征,定义了7元组来描述网络流特性,并通过二进制转换成灰度特征,用多尺度卷积神经网络模型进行特征提取训练。
综上所述,目前的DDoS攻击检测技术研究热点主要分为:特征选择和优化训练算法两个方面:(1)原始数据集存在特征冗余问题。数据特征维数高容易导致模型训练时间长,同时还影响模型的检测性能。因此如何在高维度的流量数据中提取出重要特征,有效地提高检测效率变得至关重要;(2)攻击检测模型检测效率低。首先是原始流量数据中特征维数多使得需要检测的参数量巨大。然而,常见经典检测模型功能单一,提取的数据信息不全面、不完整,所以,性能低下。
发明内容
本发明的目的在于提供一种DDoS攻击检测方法,基于CNN和BiLSTM网络引入注意力机制,构建了全新的CNN-BiLSTM模型,以此实现了准确率高、误报率低的DDoS攻击检测。
本发明公开的一种DDoS攻击检测方法所采用的技术方案是:
一种DDoS攻击检测方法,包括以下步骤:
S1,数据预处理阶段,对数据集进行数据清洗、one-hot编码和归一化处理;
S2,特征选择阶段,即先采用随机森林算法来计算流量数据的特征重要性,并根据其重要性进行排序;然后,通过皮尔逊相关分析来计算特征之间的相关性,结合S1结果进行特征选择,减少数据冗余;
S3,采用CNN和BiLSTM模型分别进行空间维度和时间维度的特征提取,对二者提取到的特征进行融合后,再利用自注意力机制分配以不同的权重;
S4,分类阶段,将训练好的结果输入softmax分类器进行分类处理。
作为优选方案,所述预处理阶段的过程分为三个步骤:首先对CIC-IDS2017和CIC-DDoS2019数据集进行数据清洗,然后进行one-hot编码,最后进行归一化处理;
S1-1,数据清洗主要是对异常数据进行处理,采用Scikit-learn中KNN Imputer方法进行处理,当样本数据大量缺失时,对缺失值进行拟合;样本数据缺失较少时,采用众数来填充;
该方法通过欧几里得距离矩阵寻找最近邻,帮助估算观测中出现的缺失值;
S1-2,采用one-hot编码对CIC-IDS2017数据集进行处理,将原始数据集中的符号性特征转化为数值型特征,以确保所有数据都是数值的,从而便于学习数据特征;
S1-3,由于数据集归一化可以将流量特征的方差降低到一定范围内,并减少异常值的影响,故数据经过one-hot编码后,使用最小-最大归一化将特征值归一化为0到1之间的值,如下式所示:
其中,hi,j表示数据集中第i行和第j列的特征值。
作为优选方案,一种新的RFP特征选择算法,该算法首先通过随机森林算法计算样本中每个特征的重要性,并根据重要度大小对其进行排序;然后,利用皮尔逊相关系数计算特征之间的相关性;最后,将两个结果结合起来实现特征选择,该算法首先通过随机森林算法计算样本中每个特征的重要性,并根据重要度大小对其进行排序;然后,利用皮尔逊相关系数计算特征之间的相关性;最后,将两个结果结合起来实现特征选择;
计算某个特征featurei的重要性程度的大小的具体步骤如下:
S2-1,对于随机森林中的每一颗决策树,选择相应的袋外数据以计算其袋外数据误差,记为errOOB1;
S2-2,将干扰随机地添加到所有袋外数据样本中,并计算其误差,记为errOOB2;
S2-3,假设随机森林中包含M棵树,可通过下式计算特征的重要度:
S2-4,计算皮尔逊相关系数并筛选出重要度较大的特征,以构建新的数据集;
皮尔逊相关系数用于测量两个变量X和Y之间的相关性,通过计算两个特征值之间的协方差和标准差,通过下式进行求商,得到两个特征之间的皮尔逊相关系数:
皮尔逊的取值范围为(-1,1),其绝对值越大即越接近于1,说明两个变量之间的相关程度越强。
作为优选方案,S3-1,空间特征提取:
①进行数据预处理,将结果输入卷积层;
②卷积层提取特征,权重共享减少参数;
③用激活函数对卷积层输出做非线性映射;
④将上一步输出作为池化层的输入,池化层进行数据降维;
⑤卷积层和池化层堆叠;
⑥全连接层将提取到的高维特征整合输出;
S3-2,时间特征提取:
①同空间特征提取,进行数据预处理,将结果送入BiLSTM;
②BiLSTM模型通过更新门信息进行时间特征提取;
S3-3,特征融合,将S3-1和S3-2得到的信息融合成并联特征;
S3-4,自注意力机制,将第三步得到的结果送入自注意力模型中,进行二次特征提取,选择重要的信息;
S3-5,利用softmax函数进行分类。
本发明公开的一种DDoS攻击检测方法的有益效果是:开始通过随机森林算法进行特征选择,再利用CNN和BiLSTM网络分别同时提取空间特征和时间特征,将提取到的时空特征进行并联融合,接着引入注意力机制,根据特征重要度的大小来分配相应的权重,最后经过softmax分类器来进行流量分类,CNN和BiLSTM网络引入注意力机制,构建了全新的CNN-BiLSTM模型,以此实现了准确率高、误报率低的DDoS攻击检测。
附图说明
图1是本发明一种DDoS攻击检测方法的原理框图。
图2是数据集流量类别分布图。
图3是不同特征选择方法的对比结果图。
图4是基于CIC-IDS2017数据集的二分类检测结果图。
图5是与同类方法对比图。
图6是基于CIC-DDoS2019数据集的多分类检测结果图。
具体实施方式
下面结合具体实施例和说明书附图对本发明做进一步阐述和说明:
请参考图1,一种DDoS攻击检测方法,包括以下步骤:
S1,数据预处理阶段,对数据集进行数据清洗、one-hot编码和归一化处理。
所述预处理阶段的过程分为三个步骤:首先对CIC-IDS2017和CIC-DDoS2019数据集进行数据清洗,然后进行one-hot编码,最后进行归一化处理;
S1-1,数据清洗主要是对异常数据进行处理,采用Scikit-learn中KNN Imputer方法进行处理,当样本数据大量缺失时,对缺失值进行拟合;样本数据缺失较少时,采用众数来填充;
该方法通过欧几里得距离矩阵寻找最近邻,帮助估算观测中出现的缺失值,以矩阵input={[3,nan,7]],[4,3,10],[2,4,8]}为例,当取“邻居”样本个数为1时,第一个样本的第一列特征3和第三列特征7与最后一个样本的第一列特征2和第三列特征8的欧式距离最近,故缺失值填充为4;
S1-2,采用one-hot编码对CIC-IDS2017数据集进行处理,将原始数据集中的符号性特征转化为数值型特征,以确保所有数据都是数值的,从而便于学习数据特征;
S1-3,由于数据集归一化可以将流量特征的方差降低到一定范围内,并减少异常值的影响,故数据经过one-hot编码后,使用最小-最大归一化将特征值归一化为0到1之间的值,如下式所示:
其中,hi,j表示数据集中第i行和第j列的特征值。
S2,特征选择阶段,即先采用随机森林算法来计算流量数据的特征重要性,并根据其重要性进行排序;然后,通过皮尔逊相关分析来计算特征之间的相关性,结合S1结果进行特征选择,减少数据冗余;
为解决原始数据集中的特征冗余问题,提出了一种新的RFP特征选择算法。该算法首先通过随机森林算法计算样本中每个特征的重要性,并根据重要度大小对其进行排序;然后,利用皮尔逊相关系数计算特征之间的相关性;最后,将两个结果结合起来实现特征选择。
随机森林(Random Forest)算法是一种基于决策树的集成学***均值,并比较特征之间的贡献大小,以识别重要特征。现有方法通常使用基尼指数(Gini index)或袋外数据(OOB)错误率作为评估指标来衡量贡献大小。采用OOB作为衡量贡献大小的指标。计算某个特征featurei的重要性程度的大小(简称:重要度)的具体步骤如下:S2-1,对于随机森林中的每一颗决策树,选择相应的袋外数据以计算其袋外数据误差,记为errOOB1;
S2-2,将干扰随机地添加到所有袋外数据样本中,并计算其误差,记为errOOB2;
S2-3,假设随机森林中包含M棵树,可通过下式计算特征的重要度:
S2-4,计算皮尔逊相关系数并筛选出重要度较大的特征,以构建新的数据集;
皮尔逊相关系数用于测量两个变量X和Y之间的相关性,通过计算两个特征值之间的协方差和标准差,通过下式进行求商,得到两个特征之间的皮尔逊相关系数:
皮尔逊的取值范围为(-1,1),其绝对值越大即越接近于1,说明两个变量之间的相关程度越强。一般通过表1来判断相关程度的强弱。
表1:相关程度强弱对应表
根据重要性程度保留更重要的特征,因此相关系数大于0.8或小于-0.8的特征选择保留;对于相关系数不在分析区间内的特征,分析其特征重要性,如果低于0.001,则将其剔除。最后,CIC-IDS2017数据集保留52个特征,CIC-DDoS2019数据集保留67个特征。
提出的RFP特征选择算法如下所示。
输入:
Original data set,D
输出:
Original data set,New D
过程:
(1)Choose corresponding out of bag data and calculate the error,errOOB1
(2)Randomly add interference to all samples of data outside the bagand calculate its error,errOOB2
(3)Calculate the importance of features
(4)Calculate the Pearson correlation coefficient and screen outfeatures with high importance to construct a new dataset
S3,采用CNN和BiLSTM模型分别进行空间维度和时间维度的特征提取,对二者提取到的特征进行融合后,再利用自注意力机制分配以不同的权重;
S4,分类阶段,将训练好的结果输入softmax分类器进行分类处理。
S3-1,空间特征提取:
①进行数据预处理,将结果输入卷积层;
②卷积层提取特征,权重共享减少参数;
③用激活函数对卷积层输出做非线性映射;
④将上一步输出作为池化层的输入,池化层进行数据降维;
⑤卷积层和池化层堆叠;
⑥全连接层将提取到的高维特征整合输出;
S3-2,时间特征提取:
①同空间特征提取,进行数据预处理,将结果送入BiLSTM;
②BiLSTM模型通过更新门信息进行时间特征提取;
S3-3,特征融合,将S3-1和S3-2得到的信息融合成并联特征;
S3-4,自注意力机制,将第三步得到的结果送入自注意力模型中,进行二次特征提取,选择重要的信息;
S3-5,利用softmax函数进行分类。
在DDoS攻击检测领域,当前适合于检测DDoS攻击的数据集较少,且常用的CAIDA2007[11]和ISCX-2012[12]数据集年代久远,随着网络架构的日趋复杂化以及攻击类型和形式的日新月异化,这些数据集早已不具备特征代表的完备性和完整性。
实验采用了由加拿大网络安全研究所(CIC)与Wireshark在模拟环境中收集的两个公开的数据集,即CIC-IDS2017[13]和CICDDoS2019[14]。这两个数据集均它们是先使用两种类型的使用配置文件和多级攻击(如Heartbleach)以及各种DoS和DDoS攻击生成的,然后使用CICFlowMeter工具对收集的流量进行预处理,生成包含各种DoS和DDoS流量数据的CSV格式。图2展示了CIC-IDS2017数据集和CIC-DDoS2019数据集中不同类别的样本数量。
针对DDoS攻击进行研究,对于CIC-IDS2017数据集的预处理,分离出只含有Benign和DDoS的两个csv文件,经过特征选择算法提取了流特征、基础特征、连接特征、时间特征、通用特征、一些额外的生成特征以及标签特征,共有52维特征;对于CIC-DDoS2019数据集经过预处理后保留67维特征。基于CIC-I最佳超参数设置:在1D CNN网络中,将卷积层滤波器的大小设置为32,卷积核大小为3,选用Relu激活函数,池化层大小设置为2;在BiLSTM网络中,隐藏节点数为128;丢弃率为0.5,批大小为100,迭代次数为150,学习率为0.005。
结果分析
实验环境DS2017数据集进二分类实验,正常流量用0表示,DDoS攻击流量用1表示;为验证所提模型对多类攻击检测的有效性,基于CIC-DDoS2019数据集进行多分类实验。
评价指标
为了评估模型的检测性能,采用准确率(Accuracy)、精确率(Precision)、召回率(Recall)和F1(F1-score)值作为模型的评价指标。准确率表示所有分类正确的样本占全部样本的比例;精确率表示预测结果是正样本中实际标签也是正样本的比例;召回率表示所有正样本中被找出的比例;F1值是对精确率和召回率赋予不同权值进行加权调和,用于综合反映模型整体性能的指标。这些指标计算都来自于对正负样本的分类结果,每项评估指标的计算过程如下。算过程如下:
其中,TP代表正确分类的正样本数量,FN代表错误分类的负样本数量,FP代表错误分类的正样本数量,TN代表正确分类的负样本数量。
超参数设置
模型超参数的选取会直接影响其综合性能的优劣。模型采用Adam优化器并参照F1值作为模型超参数优化指标,以此得到实验。
不同特征选择方法的对比实验
为了验证提出的特征选择方法的有效性和适用性,本节对不同特征选择方法进行了比较实验:在相同的实验条件下,将提出的RFP特征选择方法与常用的PCA和AE特征选择方法相比较。实验对比如图3所示。
从图3中可以看出,RFP算法在三个数据集上所取得的效果均与其他两种方法,这是因为PCA算法在进行数据降维时更多地依赖方差,但方差较小的非主成分也可能包含样本差异的重要信息,降维过程会对后续数据处理产生影响;AE在进行特征空间重构时,更多地依赖于训练数据。因此,这两种方法都没有取得更好的效果。RFP算法根据特征的重要性和相关性来选择特征,以达到提高模型分类精度的效果。
二分类对比结果
为了验证模型的有效性,将使用CIC-IDS2017数据集分别在CNN、LSTM、BiLSTM、CNN-BiLSTM四种模型上进行对比实验。其中模型的准确率、精确率、召回率及F1值作为评价指标进行性能对比。实验结果对比如图4所示。
从图4可以看出,相比于常见经典单一模型CNN、LSTM、BiLSTM性能有明显提升,其准确率、精确率、召回率、F1值分别提升到92.501%、92.809%、92.451%、92.630%;加入注意力机制后,其准确率、精确率、召回率、F1值分别提升了1.169%、1.015%、1.453%、1.234%。这是因为CNN-BIiLSTM模型能充分提取数据的时空特征,从而提高模型的检测效率。
为了验证注意力机制确实能有效地提升DDoS攻击检测的性能,在CNN-BiLSTM模型基础上加入自注意力机制。因此在基于CIC-IDS2017数据集上,进行了未加入自注意力机制的CNN-BiLSTM与加入自注意力机制的CNN-AttBiLSTM模型的对比实验。实验结果如图5所示。
从图5可以看出,在CIC-IDS2017数据集上CNN-BiLSTM模型可以做到对数据的空间特征和时间序列特征的充分提取,且引入自注意力机制后使模型的各项评价指标有一定提升,这是因为自注意力机制能对那些DDoS攻击检测结果影响较大的特征分配相应权重,从而提高模型的性能,同时可以缓解在处理时间序列数据时LSTM网络所带来的“梯度消失”问题。因此,在性能上优于近年来同类方法。
多分类对比结果
为了验证的攻击检测方法能有效区分不同DDoS攻击类型,故在CIC-DDoS2019数据集上进行模型多分类性能评估实验。实验结果如图6所示。
在二分类实验中,已经验证了混合模型的有效性,因此在多分类实验中,只将模型与CNN-BiLSTM进行性能对比。从图6可以看出,模型较于CNN-BiLSTM模型对NTP、LDAP、SSDP、Syn的检测准确率分别提高了1.544%、1.816%、1.202%、1.724%,对正常类和NetBIOS攻击取得了最高的准确率,分别为96.251%和97.876%。这一结果表明,所提模型对多类攻击样本的检测性能更好。
本发明提供一种DDoS攻击检测方法,开始通过随机森林算法进行特征选择,再利用CNN和BiLSTM网络分别同时提取空间特征和时间特征,将提取到的时空特征进行并联融合,接着引入注意力机制,根据特征重要度的大小来分配相应的权重,最后经过softmax分类器来进行流量分类,CNN和BiLSTM网络引入注意力机制,构建了全新的CNN-BiLSTM模型,以此实现了准确率高、误报率低的DDoS攻击检测。
最后应当说明的是,以上实施例仅用以说明本发明的技术方案,而非对本发明保护范围的限制,尽管参照较佳实施例对本发明作了详细地说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的实质和范围。
Claims (4)
1.一种DDoS攻击检测方法,其特征在于,包括以下步骤:
S1,数据预处理阶段,对数据集进行数据清洗、one-hot编码和归一化处理;
S2,特征选择阶段,即先采用随机森林算法来计算流量数据的特征重要性,并根据其重要性进行排序;然后,通过皮尔逊相关分析来计算特征之间的相关性,结合S1结果进行特征选择,减少数据冗余;
S3,采用CNN和BiLSTM模型分别进行空间维度和时间维度的特征提取,对二者提取到的特征进行融合后,再利用自注意力机制分配以不同的权重;
S4,分类阶段,将训练好的结果输入softmax分类器进行分类处理。
2.如权利要求1所述的一种DDoS攻击检测方法,其特征在于,所述预处理阶段的过程分为三个步骤:首先对CIC-IDS2017和CIC-DDoS2019数据集进行数据清洗,然后进行one-hot编码,最后进行归一化处理;
S1-1,数据清洗主要是对异常数据进行处理,采用Scikit-learn中KNN Imputer方法进行处理,当样本数据大量缺失时,对缺失值进行拟合;样本数据缺失较少时,采用众数来填充;
该方法通过欧几里得距离矩阵寻找最近邻,帮助估算观测中出现的缺失值;
S1-2,采用one-hot编码对CIC-IDS2017数据集进行处理,将原始数据集中的符号性特征转化为数值型特征,以确保所有数据都是数值的,从而便于学习数据特征;
S1-3,由于数据集归一化可以将流量特征的方差降低到一定范围内,并减少异常值的影响,故数据经过one-hot编码后,使用最小-最大归一化将特征值归一化为0到1之间的值,如下式所示:
其中,hi,j表示数据集中第i行和第j列的特征值。
3.如权利要求1所述的一种DDoS攻击检测方法,其特征在于,一种新的RFP特征选择算法,该算法首先通过随机森林算法计算样本中每个特征的重要性,并根据重要度大小对其进行排序;然后,利用皮尔逊相关系数计算特征之间的相关性;最后,将两个结果结合起来实现特征选择,该算法首先通过随机森林算法计算样本中每个特征的重要性,并根据重要度大小对其进行排序;然后,利用皮尔逊相关系数计算特征之间的相关性;最后,将两个结果结合起来实现特征选择;
计算某个特征featurei的重要性程度的大小的具体步骤如下:
S2-1,对于随机森林中的每一颗决策树,选择相应的袋外数据以计算其袋外数据误差,记为errOOB1;
S2-2,将干扰随机地添加到所有袋外数据样本中,并计算其误差,记为errOOB2;
S2-3,假设随机森林中包含M棵树,可通过下式计算特征的重要度:
S2-4,计算皮尔逊相关系数并筛选出重要度较大的特征,以构建新的数据集;
皮尔逊相关系数用于测量两个变量X和Y之间的相关性,通过计算两个特征值之间的协方差和标准差,通过下式进行求商,得到两个特征之间的皮尔逊相关系数:
皮尔逊的取值范围为(-1,1),其绝对值越大即越接近于1,说明两个变量之间的相关程度越强。
4.如权利要求1所述的一种DDoS攻击检测方法,其特征在于,
S3-1,空间特征提取:
①进行数据预处理,将结果输入卷积层;
②卷积层提取特征,权重共享减少参数;
③用激活函数对卷积层输出做非线性映射;
④将上一步输出作为池化层的输入,池化层进行数据降维;
⑤卷积层和池化层堆叠;
⑥全连接层将提取到的高维特征整合输出;
S3-2,时间特征提取:
①同空间特征提取,进行数据预处理,将结果送入BiLSTM;
②BiLSTM模型通过更新门信息进行时间特征提取;
S3-3,特征融合,将S3-1和S3-2得到的信息融合成并联特征;
S3-4,自注意力机制,将第三步得到的结果送入自注意力模型中,进行二次特征提取,选择重要的信息;
S3-5,利用softmax函数进行分类。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311381759.4A CN117278314A (zh) | 2023-10-24 | 2023-10-24 | 一种DDoS攻击检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311381759.4A CN117278314A (zh) | 2023-10-24 | 2023-10-24 | 一种DDoS攻击检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117278314A true CN117278314A (zh) | 2023-12-22 |
Family
ID=89201003
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311381759.4A Pending CN117278314A (zh) | 2023-10-24 | 2023-10-24 | 一种DDoS攻击检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117278314A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117493787A (zh) * | 2024-01-02 | 2024-02-02 | 山东力威液压技术有限公司 | 基于压力流量关联分析的液压阀运行数据异常预警方法 |
-
2023
- 2023-10-24 CN CN202311381759.4A patent/CN117278314A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117493787A (zh) * | 2024-01-02 | 2024-02-02 | 山东力威液压技术有限公司 | 基于压力流量关联分析的液压阀运行数据异常预警方法 |
CN117493787B (zh) * | 2024-01-02 | 2024-03-15 | 山东力威液压技术有限公司 | 基于压力流量关联分析的液压阀运行数据异常预警方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Parsaei et al. | A hybrid data mining approach for intrusion detection on imbalanced NSL-KDD dataset | |
CN110070141A (zh) | 一种网络入侵检测方法 | |
CN110213222A (zh) | 基于机器学习的网络入侵检测方法 | |
CN111835707B (zh) | 一种基于改进后的支持向量机的恶意程序识别方法 | |
CN112039903B (zh) | 基于深度自编码神经网络模型的网络安全态势评估方法 | |
CN111598179B (zh) | 电力监控***用户异常行为分析方法、存储介质和设备 | |
CN114553545A (zh) | 一种入侵流量检测识别方法及*** | |
CN102291392A (zh) | 一种基于Bagging算法的复合式入侵检测方法 | |
CN117278314A (zh) | 一种DDoS攻击检测方法 | |
CN115018512A (zh) | 基于Transformer神经网络的窃电检测方法及装置 | |
CN116318928A (zh) | 一种基于数据增强和特征融合的恶意流量识别方法及*** | |
Tian et al. | An intrusion detection model based on SMOTE and convolutional neural network ensemble | |
Hendry et al. | Intrusion signature creation via clustering anomalies | |
CN111669410B (zh) | 工控网络负例样本数据生成方法、装置、服务器和介质 | |
CN111340196A (zh) | 对抗网络数据生成方法以及异常事件检测方法 | |
CN117014193A (zh) | 一种基于行为基线的未知Web攻击检测方法 | |
CN113609480B (zh) | 基于大规模网络流的多路学习入侵检测方法 | |
CN114124437B (zh) | 基于原型卷积网络的加密流量识别方法 | |
Ramamoorthy et al. | Integration of fuzzy with incremental import vector machine for intrusion detection | |
CN117792933B (zh) | 一种基于深度学习的网络流量优化方法及*** | |
Liu | Multivariate Network Intrusion Detection Methods Based on Machine Learning | |
Wu et al. | AMS Intrusion Detection Method Based on Improved Generalized Regression Neural Network | |
CN113904801B (zh) | 一种网络入侵检测方法及*** | |
CN117792801B (zh) | 一种基于多元事件分析的网络安全威胁识别方法及*** | |
Shi et al. | Enhancing IoT Flow Anomaly Detection with Differential Optimal Feature Subspace |
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 |