System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于自动编码器的半监督学习DDoS攻击检测方法技术_技高网

一种基于自动编码器的半监督学习DDoS攻击检测方法技术

技术编号:40038513 阅读:6 留言:0更新日期:2024-01-16 19:21
本发明专利技术公开了一种基于自动编码器的半监督学习DDoS攻击检测方法,涉及网络安全技术领域,具体步骤流程包括:步骤一:输入数据,训练数据集选择;步骤二:数据预处理;步骤三:利用自动编码器进行特征学习和降维,以获得非线性泛化归类,并提取相关特征;步骤四:支持向量机创建一个决策边界或超平面,将N维空间划分为不同的类,该决策边界用于将来正确地对新的数据点进行分类;步骤五:流量判决,如果非线性SVM的输出结果为攻击类型,则判断该流量为DDoS流量,如果输出结果为良性类型,则判定为良性流量;本发明专利技术在关键性能指标方面具有更好的检测结果,包括准确性、精确度、召回率等,并且只需要少量的标准数据来训练AE并学习新的网络流量模式。

【技术实现步骤摘要】

本专利技术涉及网络安全,具体为一种基于自动编码器的半监督学习ddos攻击检测方法。


技术介绍

1、分布式拒绝服务(ddos)攻击是使用大量被劫持主机的异步攻击,它旨在中断在目标上运行的服务,有效地阻止合法流量访问其服务。在软件定义的网络(sdn)中尽管开发了多种检测和预防措施,但ddos攻击的危险仍然存在,其频率每年都在增长。ddos攻击可能导致直接的财务和业务损失,并对云提供商及其客户的声誉造成间接损害。根据2022年第四季度cloudflare ddos威胁报告,攻击次数增加了67%,持续三小时以上的攻击次数比上一季度增加了87%,在这些袭击的受害者中,超过16%的人报告收到了威胁或赎金要求。

2、在攻击发生之前对网络流量进行分析和分类可以在防止此类攻击方面起着至关重要的作用,大多数的做法是采用机器学习和深度学习算法来区分正常和异常流量,这些方法可以大致分为三类:有监督的、无监督的和基于半监督的检测方法,但是这三大类方法还是存在一些缺陷,如下:

3、①监督检测以其高精度而闻名,但它们依赖于正常和异常流量的识别标签,这些模型一般是在由输入特征构成的标记数据集上进行训练,监督模型的设计仅基于训练过的数据进行预测,且监督检测区分不同类型输入的能力有限,因此,有监督的机器学习方法无法预测新的攻击和伪装的合法行为,这些模型擅长处理标记的数据集,但受到训练集不平衡问题的限制,且在处理新攻击时无法确保其性能。

4、②与监督学习方法不同,无监督学习方法不需要数据的标签信息,并且可以解决不平衡的分类问题,但特征的低效性和优化的复杂性可能会阻碍某些无监督模型有效处理大型高维数据集,与监督方法相比,这些模型得出结果的准确性要低得多。

5、③半监督学习提供了同时使用标记数据和未标记数据的方法,它允许模型更好地推广到新的和看不见的数据,这些方法主要依赖于良性网络流量进行训练,而仅使用少量恶意网络流量进行校准和微调,因此,这些技术对于检测系统中的异常特别有利,但是因为生成异常示例的成本很高,导致训练数据集中的恶意网络流量数量有限。

6、针对上述问题,本专利技术中提出的一种基于自动编码器的半监督学习ddos攻击检测方法。


技术实现思路

1、针对现有技术的不足,本专利技术提供了一种基于自动编码器的半监督学习ddos攻击检测方法,解决了上述
技术介绍
提出的问题。

2、为实现以上目的,本专利技术通过以下技术方案予以实现:一种基于自动编码器的半监督学习ddos攻击检测方法,该方法是利用已知的标准数据集,对自动编码器模型和支持向量机模型进行训练,训练完成后,可对sdn网络中的真实流量进行自动检测,完成ddos攻击的检测,具体步骤流程如下:

