采用双塔Transformer模型的APT攻击序列检测方法

汪一帆 ,  徐正国 ,  陆路希

信息工程大学学报 ›› 2025, Vol. 26 ›› Issue (02) : 231 -237.

PDF (1439KB)
信息工程大学学报 ›› 2025, Vol. 26 ›› Issue (02) : 231 -237. DOI: 10.3969/j.issn.1671-0673.2025.02.016
网络空间安全

采用双塔Transformer模型的APT攻击序列检测方法

作者信息 +

APT Attack Sequence Detection Method Based on Two-Tower Transformer Model

Author information +
文章历史 +
PDF (1472K)

摘要

现有APT检测研究多针对APT攻击部分阶段数据,缺少对完整APT攻击阶段的上下文关联分析。为解决上述挑战,结合主机侧和网络侧数据,构建包含APT完整阶段的多变量时序数据集,提出一种基于特征选择和双塔Transformer模型的APT攻击序列检测方法。首先,利用特征优选模块,筛选出重要特征子集作为输入;其次,采用双塔结构,从时间维度上捕获APT攻击序列前后时刻状态间的关联信息,从特征维度上挖掘特征变量间的隐含关系;最后,引入门控结构,连接合并双塔的权重,自适应地融合APT攻击序列在时间维度和特征维度的隐含信息,以达到提升检测性能的目的。实验结果表明,与循环神经网络(RNN)、长短时记忆网络(LSTM)和Transformer模型相比,该方法表现更好,检测准确率达到95.42%。

Abstract

The majority of APT detection studies currently in existence concentrate on data from partial APT attack phases, and contextual correlation analysis of all APT attack phases is absent. To address the above issue, a multivariate time-series dataset including all APT phases is created by combining host-side and network-side data. An APT attack sequence detection method based on feature selection and the two-tower Transformer model is proposed. Firstly, a feature optimization module is employed to select critical feature subsets as the input. Secondly, a two-tower structure is utilized to capture associated information between states at two adjacent time points of APT attack sequences from the time dimension, and to explore implicit relationships between feature variables from the feature dimension. Finally, the gate structure is introduced to connect and merge the weights of the two-tower, and the implicit information of APT attack sequence in time and feature dimensions is adaptively fused to achieve the purpose of improving the detection performance. Experimental results demonstrate that compared with recurrent neural networks (RNN), long short-term memory (LSTM) and Transformer models, superior performance is achieved by using the proposed method, with a detection accuracy of 95.42%.

Graphical abstract

关键词

APT检测 / 特征选择 / Transformer模型 / 多变量时序分析

Key words

APT detection / feature selection / Transformer model / multivariate time-series analysis

引用本文

引用格式 ▾
汪一帆,徐正国,陆路希. 采用双塔Transformer模型的APT攻击序列检测方法[J]. 信息工程大学学报, 2025, 26(02): 231-237 DOI:10.3969/j.issn.1671-0673.2025.02.016

登录浏览全文

4963

注册一个新账户 忘记密码

高级持续性威胁(Advanced Persistent Threat, APT)攻击通常被划分为5个阶段:侦察、建立立足点、横向移动、数据外泄和后续攻击或清除痕迹。目前,APT攻击检测研究多聚焦于APT攻击的部分阶段,采用的数据多来源于主机侧或网络侧一侧,完整的APT攻击涉及多个相互关联的恶意行为,前后阶段的状态相互影响[1],针对部分攻击阶段检测的研究缺少对完整APT攻击的关联分析。
循环神经网络(Recurrent Networks, RNN)能将之前时刻信息传递给当前神经元,挖掘数据间的时序性信息。随着深度学习的发展,以长短时记忆(Long Short-Term Memory, LSTM)网络为代表的RNN类模型开始应用到APT攻击序列检测领域。但传统RNN类模型存在无法并行计算、时序中过早的信息容易被丢弃、内存开销大的不足,Transformer模型具备并行计算能力,能够捕捉不同时间步长。APT攻击检测通常基于高维数据特征,当APT攻击检测是多变量时间序列检测问题时,变量与变量间同样存在关联性以及隐含联系。同时,随着数据维度不断增加,如何防止“维度灾难”和保持后续检测性能同样是挑战。
针对以上问题和研究现状,提出一种基于特征选择和双塔Transformer模型的APT攻击序列检测方法。利用DAPT2020、CICIDS2017数据集,构建包含完整APT攻击阶段的数据集;采用基于平均不纯度的特征选择算法进行特征重要度排序,结合自相关性分析和专家知识进行特征去冗余,得到重要特征集;采用双塔Transformer模型结构,学习并自适应融合时间维和特征维上的信息,挖掘APT攻击序列上下文关联信息和不同特征变量间的隐含信息,提高模型检测性能和效率。

