没有合适的资源?快使用搜索试试~ 我知道了~
埃及信息学杂志24(2023)27全文Boruta算法在DDoS检测Noor Farhanaa,Ahmad Firdausa,Mohd Faaizie Darmawanb,Mohd Faizal Ab Razakaa马来西亚彭亨大学计算与应用科学学院计算系,26600 Pekan,Pahang,Malaysiab马来西亚霹雳州塔巴马拉技术大学计算机数学科学系阿提奇莱因福奥文章历史记录:收到2022年2022年10月4日修订2022年10月14日接受2022年11月10日网上发售保留字:DDoS机器学习J48随机森林朴素贝叶斯多层感知器A B S T R A C T分布式拒绝服务(DDoS)是一种利用许多受损系统或计算机以及多个Internet连接同时淹没目标资源的攻击类型。DDoS攻击的主要目的是破坏网站流量并导致其崩溃。随着流量的增长,检测分布式拒绝服务(DDoS)攻击是一项具有挑战性的任务。此外,包含大量特征的数据集因此,在机器学习中,有必要为训练阶段准备相关的特征列表,以获得良好的准确性性能。有太多的可能性,选择相关的功能是复杂的。本研究提出了Boruta算法作为一种合适的方法,以实现准确识别相关功能。为了评估Boruta算法,使用多个分类器(J48,随机森林,朴素贝叶斯和多层感知器),以确定Boruta算法选择的特征的有效性。结果表明,与其他分类器相比,随机森林分类器具有更高的值,具有100%的真阳性率,准确性性能指标为99.993%©2023 The Bottoms.由Elsevier BV代表计算机和人工智能学院发布开罗大学法律系这是一篇CC BY-NC-ND许可证下的开放获取文章(http://creative-commons.org/licenses/by-nc-nd/4.0/)上提供。1. 介绍DDoS是一种使用多个分布式资源[1]的攻击,例如服务器,服务或网络[2]针对其目标。由于越来越多的用户或组织使用互联网交换和传递重要数据和信息,DDoS攻击正在上升[3]。这诱使攻击者使在线服务不可用,或者通过使用来自多个来源的流量来阻止合法用户访问特定网络[4]。DDoS攻击始于1998年,但人们直到1999年7月才意识到它攻击了公司和组织。一项研究指出,自1999年夏天以来,许多组织都受到了DDoS攻击,并且攻击的数量一直在增加。因此,研究*通讯作者。电 子 邮 件 地 址 : mcn20001@stdmail.ump.edu.my ( N.Farhana ) , firdaus-za@ump.edu.my ( A. Firdaus ) , faaizie@uitm.edu.my ( M.F.Darmawan ) ,faizalraza-k@ump.edu.my(M.F. AbRazak)。开罗大学计算机和信息系负责同行审查。DDoS攻击持续进行,以便找到预防攻击的方法[6]。2000年Yahoo.com两个小时[7]。在2021年第三季度,卡巴斯基[8]报告称,全球多个国家发生了多波大规模DDoS攻击。根据Incapsula的研究,DDoS攻击有各种大小和形状,并且它们没有停止增长[9]。大约86%的参与者报告说,平均发作持续约24小时或更短。然而,数据显示,发作的持续时间并不一致。不同的组织报告了不同的平均时间,37%的组织报告平均时间为6小时或更短,31%的组织报告6至12小时,18%的组织报告13至24小时。这些事件促进了DDoS威胁的扩展。安全从业人员进行了各种实验来检测DDoS。然而,通过机器学习智能预测模型仔细检查导致DDoS检测的特征至关重要从安全事件数据或数据库中选择特征将提高机器学习检测的性能[10,11,12]。数据集中大量的特征可能会通过减慢训练数据的处理速度来降低机器学习的性能,从而降低分析效率[13,14,15,16]。https://doi.org/10.1016/j.eij.2022.10.0051110-8665/©2023 THE COURORS.由Elsevier BV代表开罗大学计算机和人工智能学院出版这是一篇基于CC BY-NC-ND许可证的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。制作和主办:Elsevier可在ScienceDirect上获得目录列表埃及信息学杂志杂志主页:www.sciencedirect.comN. Farhana,A.Firdaus,M.F.Darmawan等人埃及信息学杂志24(2023)2728已经进行了各种研究选择DDoS功能。一项研究[17]通过从原始样本中选择有限数量的特征,采用主成分分析(PCA)方法选择。本文采用信息增益和卡方检验技术对DDoS攻击进行特征选择。[18]和[19]的实验都在集群节点中采用火花方法进行特征选择和分类DDoS威胁。尽管许多研究已经提出了各种方法来检测DDoS,但随着DDoS攻击的迅速扩大,仍然需要一种独特的策略。目前的DDoS分析和检测方法尚未完全处理DDoS攻击[20]。因此,随着技术的进步,DDoS检测方法需要定期更新。本研究的主要贡献集中在动态分析,采用最小的DDoS功能来评估Boruta算法的有效性该研究使用该算法从数据集中的所有可用特征中选择相关特征为了确定Boruta算法的可行性,该研究使用了四种机器学习分类器(J48,随机森林,朴素贝叶斯和多层感知器),并在特征选择后对其进行评估此外,本文还评估了分类器在不同DDoS数据集上的性能。本研究建议使用Boruta算法来准确地识别相关特征。使用各种分类器(J48、随机森林、朴素贝叶斯和多层感知器)评估了Boruta算法选择的特征的性能和Boruta算法产生用于机器学习检测的最佳特征的能力。结果表明,与其他分类器相比,随机森林分类器具有更高的价值。机器学习的性能往往受到大量特征的影响。从调优过程和进行的实验中可以推断出,Boruta算法提供了更好的准确性,并且可以通过删除CICIDS 2017数据集中任何不必要或不需要的数据来识别未识别的DDoS攻击,从而使机器学习能够更好地执行,因为Boruta算法是围绕随机森林分类构建的包装器。它的功能是用结果变量捕捉数据集中所有有趣和重要的特征。Boruta将拒绝并消除重要性较低的功能。然后,在分类阶段,通过将Boruta特征分成训练数据集和测试数据集(70%和30%)并使用多个分类器继续分类过程,将Boruta特征用作该过程期间的输入。此阶段分为训练和测试两个数据集(70%和30%)来建立模型并测试Boruta特征在机器学习分类中的有效性。此外,本研究旨在衡量Boruta算法实现机器学习检测的最佳功能的能力,并可用于DDoS攻击的任何高级功能在未来对所得结果的分析表明,基于机器学习的模型和所选特征Boruta算法给出了一个令人满意的高精度的特征选择质量,从而使我们能够得到最佳的特征选择,并预测与其他研究相比,更少的时间消耗。本文件其余部分的结构如下。第2调查相关工作。第3节提供了方法。第4节介绍了结果,第5节提供了限制和未来的工作,并在第6的结论。2. 相关工作本节首先介绍了拒绝服务(DOS)攻击,并解释了分布式拒绝服务(DDOS)攻击检测方法、机器学习、Boruta算法及相关前人研究对DDoS检测的比较。2.1. 攻击对网络基础设施的网络攻击有多种类型。这些攻击可以基于网络数据包、目的地和来源的机密性、完整性和可用性[21]。拒绝服务(DoS)攻击和分布式拒绝服务(DDoS)攻击是攻击者使用的一些常见攻击,因为它们是最有效的洪水网络或服务器。执行此类攻击是为了破坏、窃取或更改系统中的信息或数据。然而,受害者的机密信息无法通过这种类型的攻击窃取。用巨大的流量淹没受害者2.1.1. 拒绝服务(DoS)拒绝服务(DoS)攻击使用一台计算机和一个Internet连接来淹没目标资源或系统。这种攻击会中断网络服务,从而导致重大损失。拒绝服务攻击可以很容易地进行和控制的不熟练的威胁行为者,因为简单的步骤。有多种类型的拒绝服务攻击,如容量攻击,SYN洪水,碎片攻击,TCP状态耗尽攻击,应用层攻击和掠夺[23]。2.1.2. 分布式拒绝服务(DDoS)分布式拒绝服务(DDoS)攻击使用多个计算机系统来中断目标网络、服务或服务器的正常流量,通过使系统充斥巨大的流量。DDoS架构中有四个组件,即僵尸或僵尸程序,僵尸网络,处理程序和僵尸大师[24,25]。最初,僵尸是DDoS架构中的一个组件,它是一台被恶意软件感染的机器或计算机。实际的攻击是由僵尸通过显著增加其他机器的受害者计算机的流量来进行的僵尸程序被用作感染主机的设计。一组被攻击者接管并控制的机器人被称为僵尸网络。处理程序是控制控制僵尸组的服务器的主命令。僵尸主机将控制和处理所有的僵尸网络洪水系统。2.2. DDoS攻击检测方法2.2.1. 基于特征的方法基于签名的方法是一个依赖于人的过程。它需要几个小时的测试、创建和部署的签名。它监控并比较具有预定模式的连接或网络数据包[26],并且有效地对抗已知攻击[27]。它在处理审计数据时也是简单有效的。然而,这种方法无法检测到签名中未定义的新异常[26]。相反,签名系统需要由管理员频繁更新。2.2.2. 基于异常的方法基于异常的方法将创建正常网络,程序或系统的基线配置文件[26]。它还将有助于实现一个可以从数据中学习的系统。看不见的数据也将根据已经学习的数据提供预测这种方法有几个优点,例如能够检测未知和新的攻击(零日)[27]。所有事件检测受保护的Web服务器的故障,无论事件是否是恶意的,都是优点之一N. Farhana,A.Firdaus,M.F.Darmawan等人埃及信息学杂志24(2023)2729ðÞðÞ这种方法的阶段。此外,在不触发警报的情况下,攻击者检测可以执行的某些活动将是一个问题[26]。然而,该方法还需要针对特定web服务器进行训练,这是该方法的弱点之一,并且经训练的分类器可能无法与具有不同硬件和软件组件的其他或相同web服务器一起基于异常的类别是软计算,基于知识/认知的和机器学习。2.2.3. 软计算这种方法通过使用各种类型的软计算来识别DDoS攻击,例如模糊推理[27],人工神经网络等。这种方法主要用于已知和监督攻击[28]它使用一系列优化和处理风格,允许识别不精确和不确定性[29,30]。2.2.4. 知识型 / 基于认知该方法能够分析、检测和提取网络事件所表现出的攻击模式或系统漏洞。基于知识的方法主要有专家系统、状态转换分析、特征分析和自组织映射等。这种方法可以用来寻找受害者这种方法产生的唯一问题是它需要在任务期间进行详细分析[31]。2.2.5. 机器学习方法学习和提高组或特定任务的性能被表征为基于机器学习的方法的框架或能力程序[31]。该方法可以检测数据包大小、数据包速率、比特率等特征。该方法产生的此策略的执行可以根据新获取的数据进行更改。基于机器学习的方法可以大致分为遗传算法、贝叶斯方法、神经网络、支持向量机和模糊逻辑[32,33]。其优势之一是能够捕捉相互依赖性、适应性和灵活性[31,34]。2.3. Boruta算法Boruta算法由华沙大学的波兰研究人员Witold Rudnicki和MironKursa发明。该算法作为随机森林的包装器它的功能是用结果变量捕获数据集中所有有趣和重要的特征。相比之下,大多数传统的特征消除方法遵循最小最优方法,该方法通常依赖于在所选分类器上产生最小误差的特征的小子集,并且还遗漏了一些特征。来衡量重要的属性或特征,使用Zscore的平均下降准确度,并计算森林中树木的平均精度损失的波动。创建混合阴影特征集,以消除预测值和选择开始前的特征之间的混淆Boruta算法包括以下内容[35,36,37]:最初,数据集被扩展以创建所有自变量的副本,以便建立混合特征(N = [M,P])。这是通过随机地扰乱真实样本特征的矩阵M来完成的,以便创建P作为阴影特征。置换副本或阴影特征是通过随机洗牌消除响应变量与特征之间的相关性而形成的无序混合特征然后将混洗的副本和原件合并。然后建立随机森林分类器以计算所有特征的平均降低的准确度、Z值和重要性,其中基于z的最高值计算更重要的特征。Zmax被记录为阴影特征中的最高Z值。然后根据以下公式计算重要判断特征的结果:的结果的的Z值,哪里如果zvalue > Zmax,则特征将被认为是重复该过程,直到算法达到所有最大迭代次数,或者停止该过程,直到拒绝或确认所有2.4. 机器学习2.4.1. 无监督学习无监督学习通过使用未标记的数据来发现和分析关联和聚类问题的模式和趋势。然而,这种学习也允许模型更多地了解数据,并理解数据中的许多结构或分布。这种学习将执行更复杂的任务,因为它依赖于模型自己工作。2.4.2. 监督学习监督学习学习和使用标记的数据集来训练数据,以便准确地预测和分类结果,以获得不可预见的数据。然而,这种学习将教会模特们给出完美的结果。监督学习的两种类型是分类和回归。2.4.3. 分类该算法将准确地将测试数据集拟合到特定类型和类别中作为训练数据集,并将识别每个实体,以获得相关和准确的结果。因此,支持向量机(SVM),决策树,随机森林,线性分类器和k-最近邻是常见的分类算法。2.4.4. 回归该算法用于理解和识别自变量与因变量之间的关系各种类型的回归算法包括多项式回归、逻辑回归和线性回归。在下文中,我们简要描述了我们的实验中使用的算法。2.4.5. 随机森林随机森林是机器学习中最著名的分类模型。该分类器具有大量的决策树(DT),其由两种类型的节点-子节点和父节点组成。该分类器由Adele Cutler和Leo Brei-man开发,他们结合决策树来预测新的未标记数据[34,38]。Scikit-learn通过使用Gini Importance计算节点的重要性来为每个决策树实现。这里假设两个子节点(二叉树)nij<$wjCj-wleft jCleftj-wright jCrightj●●●●●N. Farhana,A.Firdaus,M.F.Darmawan等人埃及信息学杂志24(2023)2730●i¼P●f/Pj公式1使用Scikit-Learn中的基尼系数计算节点重要性。● ni sub(j)=节点j● w sub(j)=到达节点j● C sub(j)=节点j的杂质值● left(j)=从节点j● right(j)=从节点j● sub()被用作Medium中不可用的下标j: nodejsplitsonfeatureiniiPk2所有节点公式2计算特征的重要性。● fi sub(i)=特征i● ni sub(j)=节点j然后,这些可以通过将其除以所有特征重要性值的总和来归一化为0和1之间的值:诺姆菲菲j2所有功能公式3计算归一化特征的重要性。最后一个特征重要性,在随机森林级别,是它在所有树上的平均值。计算每棵树上要素重要性值的总和,然后除以总数树木:T =创建根节点和带有splitting属性的标签T =为每个分割谓词和标签将弧添加到根节点;对于每个弧,D =通过将分割谓词应用于D而创建的数据库;如果停止点到达该路径,则T '=创建叶节点●并标记适当的类别;●否则2.4.7. 多层感知器神经网络是一组模仿人脑来识别模式的算法。MLP是神经网络的一种实现[41]。它可以用来解决机器学习中困难而复杂的任务。有三个层可以运行数据,例如输入层,隐藏层和输出层。多层感知器利用反向传播或监督学习技术来训练网络[44]。MLP是一种可以区分不可线性分离的数据的算法。它由多个感知器组成,具有接收信号的输入层。隐藏层是MLP的真正计算引擎,而输出层对输入进行预测或决策。MLP利用称为反向传播的监督学习技术进行训练。它将权重和偏差与误差联系起来,以便可以通过多种方式进行测量。对于要更新的神经元的权重,它使用这个等式[45]:weight <$1/4 weight <$1/2学习率ω1expected-predictedω1/2联系我们j2所有功能不公式5神经元权重的计算前馈神经网络的补充,多层感知器(MLP)。输入层、输出层和隐藏层是三种不同类型的层,它们对mak有贡献公式4计算特征i的重要性随机森林模型中的所有树RFI sub(i)=从随机森林模型中的所有树计算的特征i的重要性● normfi sub(ij)=树j中i的归一化特征重要性● T =树木2.4.6. J48决策树在WEKA中生成,例如,ID3(迭代二分器3),它是通过使用一组训练数据[39,40]构建的。使用C4.5算法构建决策树将J48作为一个分类器。该分类器除了具有准确的预测能力外,还具有解释模式的能力.它可以很容易地处理缺失值,估计错误率,修剪,并从树中生成规则。然而,它具有数值属性,并且在决策树的归纳中具有复杂性[41]。这个分类器可以处理离散和连续属性[42]。决策树的内部节点表示不同的属性,而节点之间的分支表示这些属性在观察到的样本中可能具有的值。终端节点表示依赖变量的最终值(分类)[43]。输入.训练数据集= D。输出.决策树= T。DTBUILD(*D).●T =u;把整个系统连接起来。图1示出了多层三极管的互连层、输入层、可能具有多于一层的隐藏层以及输出层。输入层包含将信息发送到隐藏层的输入神经元。隐藏层的数据将被发送到输出层。每个神经元都有加权输入,称为突触,这些参数将神经网络转换为参数化系统、激活函数和输出。为了从神经元获得一个输出,由输入的加权和产生的激活信号将被传递到激活函数。一个优点Fig. 1.三层MLP方案。●●●●P●N. Farhana,A.Firdaus,M.F.Darmawan等人埃及信息学杂志24(2023)2731j/jii 1yi¼1iMLP的最大优点在于它最小化一个或多个目标变量的预测误差。MLP算法适用于映射和回归。它还能够推广,其中未知模式被分类为共享相同特征的已知模式[44]。即使它的神经元和互连的一个重要部分失败了,它仍然可以工作,并在损伤后重新学习。它的缺点是在训练过程中,不能保证停止时间。此时,如果用户将隐藏神经元的数量设置为低值,则模型可能变得欠拟合,而如果设置为高值,则模型可能过拟合。2.4.8. 朴素贝叶斯另一种可以使用的分类方法是朴素贝叶斯方法,也称为多标签问题。该方法可用于连续和离散属性。这种分类方法用于学习模型的条件类的非线性和多标签问题[38,34]。它对数据集中的大数据有效。贝叶斯定理发现在给定另一事件已经发生的概率的情况下,对一个正在发生的事件的描述。下面是将攻击流量与正常流量分开的朴素贝叶斯方程[46]。iXQNPXjCP c公式6朴素贝叶斯公式。其中X =(x1,x2,.. . .,X N)表示特征向量,并且j = 1,2,.. . ,N表示可能的类标签。用于学习分类器的训练阶段包括估计条件概率P(xj | ci)和先验概率P(ci)。这里,P(ci)是通过对属于类ci的训练示例进行计数,然后将所得计数除以训练集的大小来估计的要构建一个分类器,需要找到一组给定的输入对于类变量y的所有可能值的概率,然后选择具有最大概率的输出。这在数学上可以表示为:y<$argmaxPyYn PXjy等式7等式分类规则。我们已经解释了多种机器学习算法(J48,随机森林,朴素贝叶斯和多层感知器)。然而,在机器学习中,为了构建稳定的机器学习模型,选择特征是至关重要的。过多的特征会增加数据集的维度、不相关的数据、时间、测试费用,最重要的是,降低检测准确性[11,47]。因此,在本研究中,我们采用Boruta演算法进行特徴选取演算法。2.5. DDoS检测表1将本研究与之前采用不同方法进行特征选择的DDoS研究进行了比较。比较表明,本文是目前唯一一个研究Boruta算法在特征选择方面的方法,并探讨了其在机器学习检测中的性能。下一节将详细介绍这一办法的方法3. 方法为了研究Boruta算法在选择特征方面的有效性,我们应用了多个机器学习分类器(J48,表1以前的DDoS研究比较功能选择。引用年特征选择方法[18个国家]2022Spark集群[19个]2020Spark Streaming[6]美国2011信息增益与卡方检验[17个]2010主成分分析(PCA)本研究Boruta算法随机森林,朴素贝叶斯和多层感知器)来分类DDoS和正常活动。步骤如下:3.1. 阶段1:需求规划图2说明了我们的方法的工作流程。本阶段回顾了前人研究中DDoS攻击检测的方法和算法。其次比较了每种方法的优缺点,从而发现研究的空白,可以应用于识别实施中的新产出。这对于更准确地检测DDoS攻击至关重要。Boruta算法建议在这项研究中作为一个合适的方法,以实现在识别相关功能的准确性。为了评估有效性,从Boruta算法中选择的特征,使用了几个分类器(J48、随机森林、朴素贝叶斯和多层感知器)。3.2. 第2阶段:研究实施和方法开发图3展示了从数据收集、数据清理、特征选择和分类开始的研究实现。3.2.1. 数据收集在第二阶段,[48]。这是一个新的IDS数据集,用于网络安全和入侵检测目的。该数据集由新不伦瑞克大学提供,包含79个特征和225,745个实例,以及两个类别标签,包括良性和DDoS攻击流量。该数据集还包含工作时间内的网络流量。它有八个CSV文件,将所有功能和实例分隔为行和列。数据采集于2017年7月3日(星期一)上午9时开始,下午5时结束。2017年7月7日(星期五),共五天。在此期间,发起了几种类型的攻击,例如,DDoS,Infiltration DoS,Heartbleed,WebAttack,Brute Force SSH,Infiltration,Botnet攻击和Brute ForceFTP。然而,这项研究只使用星期五下午(03:56 p.m.)。至下午4时16分)包含DDoS LOIT流量的数据集,用于深度分析流量。表2突出显示了使用低轨道的数据集样本Ion Cannon(LOIC)是一种DDoS攻击工具。这是通过向目标服务器发送HTTP、UDP和TCP请求来实现的[49]。一旦我们确定了确切的数据集,接下来的步骤就是数据清理过程。3.2.2. 数据清洗需要此过程来检查和消除所有NAS输入以及数据集中的零值。所有的原始数据都被转换为持久化数据,以便于分析,从而防止机器学习中的性能差。如果数据集没有中断,处理时间将加快。因此,所有不必要的数据都将使用RStudio从数据集中删除。图4列出了总共四行(行6797,14740,15048和209729),其中包含不必要的数据,因此数据集中的初始行225,745变为225,741(图4)。一旦我们获得了干净的数据集,下一个阶段将实现Boruta算法进行特征选择(图1)。 5)。FN. Farhana,A.Firdaus,M.F.Darmawan等人埃及信息学杂志24(2023)2732图二. 工作流的体系结构图三.研究实施。表2CICIDS2017数据集的流量说明日标签星期一良性(正常)星期二暴力,SFTP和SSH周三DoS和Heartbleed攻击Slowloris,Slowhttptest,绿巨人,和黄金眼星期四暴力,XSS和SQL注入星期五DDoS攻击,僵尸网络ARES,Portscan3.2.3. 特征选择该阶段是手动或自动选择有助于预测变量或输出的那些特征的过程。任何不相关数据的存在都可能降低模型的准确性。三种类型的功能选择:过滤器,包装器和嵌入式。本研究使用Boruta算法进行特征选择。该算法是围绕随机森林分类构建的包装器见图4。 需要删除的行列表。图五. 消除过程后的行数。N. Farhana,A.Firdaus,M.F.Darmawan等人埃及信息学杂志24(2023)2733见图6。 前13次迭代的结果。见图7。 前31次迭代的结果。见图8。99次迭代的结果。表3Boruta方法结果总结。相确认重要确认不重要属性正在进行中迭代需时间第1阶段60个属性12个属性6属性1355 mins2nd Phase62个属性0属性4属性312小时最后阶段64个属性14个属性0属性996.408809 h是的。它的功能是用结果变量捕获数据集中所有有趣和重要的本研究提出使用双重特征选择来尽可能减少相关特征,以提高机器学习在检测网络流量中的DDoS攻击时的有效性在特征选择的第一层中,Boruta方法充当了使用RStudio在数据集中选择最佳特征的主要角色。Boruta是一个包装器算法,它可以删除CICIDS2017数据集中任何不必要或不需要的数据,从而允许机器学习更好地执行。Boruta将拒绝并消除重要性较低的功能。图6显示,在前13次迭代中,在55分钟这让在迭代中运行的12个属性。 经过31次迭代(图7),结果显示两个属性得到确认,两个小时内保留了四个属性 图 8、99岁以后的itera-N. Farhana,A.Firdaus,M.F.Darmawan等人埃及信息学杂志24(2023)2734见图9。 Boruta方法结果图。见图10。 Boruta方法结果图。结果表明,64个属性是重要的,14个属性是不重要的,接下来的六个小时,博鲁塔需要计算。表3列出了不同迭代中Boruta进度的总结,而99次迭代比其他迭代花费的时间最长(6小时)。a. 每个特征的Z_score如图9和图10所示,Z_score用于测量每个特征的重要性。蓝色箱形图表示N. Farhana,A.Firdaus,M.F.Darmawan等人埃及信息学杂志24(2023)2735表4重要性特征或属性。重要属性组特征组特征Active ●Active.MinActive.Std平均值●平均数据包大小平均前向段大小平均前向段大小Bwd.IAT ●Bwd.IAT最大值Bwd.IAT.平均Bwd.IAT.最小Bwd.IAT.标准Bwd.IAT.总计Bwd.Packet● Bwd.Packet.Length.MaxBwd.Packet.Length.平均Bwd.Packet.Length.最小Bwd.Packet.Length.标准Bwd.Packet.s流量●流量计流量持续时间流量数据包% sFlowIAT ● Flow.IAT.Max流量IAT平均流量IAT最小流量IAT标准Fwd.Header● Fwd.Header.LengthFwd.Header. 长度1前向IAT ●前向IAT最大值前向IAT平均值前向IAT最小值前向IAT标准品前向IAT总计前向包●前向包长度最大前向包长度平均前向包长度最小前向包长度标准前向包s标志计数●PSH标志计数SYN.标志.计数URG.标志.计数FIN.标志.计数ACK.标志.计数怠速●最大怠速怠速。平均怠速。最小怠速。标准Init_Win_bytes● Init_Win_bytes_backward Init_Win_bytes_forward数据包长度●最大数据包长度最小数据包长度数据包长度均值数据包.长度.标准数据包.长度.方差Subflow● Subflow.Bwd.Subflow. Fwd.PacketsSubflow.Fwd. PacketsSubflow.Fwd.Packets总计●总计.后向.数据包总.FWD.数据包总.长度。的.BWD.数据包总长度。of.FWD.Packets其他●Min_seg_size_forward目的地。端口向下。向上。比率前进。PSH。标志Act_data_pkt_fwd前进。报头。长度共64个功能表5不重要的特征或属性。表6评价信息。性能定义方程描述度量不重要的属性●前向平均体积●有效最大值准确性实现正确的结果.TPTNTP● 前向平均数据包批量●前向URG标志● 前向平均散装速率●前向URG标记● Bwd. Average. Plug.Bulk ●Plug.Flag.Count真阳性(TP)率真阳性率TP正确归类为给定类别● Bwd.平均.数据包.批量●CWE.标志.计数● Bwd. Average.Bulk.Rate●ECE.Flag.Count● Bwd.PSH.Flag● Active.Mean精度(P)实例的比例对一个类来说TP联系我们更大的价值显示,优秀共14个功能召回(R)相当于TP率TP联系我们性能F-测度一种组合测度,精度和召回率计算为2 * 精度* 召回率/(精度+召回率)2PRðPþRÞ与Z_score结果的最大值、平均值和最小值对应的阴影属性。绿色和红色箱形图表示确认和拒绝属性的Z_score。下面的图分析显示,箱形图和折线图中红色的变量表示不重要的属性。意思是-而变量则以绿色的箱形图和直线表示假阳性(FP)率误报率实例错误地分类为给定类FP显示值较低,性能优异图表示重要属性。b. 每个特征的相对重要性列表表4突出显示了在RStudio中执行Boruta方法过程后检测到的重要属性列表。共有64在99次迭代之后选择特征并将其分类为重要属性,所述迭代消耗超过6小时。表5列出了在RStudio中运行Bor- uta方法进程后不重要的属性列表。经过99次迭代,总共有14个特征被归类为不重要的属性,这需要超过6个小时的运行时间。表6.N. Farhana,A.Firdaus,M.F.Darmawan等人埃及信息学杂志24(2023)2736图十一岁可视化中的重要属性(Active、Average和Bwd.IAT)图12个。可视化中的重要属性(Bwd.Packet、Flow和Flow.IAT)c. 可视化中的重要特征或属性下面的图11至图16说明了Tableau中使用可视化分析的重要功能。在图形视图中总共显示了64个功能。可视化或可视化分析在通过使用各种类型的图形视图来搜索某些特征的隐藏行为或模式方面非常出色。它通过捕获数据集中所有有趣和重要的特征来操作,以获得清晰和更好的视图。遵循Boruta算法,然后应用箱形图分析来可视化重要特征或属性的所有结果。所有图中的所有箱形图(图11至图16)均显示了显著差异和明显差距正常活动和DDoS攻击之间的区别。例如,DDoS中箱形图的颜色和离群值扩展超过良性(图12 -15)。3.2.4. 分类分类是一种有监督的学习方法,其中计算机程序将从已经给予它的数据输入中学习,然后将使用这种学习来对新的观察结果进行分类[50]。在此阶段,通过将Boruta要素分为训练数据集和测试数据集(70%和30%)并使用多分类器(J48、随机森林、朴素贝叶斯和多层)N. Farhana,A.Firdaus,M.F.Darmawan等人埃及信息学杂志24(2023)2737图13岁 可视化中的重要属性(前向报头、前向数据包和前向IAT)图14个。可视化中的重要属性(标记、计数、空闲和Ini_Win_bytes)感知器)。该阶段分为训练和测试两个数据集(分别为70%和30%),以建立模型并测试Boruta特征在机器学习分类中的有效性。4. 结果本节讨论了由多项个人评价组成的结果。绩效评估类型术语N. Farhana,A.Firdaus,M.F.Darmawan等人埃及信息学杂志24(2023)2738图15个。可视化中的重要属性(数据包、长度和子流)图十六岁可视化中的重要属性(总计和其他)图17.典型的2x2混淆矩阵。混淆矩阵或列联矩阵的性能指标是真阳性(TP)、假阳性(FP)、真阴性(TN)、假阴性(FN)、查准率、查全率和F-测度。 图图17示出了通过使用典型混淆矩阵的性能度量。TP =正确分类的阳性实例的数量。FN =错误分类的阴性数量。FP =错误分类的阳性实例的数量。TN =正确分类的负面实例的数量本节从Boruta算法的特征选择结果开始,然后是使用多个分类器(J48,随机森林,朴素贝叶斯和多层感知器)进行分类的结果。表7标记了多分类器(J 48、随机森林、朴素贝叶斯和多层感知器)在有效性方面的性能度量(准确度、F-度量、精确度和召回率)它表明所有的分类器都进行了推理-N. Farhana,A.Firdaus,M.F.Darmawan等人埃及信息学杂志24(2023)2739表7交叉验证中多个分类器的性能测量结果(准确度、F测量、精确度和召回率)(%)J48随机森林朴素贝叶斯MLP(多层感知器)精度99.984899.99397.82699.104精度10010097.899.1召回10010097.799.1F-measure10010097.799.1真阳性(TP)率10010097.799.1假阳性(FP)率0031表8随机森林的结果在不同的迭代次数、精度和时间消耗上。Maxdepth编号迭代精度时间消耗(小时)Maxdepth编号迭代精度时间消耗(小时)0[默认值]I = 100[默认值]99.9933.51052I = 10098.75440.98I = 20099.9933.5105I = 20098.7932.169I = 40099.9947.117I = 40098.78864.1765I = 60099.992410.45I = 60098.76014.73I = 80099.992418.3I = 80098.7625.7625I = 100099.992415.33I = 100098.74119.327I = 150099.992426.23I = 150098.733511.79I = 200099.991835.45I = 200098.72211.654I = 10099.91771.1786I = 10099.93043.174I = 20099.91962.854I = 20099.92973.914I = 40099.92035.61I = 40099.930411.49I = 60099.91968.7175I = 60099.93109.624I = 80099.920910.925I = 80099.931013.442I = 100099.920913.129I = 100099.931015.9575I = 150099.920924.721I = 150099.930425.019I = 200099.920923.477I = 200099.930432.0518I = 10099.96841.50710I = 10099.98041.872I = 20099.97093.055I = 20099.98043.2625I = 40099.96846.183I = 40099.98106.767I = 60099.96849.198I = 60099.98169.012I = 80099.969012.367I = 80099.980413.082I = 100099.968415.563I = 100099.980416.4286I = 150099.969021.828I = 150099.98046.585I = 200099.968431.767I = 200099.980432.572很好地,从而提高了使用Boruta作为特征选择算法时的性能测量结果随机森林(RF)的真阳性率(TPR)最高,而假阳性率(FPR)仅用朴素贝叶斯(naïvebayes)进行标记。4.1. 评估随机森林算法的调优性能随机森林算法的准确性被认为是所有分类器中最高的检测DDoS时。因此,在本节中,它被用作基础学习器。虽然它有几个参数,但只有两个会影响修剪量[12]。在随机森林中,超参数包括森林中决策树的数量,以及在分割节点时每个树所考虑的特征的数量。Rand-dom Forest的参数是用于分割训练期间学习的每个节点的变量和阈值。在本实验中,将使用number on iterations和maxdepth来调整Random Forest的性能,以发现DDoS检测准确性的进展:1. 迭代次数:这决定了集合中包含的树的数量。每次迭代产生一棵树。增加该值可以使模型更加清晰,从而提高训练数据的准确性。但是,如果设置得太高,准确率可能会降低。2. maxdepth:maxdepth是指森林中每棵树的最大深度。即使模型的深度增加,模型也会变得更
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功