3、步骤一:输入数据,训练数据集选择;

4、步骤二:数据预处理,在使用步骤一中数据集进行训练和评估前,首先对输入的数据集进行预处理;

5、步骤三:利用自动编码器进行特征学习和降维,以获得非线性泛化归类,并提取相关特征;

6、步骤四:支持向量机创建一个决策边界或超平面,将n维空间划分为不同的类,该决策边界用于将来正确地对新的数据点进行分类;

7、步骤五:流量判决,如果非线性svm的输出结果为攻击类型,则判断该流量为ddos流量,如果输出结果为良性类型,则判定为良性流量。

8、作为本专利技术进一步的技术方案,所述步骤一中训练的数据集为cicddos2019,该数据集提供网络流量和日志数据,包含良性流量和最新的常见ddos攻击;

9、该数据集包括12种不同类型的ddos攻击和84个特征。

10、作为本专利技术进一步的技术方案,所述步骤二中对输入的数据集进行预处理的具体步骤如下:

11、s1、删除不需要的元数据:删除流id、源ip、源端口号、目的ip,目的端口号、协议号、时间戳和标签等非信息性功能,这些元数据一般也是数据泄露的来源,可能导致错误的结果,通过删除这些特征,模型可以学习数据中有用的模式和关系,从而在训练和测试过程中获得更好的结果;

12、s2、删除缺失值:因为缺失的值可能会扭曲统计分析和模型训练结果,为了确保数据集的质量,所有包含缺失值的记录都将被完全删除;

13、s3、删除重复项:为了最大限度地减少训练期间的偏差,并防止模型测试期间的过度乐观估计,消除数据集中的重复记录至关重要,这确保了数据的准确性和真实世界场景的代表性,此外,删除重复记录也有助于减少计算开销和存储需求;

14、s4、归一化:数据集特征具有不同的最大值和最小值,为了提高分类器的性能,通过最小-最大归一化实现对[0,1]范围内的所有值进行归一化,该归一化涉及缩放属性值以适应[0,1]范围。

15、作为本专利技术进一步的技术方案,所述归一化的公式如下所示:

16、

17、其中,xmin表示特征值集合中的最小值,xmax表示特征值集合中的最大值,xnorm表示特征值集合归一化后的值。

18、作为本专利技术进一步的技术方案,所述步骤三中的相关特征为:由于ae算法是一种无监督学习方法,涉及一个或多个隐藏层,在ae中,输入层和输出层的单元数与特征向量元素的单元数相同,而作为隐藏层一部分的瓶颈层包含的单元数最少,ae能够通过尝试适应通过瓶颈层的数据传播来从输入数据向量学习有效的低维特征。

19、作为本专利技术进一步的技术方案,所述低维特征提取和降维过程包括两个步骤:编码和解码,在编码步骤中,使用下述等式将高维输入向量x变换为隐藏单元的低维表示h:

20、h=g(wx+b)

21、其中,w表示权重矩阵,维度为m*n的矩阵,b是偏置向量,维度为m*1的向量,g是激活函数;此函数对输入向量进行编码,生成低维h向量;对自动编码器模型进行训练,即学习每一层的权重和偏差,以实现输入层和输出层之间的相似性,这是在获得单位函数时实现的。

22、作为本专利技术进一步的技术方案,上述公式中使用的激活函数g是校正的线性单元函数,如下面公式所示:

23、g(t)=max(0,t)

24、自动编码器试图最大限度地减少数据重建错误,传统的均方误差函数f可用作自动编码器的损失函数,如下面公式所示:

25、

26、其中,x是由自动编码器给出的输入实例x的重构。

27、作为本专利技术进一步的技术方案,所述自动编码器模型共有5个隐藏层,各层分别有64、48、32、48和64个神经元,输入和输出层有76个特征,对应于预处理数据集中的特征数量;

28、输入层和前三个隐藏层一起构成自动编码器的编码器部分,其余层组成解码器部分。