1 相关工作

APT攻击可按照生命周期、杀伤链等不同思路进行阶段划分[2-4]。不管如何划分,完整APT攻击中每一个阶段都可能为发现攻击行为提供有价值的信息。因此,很多APT攻击检测研究聚焦于部分阶段的网络攻击。Xuan等[5]针对网络流量中IP和域的相关特征和异常行为进行APT攻击检测,后续将扩大检测范围至HTTP、TLS等其他部分。考虑到鱼叉式网络钓鱼攻击作为APT攻击中的常见技术手段,Chuan等[6]提取统一资源定位符(Uniform Resource Locator, URL)的相关特征,利用决策树和神经网络相结合的集成学习器进行分类检测。Niu等[7]认为,APT恶意软件利用HTTP与C&C服务器建立通信,会产生与用户正常上网无关的HTTP流量,因此通过分析HTTP流量的报头字段来发现与可疑APT活动相关的恶意软件流量。为分析海量网络流量,Alrehaili等[8]构建长短时记忆堆叠自编码器和长短时记忆卷积神经网络来检测DAPT2020数据集中的APT攻击迹象。也有不少学者基于主机侧日志数据进行研究。Yan等[9]从大量DNS日志数据中提取主机、域名等10个重要特征,通过无监督学习来检测APT攻击中的可疑域,形成一种APT检测框架。潘亚峰等[10]针对日志数据,设计一种基于ATT&CK的APT攻击语义规则,可从审计数据中检测网络攻击,但语义规则匹配结果是APT攻击不同阶段的局部行为。

完整的APT攻击特征存在时序性,上一状态往往与后一状态存在某种关联,例如APT攻击常利用鱼叉式网络钓鱼攻击渗透到网络中,下一步行为往往就是尝试获得登录软件系统的有效用户名和密码。因此,不少学者采用RNN类时序模型和Transformer模型作为算法模型。刘海波等[11]和董济源等[12]利用LSTM处理APT攻击序列,以解决攻击时间跨度大导致的判别器记忆缺失问题,但测试数据存在大量冗余且不包含主机侧数据,另外未考虑APT攻击中的数据泄漏阶段,导致整个APT生命周期不完整。时林等[13]构建一款分析恶意LinuxELF文件的沙箱来捕获APT攻击行为,结合网络流量数据,依据攻击时序特征构建APT攻击数据集,利用LSTM进行训练检测。朱光明等[14]对已有攻击上下文的分析,基于已经检测到的攻击序列,利用Transformer模型对后续攻击趋势进行预测。不足之处是传统的Transformer模型在处理多变量时序时,未考虑到多变量间的相互关系。

通过以上相关工作发现,目前研究存在一些挑战。1)检测APT攻击通常基于高维数据特征,计算和存储成本始终有限,如何去除冗余特征、选择更少的特征进行针对性的攻击检测显得尤为重要;2)APT攻击具有阶段性,前后阶段状态存在关联性,研究仅通过APT攻击的部分阶段的单侧数据(主机侧或网络侧),难以完整刻画攻击特征,缺少对完整APT攻击阶段的关联分析;3)当APT攻击序列为多变量时序时,基于传统Transformer的APT检测模型未能有效捕捉到多变量间的隐含关系,并没有将其与时间维度上的信息融合。

2 双塔Transformer模型结构

2.1 整体流程

以DAPT2020、CICIDS2017数据集为数据基础,通过CICFlowMeter工具提取78维流量统计特征,利用基于平均不纯度的特征选择算法进行特征重要性排序,借助专家知识和自相关性分析进行特征筛选,将不同攻击手段划分为不同APT攻击阶段,构建APT攻击序列集,改进Transformer模型进行分类检测,判定输入序列是否为APT攻击序列。整体框架如图1所示。

