大家读完觉得有帮助记得及时关注和点赞!!!
摘要
高级持续性威胁(APT)代表了一种复杂且持久的网络安全挑战,其特点是隐秘的、多阶段的和有针对性的攻击,旨在长期破坏信息系统。开发一种有效的入侵检测系统(IDS),能够在不同阶段检测APT,依赖于选择网络流量特征。然而,并非所有这些特征都与APT的各个阶段直接相关。一些网络流量特征可能与识别恶意活动无关或相关性有限。因此,仔细选择和分析最相关的特征以提高IDS的性能非常重要。这项工作提出了一种特征选择和分类模型,该模型集成了两种突出的机器学习算法:SHapley Additive exPlanations (SHAP) 和 Extreme Gradient Boosting (XGBoost)。其目的是开发基于选定的最少数量的影响特征的轻量级IDS,用于检测各个阶段的APT。所提出的方法还独立地指定了APT每个阶段的相关特征。在SCVIC-APT-2021数据集上的大量实验结果表明,与其它标准技术相比,我们提出的方法提高了性能。具体而言,宏平均F1分数和召回率分别达到94%和93%,同时通过仅选择77个特征中的12个特征来降低检测模型的复杂性。
关键词:入侵检测系统,高级持续性威胁,SHAP,特征选择,SCVIC-APT-2021。
1 引言
高级持续性威胁(APT)是一种多层次的网络攻击,其特点是复杂性和持续时间长 [1]。APT通常在长时间内未被检测到,同时泄露敏感数据或造成严重破坏。APT遵循一系列被称为杀伤链的阶段,攻击者必须完成每个阶段才能达到其目标。每个阶段包括一个或多个类别的威胁或攻击。到2028年,APT防护市场预计将增长到超过230亿美元,高于2024年的100亿美元。这种显著增长突显了对强大的网络安全工具的需求日益增长,这些工具用于检测APT,例如入侵检测系统(IDS)、端点保护平台(EPP)和威胁情报平台(TIP)
入侵检测系统(IDS)是一种安全工具,旨在监控网络流量,以发现任何恶意活动或违反安全策略的行为。通过仔细检查网络和系统数据,IDS会寻找可能预示潜在攻击或未经授权访问的异常模式[3]。IDS模型是使用机器学习(ML)算法开发的,这些算法使系统能够学习如何区分正常和恶意网络流量。这些算法通常被称为分类算法,因为它们将传入的数据分为不同的类别,例如“正常”或“恶意”。通过对历史流量数据进行训练,IDS可以识别指示潜在威胁的模式和异常情况,使其成为维护网络安全的重要工具[4] [5]。
为了生成能够准确检测异常的可靠IDS模型,数据集的质量和组成至关重要。一个精心策划的数据集确保IDS能够有效地识别与正常行为的偏差,从而实现更可靠的异常检测。数据集必须由一组特征组成,这些特征是作为分类算法输入的特定数据属性。这些特征可能包括网络流量或系统行为的各种特征,例如数据包大小、流量、协议类型、连接持续时间和用户活动模式。分类算法使用这些特征来学习和识别与正常操作和安全威胁相关的模式。
IDS模型的输入特征来自网络流量,通常使用像CICFlowMeter [6]这样的专用工具提取。这些工具将存储在PCAP文件(数据包捕获)中的原始网络流量转换为CSV文件。为了开发能够检测像APT这样的高级威胁的可靠IDS,最好使用具有两个重要特征的专用APT数据集来训练和评估IDS。首先,数据集应包括代表APT各个阶段的标记样本。这使研究人员能够识别和区分APT的不同阶段,这比简单地将流量分类为“正常”或“恶意”更有效。例如,数据集可以包含流量的不同APT阶段。例如,一个数据集通过训练模型来识别这些不同的阶段,不仅可以检测到攻击的存在,还可以检测到攻击的进展,从而能够对APT的每个阶段做出更有针对性和更及时的响应[7]。反过来,这有助于开发更复杂和自适应的IDS解决方案,能够有效地检测和缓解APT。其次,数据集应该更少但更多。
相关特征。虽然许多特征可以提供对网络活动的洞察,但并非所有特征都同样适用于区分正常流量和恶意流量。因此,策略性地选择最相关的特征至关重要。这不仅提高了IDS的性能,还减少了训练时间,防止了过拟合,并增强了IDS模型的整体稳健性[8]。此外,减少IDS中的特征数量可以带来更轻量级和高效的系统,尤其是在资源受限的环境中,如物联网网络。轻量级IDS op在计算资源(如内存和处理能力)最少的情况下也能有效运行。这是因为它们需要处理的数据更少,从而加快了决策速度,并降低了威胁检测的延迟。
特征选择方法主要分为两种途径:模型特定型和模型无关型。在第一种途径中,该方法与模型的内部结构紧密相连。特征的相关性或重要性由模型的结构和特定的学习算法决定。例如,线性模型(如Lasso和Ridge)中的系数以及特征重要性评分,如随机森林(RF)[9]生成的评分。
与模型无关的方法将机器学习模型视为一个黑盒,这意味着它们可以应用于任何类型的模型。这些方法的优点是它们实现起来更快,因为它们不需要与模型交互来评估特征的重要性。然而,分析特征可以帮助使黑盒的内部运作更加透明和易于理解。可解释的人工智能(XAI)方法,特别是SHapley Additive exPlanations(SHAP),可以通过分析特征来解释机器学习模型的输出。该方法依赖于博弈论中的SHAP值。在这个框架中,每个特征都被视为一个参与者,目标是估计每个特征对预测结果的贡献。SHAP值比较了模型在有和没有每个参与者的情况下的预测,以确定它们对游戏的影响[10]。SHAP提供两个层次的解释:局部解释,确定哪些特征对特定的个体预测很重要;全局解释,提供关于模型如何进行预测以及不同特征在预测过程中相对重要性的见解[11]。
近期的IDS模型通常基于先进的机器学习技术开发,以增强其检测能力。其中一种技术是XGBoost,这是一种高效的梯度提升算法,已在入侵检测任务中表现出卓越的性能。XGBoost擅长处理大规模数据集并捕获数据中的复杂模式,使其特别适用于网络安全动态和不断发展的性质。作为一种强大的集成学习技术,XGBoost非常适合管理大型复杂数据集,例如现代计算环境中产生的大量网络流量数据。它迭代地构建一系列弱预测模型,并将它们组合成一个强预测模型。
在本研究中,我们采用SHAP(一种稳健且与模型无关的特征重要性理解方法)以及XGBoost算法,以引入一种新颖的特征选择方法。该方法能够高效地开发IDS模型,在保持模型准确性的同时,简化数据分析并降低计算成本。
我们对本研究的贡献包括:
提出一种混合特征选择系统,该系统结合了 SHAP 分析的优势部分和 XGBoost 学习方法。
确定与 APT 阶段相关的全局特征,以及与每个阶段独立相关的局部特征。
【NT0】[/NT0] 开发一种基于最少数量相关特征的轻量级入侵检测系统,用于检测高级持续性威胁(APT)的各个阶段。
本文的其余部分组织如下:在第2节中,我们概述了检测APT攻击的相关工作。第3节介绍了APT的主要特征和APT阶段的细节。第4节概述了该方法。第5节介绍了所提出的特征选择方法。第6节阐述了实验设置和数据预处理。第7节展示并讨论了我们的研究结果,重点介绍了主要发现;第8节总结了我们研究的主要结论和贡献。
2 相关工作
在本节中,我们将概述当前与APT检测相关的研究,重点介绍其方法和ML模型。
Joloudari等人在[12]中提出了一种具有六层的深度学习模型,用于从神经网络的隐藏层中提取和选择APT特征。该模型与C5.0决策树和贝叶斯分类模型进行了比较,使用了NSL-KDD数据集——KDD-CUP的增强版本,其中删除了重复记录并增加了少数样本——进行评估[13]。尽管所提出的模型表现出最高的准确率(98.85%)和最低的假阳性率(1.13%),使其成为首选,但它依赖于NSL-KDD数据集,该数据集可能无法完全捕捉到真实世界APT攻击的复杂性,这些攻击通常涉及更复杂的多阶段技术。
在[14]年,Shang等人提出了一种模型,通过分析APT攻击与C&C服务器之间通信通道中的网络流特征来检测未知的APT,攻击者使用该服务器来控制目标网络中受损的系统。本研究采用了两个深度神经网络:一个长短期记忆(LSTM)网络,用于提取数据包级别的时间序列特征;一个卷积神经网络(CNN),用于提取基于流的特征。然后,使用主成分分析(PCA)降维方法将这些特征组合并减少。在最后一步,使用不同的分类器来检测未知APT攻击的C&C通道。虽然该研究实现了96%的F1分数,但它没有专门检测APT生命周期的各个阶段。此外,由于结合了三种不同的模型进行特征选择,该模型的复杂性有所增加。
Martín Liras等人在[15]中提出了一种方法,用于识别能够区分APT相关恶意软件与非APT恶意软件可执行文件的最具区分性的特征。他们建议使用来自静态、动态和网络相关分析的特征来实现这一目标。该研究成功地使用三种不同的特征选择方法(方差、χ2统计检验和基于树的估计器)识别了与APT攻击相关的1941个特征中的238个。使用不同的机器学习算法(包括逻辑回归、支持向量机(SVM)、K近邻(KNN)和RF)评估了具有所选特征的数据集在对APT相关恶意软件进行分类时的准确性。尽管使用RF分类器的实验取得了令人印象深刻的结果(F1分数为89%,准确率为98%),但该研究并未通过区分APT和正常流量来复制真实世界的场景。
鉴于APT攻击执行需要较长时间,Yu, Keping等[16]利用这一特性,通过分析每个阶段的时间序列,在工业物联网(IIoT)环境中进行检测。每个攻击阶段都需要不同的时间序列数据。他们使用了一种来自Transformer的双向编码器表征(BERT)模型,这是一种专门用于捕获长攻击序列和APT攻击的扩展攻击持续时间的DL模型。将BERT模型与其他三个模型进行了比较:感知器、LSTM和CNN。结果表明,BERT模型在准确性方面优于其他模型,达到了高达99%的比率。尽管该研究根据序列长度将攻击分为四个级别,但这种方法不能准确地代表APT的实际阶段。
Do Xuan, Cho 和 Dao, Mai Hoang [17] 提出了一种新颖的方法,通过利用网络流量分析结合深度学习(DL)模型来检测 APT 攻击。他们采用了诸如多层感知器(MLP)、卷积神经网络(CNN)和长短期记忆网络(LSTM)等独立的深度学习模型,这些模型被集成到一个组合的深度学习框架中,以分析和检测网络流量中的 APT 攻击。检测过程主要包括两个阶段:首先,使用 IP 地址来分析网络流量,将其转化为流。然后,采用组合的深度学习模型从这些流中提取 IP 特征。其次,使用第一阶段提取的特征,该模型将 IP 地址分类为 APT 攻击 IP 地址或正常 IP 地址。由于深度学习模型的组合,准确率在 93% 到 98% 之间。
Javed等人于[18]年开发了多个模型,包括XGBoost、RF、SVM和AdaBoost,用于检测IIoT领域的APT。KDDCup99 [21]数据集被用于评估这些模型的性能。这项研究的主要发现表明,AdaBoost方法优于其他技术,在APT检测中实现了99.9%的准确率,执行时间为0.012秒。然而,该研究没有使用包含明确APT阶段的特定APT数据集。
在[19]年,Javed等人开发了一种深度学习模型,能够实时检测集成在工业物联网(IIoT)中的信息物理系统(CPS)中隐藏的高级持续性威胁(APT)攻击。作者利用图注意力网络(GAN)来捕获攻击的行为特征。使用了两个数据集,DAPT2020 [22] 和 Edge IIoT,来评估该研究。结果表明,对于DAPT2020数据集,该模型达到了96.97%的准确率,预测时间为20.56秒。对于Edge I-IoT数据集,该模型达到了97.5%的准确率,预测时间为21.65秒。
Dinh‐Dong Dau 等人在 [20] 中为了提高 SCVIC-APT-2021 数据集中 APT 阶段的检测准确率,使用了一系列预处理步骤 [22]。这些步骤包括使用重采样、过采样、欠采样和成本敏感学习等技术来解决数据不平衡问题。他们使用一系列 ML、DL 和集成学习算法评估了处理后的数据。其中,XGBoost 达到了 95.20% 的 Macro F1-score,而 LightGBM 达到了 96.67%,表现出显著的性能。然而,该研究并未明确指出哪种预处理技术提高了检测准确率。
表1总结了所回顾的工作,包括所使用的模型、用于评估的数据集,并强调了它们的局限性。
表1:相关工作总结
先前相关研究中发现的关键问题是研究人员未使用专门为APT攻击指定的数据集。此外,APT可能具有传统入侵检测数据集中无法很好捕捉到的独特特征。使用专门针对APT场景的数据集有助于确保所提出的技术在APT检测的特定背景下有效。
另一个局限性在于,所回顾的文献没有涉及多阶段检测场景。正如引言部分所述,APT 通常涉及一系列协调的阶段。检测到攻击的阶段会显著影响目标组织所采取的缓解策略。例如,如果在早期检测到 APT,例如在初始入侵期间,组织可以专注于遏制并通过隔离受感染的系统来消除威胁。
3 APT背景
APT是一种旨在获得对目标网络或服务器的未经授权访问,并在较长时间内保持不被发现的扩展型网络攻击。为了实现这一目标,APT会经历一系列阶段,如图1所示。
图 1. APT 相位
侦察阶段:在此阶段,APT攻击者收集关于目标的信息,以供后续阶段使用。各种资源被用于此,包括关于组织规模、位置和IT基础设施的详细信息。此外,还可能收集与组织员工相关的信息,如决策者、访问级别、联系方式和社交媒体资料。此外,此外,关于组织网络的信息,如IP地址、网络拓扑和防火墙配置,也可能被收集 [21]。攻击者采用各种技术来完成此阶段,例如社会工程学,即组织的员工通过网络钓鱼邮件或电话接收恶意信息。另一种技术包括扫描目标系统以识别漏洞,而不会触发任何防御机制。
【NT0】•[/NT0] 初始渗透阶段:攻击者基于侦察阶段所识别的信息,选择进入目标系统的适当入口点。入口点包括那些最容易受到网络攻击的物联网设备,因为由于其有限的处理能力,尚未实施广泛的安全措施,通常运行在过时的固件上[22]。在此阶段尽早检测到APT对于最大限度地减少损害、防止后续阶段的数据泄露以及保护组织声誉和关键资产至关重要。遭受攻击的系统需要全面的安全解决方案,以应对各种策略,包括IDS、端点保护、网络分段和持续的安全监控。
【NT0】[/NT0] 横向移动阶段:在此阶段,攻击者试图扩大其存在范围,并在网络中横向移动,以入侵更多的系统和资源。主要目标是探索网络、提升权限并访问有价值的信息。在大型公司或组织中,网络环境通常包含多个域或子网。
透视阶段:在APT攻击中,攻击者通过在不同的网络段中导航来扩大他们的攻击范围,使其超出最初受损的系统。
数据渗漏阶段:此阶段涉及将数据传输到攻击者的系统,通常使用恶意软件的内置上传功能。在某些情况下,攻击者使用了诸如FTP、HTTP和HTTPS等网络协议[23]。
证据清除阶段:最后阶段包括删除日志数据和移除恶意软件,以掩盖攻击者的踪迹。
在本研究中,我们介绍了识别APT各个阶段关键特征的方法。这些已识别的特征有助于开发轻量级IDS系统,该系统可以使用最少的相关特征来检测各个阶段的APT。这使组织能够在APT生命周期的早期识别并响应威胁。早期检测使安全团队能够干预并控制攻击,防止其升级,从而可能避免重大的数据泄露或系统受损。
4 方法论
本节回顾了开发所提出的特征选择方法中使用的算法和技术。第4.1节详细阐述了机器学习算法,其中XGBoost被用作识别APT阶段的分类器。第4.2节讨论了特征选择方法,重点介绍了SHAP作为一种模型无关的方法,用于所提出的方法的开发。
4.1 XGBoost
极端梯度提升(XGBoost)是一种流行的用于回归和分类任务的机器学习算法。它基于集成学习的原理运作,通过结合多个弱学习器(通常是决策树)的预测结果。XGBoost 的核心在于其目标函数,该函数在训练过程中指导模型参数。
XGBoost在训练过程中使用特征作为分裂点来构建模型。该算法为每个特征提出候选分裂点,评估这些点,并根据提高模型预测的评估分数选择最佳分裂 [25]
减少数据集中的特征数量可以减少需要评估的潜在分裂。这种减少缩短了训练时间,因为算法可以更快地迭代数据集,并且需要更少的数据存储在内存中 [26][27]。此外,最小化特征数量有助于构建更准确的模型,因为它专注于数据中最重要的模式,从而可以防止过拟合。
XGBoost算法拥有几个关键特性,使其成为开发IDS的理想选择,在IDS中,平衡速度和准确性至关重要。其优势之一是先进的树剪枝技术,当进一步分裂不能提高模型的性能时,该技术会停止树的构建[28]。这产生了一个具有最佳深度的更高效的模型,从而减少了训练时间并提高了预测速度。此外,IDS经常面临不平衡的数据集,其中正常流量大大超过恶意活动。XGBoost通过优化其在倾斜数据分布上的性能来有效地解决这个问题,即使在不平衡的情况下,也能确保对攻击的准确识别和分类[29]。这些能力使XGBoost能够以较低的计算开销产生准确且可解释的结果,使其有别于更复杂和资源密集型的方法,如深度神经网络(DNN)。
此外,XGBoost和SHAP方法(将在下一节中解释)的结合显著地促进了更快和更准确的检测。这种集成主要归功于XGBoost的基于树的框架,该框架本身支持高效的SHAP值计算。通过利用XGBoost决策树中的二元分裂,可以快速计算SHAP值,从而对特征贡献进行清晰而有效的评估。这种树结构不仅加速了计算过程,而且增强了模型预测的可解释性,使其成为IDS中特征选择的理想选择。
4.2 特征选择技术
特征选择是识别最相关的特征子集的过程,这些特征子集可以提高机器学习的性能。这个过程降低了模型的复杂性,通过使用更少的特征进行训练来提高效率,并节约计算资源 [30]。
特征选择方法有三种:基于过滤器的、嵌入式的和基于封装器的。基于过滤器的方法根据特征的统计属性选择相关特征,而不考虑要使用的特定机器学习算法。这种方法的一个缺点是它没有考虑到特征之间的相互作用。常见的过滤方法包括相关系数 (C.C)、卡方检验和方差分析 (ANOVA)。在嵌入式方法(如 Lasso 回归 (LR))中,相关特征是在机器学习模型的训练过程中选择的。然而,这种方法本质上与所使用的特定模型相关联。第三种方法,基于封装器的方法,基于模型在各种特征子集上的性能来选择特征,使用贪婪搜索策略来找到最佳子集。尽管封装器方法在计算上可能很昂贵,但它们可以捕获特征交互并提供准确的预测。基于封装器的方法需要很高的计算成本,因为识别最佳特征子集需要训练一个机器学习模型并测量其在每个潜在子集上的性能 [31]。
一种常用的实现封装器方法的技术是序列特征选择,它可以以向前或向后的方式执行。在向前方法中,该方法以贪婪的方式迭代地将最佳新特征添加到所选特征集中,从空集开始并添加特征,直到没有观察到进一步的改进。相反,向后方法从所有特征开始,并迭代地删除最不重要的特征,直到没有取得进一步的改进[32]。
哪里:
5 提出的特征选择方法
图2阐述了所提出方法的工作流程,详细描述了开发特征选择方法的过程,该方法旨在识别对于模型进行准确预测或分类至关重要的关键特征。
图 2. 提出的方法流程
该流程首先读取数据集并对其进行预处理,以确保其为模型训练做好适当准备。接下来,进行特征分析以获得特征重要性评分,该评分用于仅选择最相关的特征。所提出的方法描述如下步骤:
步骤 1:管道的第一步包括读取用于评估所提出的方法的数据集。IDS 数据集包含从网络流量中提取的特征,例如数据包大小、流持续时间和协议类型,这些特征使用诸如 CICFlowMeter 和 NetFlow 等专用工具提取。然而,并非所有这些特征都针对机器学习进行了标准化。因此,预处理是在任何机器学习模型中使用它们的一个非常重要的步骤。预处理包括去除有偏差的特征、处理空值以及将分类特征转换为数值型。
步骤 2:在此步骤中,我们分析特征,首先训练 XGBoost 算法。模型训练完成后,创建一个解释器对象,以阐明训练模型的内部运作机制。此解释器帮助我们理解模型如何基于输入特征进行预测。然后,我们利用解释器对象上的 SHAP 方法来分析测试集,计算每个数据点的 SHAP 值,从而深入了解每个特征对模型预测的贡献。此步骤的输出是一个按降序排列的 SHAP 特征重要性得分列表。此外,此阶段的 SHAP 分析使我们能够生成信息丰富的图,从而帮助理解各个特征如何影响模型预测。
步骤 3:在此步骤中,我们使用前向选择技术确定最相关的特征,该技术用作包装器特征选择方法。然而,我们在此选择过程中不使用贪婪搜索。相反,我们从一个空的特征集开始,表示为
(𝑆𝑏𝑒𝑠𝑡),并从步骤 2 中获得的 SHAP 特征重要性评分列表中添加排名最高的特征 (j)。在添加每个特征后,我们评估模型的性能,特别是宏平均 F1 分数,表示为
(𝑓1𝑏𝑒𝑠𝑡)。我们继续迭代地添加排名靠前的特征,直到观察到模型性能没有进一步的提高。这种选择策略使我们能够避免搜索所有可能的特征子集组合,仅专注于列表中的排名靠前的特征,从而降低了选择算法的计算成本。最终,集合 (𝑆𝑏𝑒𝑠𝑡)中选择的特征代表根据宏平均 F1 分数指标产生最佳性能的特征子集。前向选择过程在算法 1 中描述。
6 实验设置
所提出的算法使用 Python 3.9 实现。该实现是在一台配备 Intel(R) Core(TM) i5-6300U CPU (2.40GHz) 和 8GB DDR4 RAM 的计算机上进行的。XGBoost 的超参数经过仔细调整,以优化模型在训练期间的性能,如表 2 所示。
6.1 实验描述
SCVIC-APT-2021数据集被用于评估所提出的方法[33]。选择此数据集对APT攻击进行建模是基于几个关键因素。它包含真实的APT攻击,并涵盖了全面的APT阶段,如表3所示,从而更准确地表示了高级攻击行为。此外,该数据集包含84个特征,这对于评估我们的方法在减少预测过程中使用的特征数量方面的有效性至关重要。此外,该数据集不仅捕获了单个APT阶段,还提供了它们相互关联的整体视图,为APT检测研究奠定了坚实的基础。
表3:每个阶段应用的攻击技术
应用了几个预处理步骤来准备用于机器学习模型的数据。首先,移除了诸如“Flow ID”、“Src IP”、“Src Port”、“Dst IP”、“Dst Port”和“Timestamp”等特定特征,以防止机器学习模型偏向于攻击检测,因为这些特征用于标记数据集中的流量。接下来,移除了所有包含空值的样本,将样本数量从315,607减少到313,003。然后,使用标签编码器方法将分类特征转换为数值。最后,将数据集分为两个集合:80%用于训练,20%用于测试,以确保模型可以在未见过的数据上进行评估。表4提供了每个类别的训练集和测试集中的样本数量。
如表4所示,该数据集存在不平衡分类问题,训练集中各类别的分布不均。这种不平衡可能导致模型偏向多数类,从而导致对该类别的预测更频繁但错误。因此,模型在少数类上的性能可能会明显更差 [32]。
为了解决这种类别不平衡问题,使用以下公式 (4) 计算数据集中每个类别 i的类别权重:
表4:每类训练和测试样本的数量
这些计算出的类别权重随后被用于设置XGBoost算法中的sample_weight参数,从而为各个样本分配不同的权重。在训练过程中,XGBoost使用这些样本权重将决策树拟合到数据集,从而更加重视来自少数类的样本。这种调整确保了模型专注于纠正对代表性不足的类别所犯的错误。每棵决策树都在加权数据集上进行训练,逐步提高模型在具有挑战性的示例上的性能[34]。
6.2 评估指标
该模型的性能使用多个指标进行评估,包括准确率(Acc)、精确率(Pre)、召回率(Rec)和 F1 分数。准确率衡量模型预测的总体正确性。精确率评估有多少阳性预测实际上是正确的,而召回率(也称为检测率)量化了被正确识别的实际阳性的比例。精确率评估有多少阳性预测是F1 分数通过将精确率和召回率结合成一个单一指标,提供了一个平衡的评估。
这些指标来源于四个基本值:真阳性 (TP) 和真阴性 (TN),分别表示模型正确预测了阳性和阴性类别;以及假阳性 (FP) 和假阴性 (FN),表示模型错误地分类了这些类别。标准指标的计算如 (5)、(6)、(7) 和 (8) [35] 所示。
我们还利用宏平均计算F1分数、召回率和精确率,以及加权平均F1分数,因为这两种方法在解决类别不平衡问题方面特别有效。宏平均独立地为每个类别计算每个指标的F1分数、召回率和精确率,然后对它们进行平均,确保所有类别都得到平等对待,而不管它们在数据集中的频率如何。相比之下,加权F1分数通过考虑每个类别中真实实例的数量来调整类别比例。总之,这些指标提供了对模型在所有类别中性能的平衡和全面的评估,突出了其在管理不平衡数据集方面的有效性和稳健性。
7 结果与讨论
本节介绍所提出的用于检测APT不同阶段的方法的结果。所提出方法的结果分为两个小节。第7.1节概述了应用所提出的特征选择方法的结果,重点关注其对数据集中所有类别的影响。在第7.2节中,我们进行了一项比较分析,以证明我们方法的有效性。首先,我们将我们的特征选择方法的结果与不同的特征选择技术进行比较。接下来,我们评估了基于所提出的特征选择方法开发的IDS的整体性能,并将其与各种基于IDS的ML技术(如随机森林(RF)、DNN和决策树(DT))进行比较,并将其与第2节中讨论的现有工作进行比较。
7.1 提出的特征选择方法的评估
在本节中,我们评估了所提出的特征选择方法的有效性,该方法利用SHAP来增强所选特征在不同阶段APT中的可解释性和相关性。通过利用SHAP,该方法识别出一个缩减的特征集,同时提供了对每个特征在检测过程中的贡献和重要性的见解。图3显示了不同阶段的SHAP值,说明了各种特征在识别它们时的重要性。这种透明性有助于我们理解每个特征对模型预测的影响。例如,像‘Idle Max和‘Idle Mean这样的特征具有较高的SHAP值,表明它们对决策具有显著影响。图中彩色条表示每个特征在各个APT阶段的重要性。SHAP值通过指示每个阶段的关键特征来促进特定阶段的分析,从而提高模型的检测能力。例如,‘FWD Init Win Bytes’在侦察阶段起着至关重要的作用。类似地,‘Idle Max’是正常流量阶段最重要的特征,而‘Packet Length Std’则是数据渗漏阶段最具影响力的特征。
图 3. 与所有 APT 阶段相关的特征重要性
为了更详细的解释,图4展示了每个APT阶段中最重要的8个特征。y轴列出了特征名称,按重要性从上到下排序,而x轴显示SHAP值。这些值通过计算每个特征在所有可能的特征联盟中的平均边际贡献来分配重要性。SHAP值可以是正的或负的,并以彩色点表示。正值表示该特征有助于预测攻击,而负值表示有助于预测正常流量。颜色代表特征值,红色表示高值,蓝色表示低值。
让我们比较“初始入侵”阶段与“正常流量”类别中两个最重要的特征。第一个特征是“Idle Max”,它指的是网络连接或通信通道已建立但未主动传输数据的最长持续时间。对于“初始入侵”阶段的“smileyface”攻击,红点主要位于零线的右侧,表明较高的空闲时间会增加模型预测攻击的可能性。相反,左侧的蓝点表明较低的空闲时间会导致非攻击预测。这反映了攻击者尽可能保持不被发现的目标。在“侦察”阶段,攻击者可能会进行低调的活动,同时收集有关目标网络的信息。在“侦察”阶段,攻击者可能会进行低调的活动“Idle Max”特征通过突出显示偏离正常行为的长时间不活动或低级别网络交互,帮助检测这些细微的活动。所有攻击都用红点表示,而“正常流量”类别用蓝点表示,表明与典型通信一致的较低值。
第二个特征“Fwd Seg Size Min”表示正向方向上的最小分段字节数。在“初始入侵”阶段,较高的值(红点)表明存在攻击流量,这通常是由于传输字符序列(例如,笑脸表情符号:))作为用户名)需要更大的分段。在“初始入侵”阶段,较高的值(红点)表明相比之下,“正常流量”用蓝点表示,其中较小的值是典型的。
为了进一步分析,图 5 深入研究了模型如何基于个体实例及其特征值生成预测。该图展示了来自两个不同类别的示例:“正常流量”和“侦察”。它突出了特定特征(例如“Idle Max”)对模型预测的影响。在“侦察”实例中,较高的“Idle Max”值促成了攻击预测,而在“正常流量”实例中,较低的值导致了非攻击预测。这突显了“Idle Max”特征在区分这两个类别中的关键作用。
图 5. 特征贡献比较 (a)“正常流量”。 (b)“侦察”。
表5展示了使用所提出的方法在数据集中每个阶段的性能指标。该模型在所有类别中均表现出高精度,尤其擅长准确识别“正常流量”,且没有任何错误。这对于减少误报并保持对模型预测的信心至关重要。这是
表5:数据集类别的性能指标
值得注意的是,该模型能够以100%的准确率区分每个类别,同时仅使用了77个特征中的12个。这种改进源于移除了不相关的特征,从而产生了更简洁和更有意义的数据表示,模型可以更有效地从中学习。此外,特征数量的减少显著降低了训练和预测的计算成本。
7.2 比较结果
为了评估基于SHAP的特征选择在开发多类分类IDS中的性能,我们将其与广泛使用的基于过滤器的特征选择方法进行比较,包括C.C、Chi2和ANOVA [28]。除了LR,这是一种嵌入式特征选择方法。使用宏平均精确率、召回率和F1分数进行比较。
如表6所示,基于SHAP的特征选择方法在所有指标上均优于过滤式和嵌入式特征选择方法。这种卓越的性能归功于SHAP能够捕获每个样本的每个特征的重要性,而其他方法仅评估特征与目标标签之间的关系。此外,SHAP通过特征交互来考虑特征相关性,评估每个特征在其他特征环境中的贡献,这使其能够捕获变量之间复杂的依赖关系和交互作用。
表6[NT0]:不同特征选择算法的比较
为了进一步评估所提出的特征选择的性能,我们在表7中展示了不同基于ML的IDS方法的性能比较。如该表所示,所提出的具有12个特征的XGBoost模型在入侵检测中表现出显著的效率和有效性。虽然其67.88秒的训练时间不是最快的,但它比使用77个特征(需要189.96秒)要快得多。更重要的是,该模型在检测性能方面表现出色,实现了100%的准确率、95%的精确率、93%的召回率和94%的F1-score。这些指标优于其他方法,包括DNN、RF和DT,尽管它们具有更快的训练或预测时间,但显示出较低的检测性能。所提出的模型在训练时间上的轻微权衡因其卓越的检测能力而得到证明,使其成为实际IDS的最佳选择,在实际IDS中,准确性和效率至关重要。
表7:不同IDS方法的性能比较
表8进一步强调了所提出的模型优于其他几个研究,这些研究使用了XGBoost作为同一数据集上的基线模型。
表 8:其他研究中使用 XGBoost 算法的压缩
通过仅选择77个特征中的12个,所提出的系统显著降低了计算复杂度,确保了其在高速度网络和资源受限环境中部署的可扩展性和实用性。这种特征选择通过关注最相关的数据来最小化计算开销,从而能够在有限的资源下实现高效检测。精简的特征集减少了数据存储需求,简化了分析过程,并提高了系统响应能力。因此,IDS实现了更快的威胁检测,使安全团队能够及时响应并有效缓解潜在的攻击。
8 结论
本研究旨在开发一种稳健且资源高效的入侵检测系统(IDS),以应对日益严峻的高级持续性威胁(APT)。该系统基于一种提出的特征选择方法构建,其中XGBoost机器学习算法与可解释人工智能(XAI)相结合,以选择最少的、具有影响力的特征集,用于检测不同阶段的APT。所提出的方法分别识别每个阶段最相关的特征。来自SCVIC-APT-2021数据集的结果突出了所提出方法的有效性,在宏平均F1分数和召回率方面均显示出显著的提高,分别达到94%和93%,同时将相关特征的数量从77个减少到仅12个。此外,该方法在不影响检测准确性的前提下,显著减少了训练和预测时间。
本研究通过引入一种新的机器学习模型,进一步推进了该领域的发展,该模型将提高对APT的检测能力,并由于特征选择而提高其可解释性,从而使网络能够抵御高级网络攻击。作为未来的工作,我们将对该方法进行多个与APT相关的数据集的实验,以进一步评估其有效性。