29、作为本专利技术进一步的技术方案,所述步骤四中的具体步骤为:

30、a、利用非线性svm算法可以通过将数据转换到高维空间来处理数据点之间的非线性关系,非线性svm算法性能的关键因素之一是确定要使用的适当核函数,核本文档来自技高网...

【技术保护点】

1.一种基于自动编码器的半监督学习DDoS攻击检测方法,其特征在于,该方法是利用已知的标准数据集,对自动编码器模型和支持向量机模型进行训练,训练完成后,可对SDN网络中的真实流量进行自动检测,完成DDoS攻击的检测,具体步骤流程如下:

2.根据权利要求1所述的一种基于自动编码器的半监督学习DDoS攻击检测方法,其特征在于,所述步骤一中训练的数据集为CICDDoS2019,该数据集提供网络流量和日志数据,包含良性流量和最新的常见DDoS攻击;

3.根据权利要求1所述的一种基于自动编码器的半监督学习DDoS攻击检测方法,其特征在于,所述步骤二中对输入的数据集进行预处理的具体步骤如下:

4.根据权利要求3所述的一种基于自动编码器的半监督学习DDoS攻击检测方法,其特征在于,所述归一化的公式如下所示:

5.根据权利要求1所述的一种基于自动编码器的半监督学习DDoS攻击检测方法,其特征在于,所述步骤三中的相关特征为:由于AE算法是一种无监督学习方法,涉及一个或多个隐藏层,在AE中,输入层和输出层的单元数与特征向量元素的单元数相同,而作为隐藏层一部分的瓶颈层包含的单元数最少,AE能够通过尝试适应通过瓶颈层的数据传播来从输入数据向量学习有效的低维特征。

6.根据权利要求5所述的一种基于自动编码器的半监督学习DDoS攻击检测方法,其特征在于,所述低维特征提取和降维过程包括两个步骤:编码和解码,在编码步骤中,使用下述等式将高维输入向量X变换为隐藏单元的低维表示h:

7.根据权利要求6所述的一种基于自动编码器的半监督学习DDoS攻击检测方法,其特征在于,上述公式中使用的激活函数g是校正的线性单元函数,如下面公式所示:

8.根据权利要求6所述的一种基于自动编码器的半监督学习DDoS攻击检测方法,其特征在于,所述自动编码器模型共有5个隐藏层,各层分别有64、48、32、48和64个神经元,输入和输出层有76个特征,对应于预处理数据集中的特征数量;

9.根据权利要求1所述的一种基于自动编码器的半监督学习DDoS攻击检测方法,其特征在于,所述步骤四中的具体步骤为:

...

【技术特征摘要】

1.一种基于自动编码器的半监督学习ddos攻击检测方法,其特征在于,该方法是利用已知的标准数据集,对自动编码器模型和支持向量机模型进行训练,训练完成后,可对sdn网络中的真实流量进行自动检测,完成ddos攻击的检测,具体步骤流程如下:

2.根据权利要求1所述的一种基于自动编码器的半监督学习ddos攻击检测方法,其特征在于,所述步骤一中训练的数据集为cicddos2019,该数据集提供网络流量和日志数据,包含良性流量和最新的常见ddos攻击;

3.根据权利要求1所述的一种基于自动编码器的半监督学习ddos攻击检测方法,其特征在于,所述步骤二中对输入的数据集进行预处理的具体步骤如下:

4.根据权利要求3所述的一种基于自动编码器的半监督学习ddos攻击检测方法,其特征在于,所述归一化的公式如下所示:

5.根据权利要求1所述的一种基于自动编码器的半监督学习ddos攻击检测方法,其特征在于,所述步骤三中的相关特征为:由于ae算法是一种无监督学习方法,涉及一个或多个隐藏层,在ae中,...

【专利技术属性】
技术研发人员:刘学利卢文朋张硕牛翔
申请(专利权)人:积至海南信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1