2.2 特征重要度排序

通过计算随机森林算法中多棵分类回归树(Classification and Regression Tree, CART)中各节点的不纯度减少量来进行特征重要度排序。随机森林算法的基学习器是CART决策树,决策树算法的核心是使用不纯度作为选择分类属性的指标,而CART决策树采用基尼指数作为不纯度的评判依据。基尼指数是对不确定性的衡量,可表示为

G(Y)=k=1Kpk(1-pk)=1-k=1Kpk2

式中:G(Y)表示从数据集Y中随机选取两个样本属于不同类别的概率;K表示特征样本的类别数目;pk表示类别k所占的比例。比例越平均,基尼指数越小,样本越杂乱,不纯度越低,越容易被归类到其他类别。CART决策树分支时会遍历当前节点样本集合对应的所有特征和取值,根据特征F是否为a,将样本集合Y分支为Y'Y,可表示为

D(YF=a)=G(Y)-Y'YG(Y')-Y'YG(Y)

式中,D(YF=a)表示特征Fa时,计算节点分支前后的不纯度减少值。计算特征F在每个节点所有取值下的不纯度减少量,取平均值作为该特征在一棵决策树中的平均不纯度减少值,可表示为

G˜(F=a)=1ni=1nD(YiF=a)

式中:G˜(F=a)表示特征Fa时的平均不纯度减少值;n表示决策树的父节点个数;Yi表示第i个节点中的样本。计算得到的平均不纯度减少值越大,特征对模型就越重要。

2.3 分类检测模型

根据APT攻击序列数据特点,将Liu等[15]的Gated Transformer模型应用到APT检测领域,对经过特征优选模块后的APT攻击序列和非APT攻击序列进行分类。分类检测模块分为输入部分、第1编码部分、第2编码部分、输出部分,如图2所示。

2.3.1 输入部分

本文研究的是多变量时序分类问题,模型的输入是序列长度为n、特征数为d的APT攻击序列和非APT攻击序列。每个样本点代表一个时刻的状态,每一时刻状态由d维流量特征刻画,每条序列在模型中是dn列的向量矩阵X

基于注意力机制的模型在提取当前时刻状态的信息时,能够考虑到序列中所有时刻状态对其影响,但无法获取序列上每个时刻状态的顺序信息。因此,引入位置编码结构单独计算位置信息,可表示为:

PE(p, 2i)=sin(p10 000-2idmodel)
PE(p, 2i+1)=cos(p10 000-2idmodel)

式中:p表示当前时刻状态在整个序列中的位置顺序;2i和(2i+1)表示奇偶性;i表示当前时刻状态向量的第i维特征;dmodel表示当前时刻状态的特征维数。

输入的向量矩阵X通过位置编码后,得到位置信息向量矩阵PPE。两者相加,输入的向量矩阵X便被赋予位置信息。新的向量矩阵通过第1编码部分便能挖掘APT攻击序列的上下文关联信息。

2.3.2 编码部分

双塔结构为两个并行的编码块:第1编码部分从时间维上挖掘APT攻击序列的上下时刻关联信息;第2编码部分从特征维上挖掘流量特征与特征间的隐含关系。两者结构相同,均由多头注意力层、残差连接及归一化层、前馈层组成。但两者的输入不同,将APT攻击序列和非APT攻击序列融合位置信息得到的向量矩阵即为前者的输入,将APT攻击序列和非APT攻击序列的通道和时间轴进行调换得到的向量矩阵即为后者的输入。

第1编码部分。为挖掘APT攻击序列在时间维上的信息,采用多头注意力层捕捉APT攻击序列在不同时刻状态的依赖关系,利用前馈层加强特征提取,并使用残差连接防止神经网络训练退化问题,进行层归一化操作,加快模型训练速度,提高训练稳定性。

第2编码部分。本文APT攻击序列与非APT攻击序列为多变量时间序列。通过该编码部分,捕获APT攻击序列在特征维上的信息。由于变量间的顺序位置不存在关系,切换变量间的顺序,不会改变APT攻击序列的本质,因此该结构的输入不需要经过位置编码模块来融合位置信息。

多头注意力层。多头注意力层由N个注意力机制组成,如图3所示[16]。将输入X分成N部分放入N个自注意力机制,得到加权后的特征矩阵Zi,i{1,2,,N},再将NZi按列合并,并经过一个全连接层,得到一个大的特征矩阵Z作为输出。

自注意力机制输入由向量矩阵QKV组成,分别由嵌入向量X乘以3个不同的权值矩阵WQWKWV得到。自注意力机制计算公式可表示为

attentionQ,K,V=softmaxQKT1dkV

式中:dk表示QK矩阵的列数,即向量维度;Q矩阵和K矩阵内积得到相关性分数;为防止特征维数增大造成影响,将相关性分数除以dk的平方根,起到一个缩放作用;softmax函数起到归一化作用,得到注意力分布,再乘以V,按权重分配得到注意力分数,即为自注意力机制的输出。

2.3.3 输出部分

门控机制能够自适应地为双塔结构提取到的特征赋予权重,并且选择性融合权重,该机制的核心公式可表示为:

h=Wconcat(X1,X2)+b
g1, g2=softmax(h)
X=concat(X1g1,X2g2)

式中:concat(X1,X2)表示对特征X1X2进行融合,映射得到向量hb表示偏置项;g1g2表示将h作为softmax函数的输入得到的权重;将权重值分别与特征X1X2进行融合,最终得到选择性融合权重的特征。最后,将门控机制得到的融合特征X通过线性层和softmax层,得到检测分类结果。

3 实验

3.1 数据集

完整APT攻击过程覆盖主机侧和网络侧,经典的入侵检测数据集在外部端点捕获攻击流量,将其应用到APT检测具有局限性。Myneni等[17]构建具有APT攻击行为特征的DAPT2020数据集,其涵盖攻击途径全面,包括公网到私网接口和内部专网上的流量。在所有网络接口收集pcap文件数据,从各主机收集日志数据,收集的主机日志包括系统事件日志、MySQL访问日志、DNS日志等。Sharafaldin等[18]对自1998年以来的11个入侵检测数据集进行评估,发现包括KDDCUP99、NSLKDD在内的大多数据集已经过时,所以构建包含端口扫描、SQL注入等常见攻击类型的CICIDS2017数据集。数据集样本类型数目分布情况如表1所示。利用CICIDS2017数据集中的正常样本、端口扫描行为样本和SQL注入行为样本补充实验数据。

3.2 数据处理

3.2.1 特征提取及数据预处理

通过使用CICFlowMeter工具解析DAPT2020和CICIDS2017数据集的原始流量数据,从TCP和UDP流量中提取包括数据包平均大小、数据包长度最大值等在内的78维特征。

对每一维数据特征中的缺失值和无穷值采用单变量插补法,使用全部样本的均值对其进行填充。为消除指标之间的量纲影响,满足数据指标之间的可比性,对各实验数据分别进行线性归一化处理,并将数据值映射到[0,1]之间,其公式可表示为

ki'=ki-min(k)max(k)-min(k)

式中:k表示特征向量;ki表示k中的一个元素值;ki'表示缩放后的元素值。

3.2.2 特征优选

利用随机森林决策树分支前后的基尼指数平均减少量作为排序指标,将特征提取模块得到的全部特征进行重要度排序;再基于特征相关性分析,筛选冗余特征,保留有助于检测APT攻击的特征;最后挑选前60维特征,构成重要统计特征集。

3.2.3 构建APT攻击序列

为完整刻画APT攻击行为特征,结合ATT&CK模型、DAPT2020及CICIDS2017数据集情况,梳理经典APT攻击手法,参考以往文献,将APT攻击分为侦察、建立立足点、横向移动、数据外泄4个阶段并,并将实验中的攻击样本进行归类,如表2所示。

真实的APT攻击具有多阶段性和时序性,其在各攻击阶段间存在不同的时间间隔。随机变更各攻击阶段中的攻击手段,随机变更攻击手段标签中的不同样本,并且在各攻击阶段间随机插入随机数量的正常样本和攻击样本,构建包含8 000条不同的APT攻击序列,保证数据多样性。

3.2.4 构建非攻击序列

非攻击序列共两种构建方式:1)序列中全部填充正常样本,随机变更不同的正常样本;2)序列中填充部分APT攻击阶段,代表攻击存在中止或失败的情况。只有完成了全部APT攻击阶段才认定为APT攻击。

3.3 数据划分

将特征优选模块得到的数据输入APT攻击序列构建模块,得到包含APT攻击序列和非APT攻击序列的数据集,时间序列总数为16 000条,每条时间序列的样本点个数为40个,每个样本点的特征维数为60维,样本点总数为640 000个,设置APT攻击序列数目与非APT攻击序列数目比例为1∶1,训练样本与测试样本数比为7∶3。

3.4 评价指标

APT攻击序列检测是二分类问题,将正常样本序列作为负类(用0表示),将APT攻击样本序列作为正类(用1表示)。准确率、精确率、召回率和F1值是二分类问题较为常用的衡量指标。

3.5 实验环境

实验操作系统为Windows Server 2012 R2,处理器为Intel Xeon Platinum 8268,内存为256 GB,GPU为NVIDIA Tesla V100 PCIE 32 GB,编程语言为Python 3.8,学习框架为PyTorch 1.8.1。

3.6 检测效果实验及对比分析

3.6.1 实验步骤

数据预处理后,每组实验数据按照7∶3比例分为训练集和测试集,使用双塔Transformer模型进行对比实验,确定最优的批量大小、学习率、训练轮数。随后,使用不同分类模型进行检测任务训练和测试,分类器模型分别选用RNN、LSTM、双向长短时记忆网络(Bidirectional LSTM, BiLSTM)、门控循环单元(Gated Recurrent Unit, GRU)、Transformer、双塔Transformer,进行多组对照实验,每组实验均重复10次,评价指标取均值。最后,进行消融实验,研究模型中不同模块对检测性能的影响。

3.6.2 模型训练与优化

采用双塔Transformer模型作为分类器,设置训练批量大小为8,学习率为0.000 1,训练轮数为500,丢弃率为0.4,损失函数为MSELoss。此时,得到准确率为96.67%,精确率为93.46%,召回率为88.5%,F1值为90.91%。合适的批量大小既能避免内存溢出,也可充分利用GPU的并行计算能力。不同批量大小设置下的检测效果如图4所示。

随机梯度下降算法等传统优化算法,需要研究者根据经验或者试错来手动选择合适的学习率。实验采用Adagrad算法,通过累计梯度的平方和来调整学习率,使模型可以更好地处理梯度较小、学习速度较慢的稀疏参数,并且能更好地处理非凸函数中的局部极小值,避免陷入局部最优解。不同学习率设置下的检测效果如图5所示。

不同训练轮数下的训练损失值变化曲线如图6所示。当训练轮数为200时,训练损失尚未收敛,模型仍在优化过程中;当训练轮数达到350后,训练损失值基本收敛。因此,后续训练过程将训练轮数设置为350。

通过参数优化工作,在批量大小为128、学习率为0.000 1、训练轮数为350、丢弃率为0.4时,取得最终的评价指标:准确率为95.42%,精确率为94.69%,召回率为95.54%,F1值为95.11%。

3.6.3 对比实验

将双塔Transformer模型与基于RNN、LSTM、BiLSTM、GRU、Transformer的APT检测模型进行对比。实验结果如表3所示。6个时序处理模型的检测F1值均在70%以上,本文模型检测性能最好,F1值为95.11%,检测时长优于RNN等循环神经网络,略长于传统Transformer模型。

3.6.4 消融实验

为验证本文模型中新增模块的有效性,设置4组模型进行对比。模型1:取消模型在时间步长维度上的编码器结构;模型2:取消模型在变量特征维度上的编码器结构;模型3:取消门控结构;模型4:取消特征优选模块。

实验结果如表4所示。双塔Transformer模型的F1值比变体模型中的最好性能高出1.18个百分点。模型2优于模型1,说明从时间维上提取的信息对检测起关键作用,变量与变量间的隐藏信息对分类检测起到补充作用;双塔Transformer模型优于模型3,说明门控机制有效地融合了双塔结构提取出来的信息;双塔Transformer模型优于模型4且运行时间低,说明特征优选模块过滤掉不必要的冗余特征。

4 结束语

为提高APT攻击检测性能,提出一种基于特征选择和双塔Transformer模型的APT攻击序列检测方法。构建包含完整APT攻击阶段的APT攻击序列和非APT攻击序列,利用基于平均不纯度的特征选择算法进行特征重要性排序;结合相关性分析和专家知识进行特征去冗余,得到重要特征集;加强对完整APT攻击序列各个阶段的关联分析,挖掘APT攻击序列中特征与特征间的隐含关系。对比实验结果表明,该方法表现优于RNN、LSTM和Transformer等模型,达到了提高APT攻击序列检测性能和效率的目的。

参考文献

[1]

ALSHAMRANI AMYNENI SCHOWDHARY A, et al. A survey on advanced persistent threats: techniques, solutions, challenges, and research opportunities[J]. IEEE Communications Surveys & Tutorials201921(2):1851-1877.

[2]

Consulting Mandiant. Cyber attack lifestyle[EB/OL]. [2024-02-10].

[3]

HUTCHINS ECLOPPERT MAMIN R. Intelligence-driven computer network defense informed by analysis of adversary campaigns and intrusion kill chains[J]. Leading Issues in Information Warfare & Security Research20111(1):No.80.

[4]

The MITRE Corporation. ATT&CK[EB/OL]. [2024-02-10].

[5]

XUAN C D. Detecting APT attacks based on network traffic using machine learning[J]. Journal of Web Engineering202120(1):171-190.

[6]

CHUAN B L JSINGH M MSHARIFF A R M. APTGuard: advanced persistent threat (APT) detections and predictions using Android smartphone[C]∥Proceedings of the Fifth International Conference on Computational Science and Technology 2018. Singapore: Springer, 2019:545-555.

[7]

NIU W NXIE JZHANG X S, et al. HTTP-based APT malware infection detection using URL correlation analysis[J]. Security and Communication Networks20212021(1):No.66533386.

[8]

ALREHAILI MALSHAMRANI AESHMAWI A. A hybrid deep learning approach for advanced persistent threat attack detection[C]∥Proceedings of the 5th International Conference on Future Networks & Distributed Systems. New York, USA: ACM, 2021:78-86.

[9]

YAN G HLI QGUO D, et al. AULD: large scale suspicious DNS activities detection via unsupervised learning in advanced persistent threats[J]. Sensors201919(14):3180.

[10]

潘亚峰,周天阳,朱俊虎,基于ATT&CK的APT攻击语义规则构建[J].信息安全学报20216(3):77-90.

[11]

刘海波,武天博,沈晶,基于GAN-LSTM的APT攻击检测[J].计算机科学202047(1):281-286.

[12]

董济源.基于GAN的APT攻击序列的生成与检测方法研究[D].哈尔滨:哈尔滨工程大学,2020:1-45.

[13]

时林,时绍森,文伟平.基于LSTM的Linux系统下APT攻击检测研究[J].信息安全研究20228(8):736-750.

[14]

朱光明,卢梓杰,冯家伟,基于攻击上下文分析的多阶段攻击趋势预测[J].计算机技术与发展202333(7):104-110.

[15]

LIU M HREN S QMA S Y, et al. Gated transformer networks for multivariate time series classification[DB/OL]. (2021-03-26)[2024-02-10].

[16]

VASWANI ASHAZEER NPARMAR N, et al. Attention is all you need[C]∥Proceedings of the 31st International Conference on Neural Information Processing Systems. Red Hook, USA: Curran Associates Inc., 2017: 6000-6010.

[17]

MYNENI SCHOWDHARY ASABUR A, et al. DAPT 2020-constructing a benchmark dataset for advanced persistent threats[C]∥Proceedings of the International Workshop on Deployable Machine Learning for Security Defense. Cham, Switzerland: Springer, 2020:138-163.

[18]

SHARAFALDIN ILASHKARI A HGHORBANI A A. Toward generating a new intrusion detection dataset and intrusion traffic characterization[C]∥Proceedings of the 4th International Conference on Information Systems Security and Privacy. Cham, Switzerland: Springer, 2018:108- 116.

AI Summary AI Mindmap
PDF (1439KB)

507

访问

0

被引

详细

导航
相关文章

AI思维导图

/