1.一种基于语义增强与注意力机制的APT检测方法,其特征在于,所述基于语义增强与注意力机制的APT检测方法,包括:采集并解析系统日志,根据解析后的系统日志构建溯源图;
根据溯源图优化规则对溯源图进行剪枝优化;
通过BERT模型生成溯源图中节点的属性语义特征向量表示,所述BERT模型为利用良性系统上的总结句预训练的BERT模型;
根据溯源图中的节点生成每个节点的子图,根据节点的属性语义特征向量表示利用自注意图卷积网络提取每个子图的特征矩阵,作为每个节点的节点特征向量表示;
将待检测节点的节点特征向量表示输入轻量级分类器,得到节点为异常节点的概率值,如果概率值大于预设阈值则当前节点为异常节点,否则,当前节点为良性节点。
2.根据权利要求1所述的基于语义增强与注意力机制的APT检测方法,其特征在于,还包括:构建键值数据库,其中,键为持久节点标识符,值包括自注意图卷积网络输出的节点特征向量表示以及与对应的节点关联的邻居节点集合;
如果待检测节点的节点属性与储存在键值数据库中的持久节点标识符相符,且键值数据库中存储的对应于持久节点标识符的邻居节点集合与待检测节点当前的邻居节点集合的Dice系数为1,则将键值数据库中存储的节点特征向量表示分配给待检测节点,并将键值数据库中存储的节点特征向量表示输入轻量级分类器,否则,将利用自注意图卷积网络得到的节点特征向量表示输入轻量级分类器对待检测节点进行分类,其中,Dice系数的计算公式如下:;
其中, 表示Dice系数,表示键值数据库中的邻居节点集合,表示待检测节点当前的邻居节点集合, 表示集合 和 的交集的元素数量, 和 分别表示集合和集合 的元素数量。
3.根据权利要求1所述的基于语义增强与注意力机制的APT检测方法,其特征在于,所述采集并解析系统日志,根据解析后的系统日志构建溯源图,包括:采集系统日志;
设置批处理大小P,其中P为每个日志批的系统事件数,按照时间顺序对每个日志批进行解析操作;
将解析后的系统日志转换为溯源图,所述溯源图包括节点和边,所述节点包括进程节点和对象节点,所述边带有属性标签。
4.根据权利要求3所述的基于语义增强与注意力机制的APT检测方法,其特征在于,所述根据溯源图优化规则对溯源图进行剪枝优化,包括:针对进程节点和文件节点忽略用户ID,合并多个用户之间的相似行为;
如果两个节点之间存在多条相同的边,则将多条相同的边合并为一条边,并将相同的边的条数作为合并的边的属性标签;
对于由进程节点临时创建且未与其他进程节点交互的文件之间的边进行删除;
如果进程节点指向自身,则删除指向当前进程节点的边。
5.根据权利要求1所述的基于语义增强与注意力机制的APT检测方法,其特征在于,所述通过BERT模型生成溯源图中节点的属性语义特征向量表示,所述BERT模型为利用良性系统上的总结句预训练的BERT模型,包括:结合节点及节点的一跳邻居之间的属性和因果事件生成总结句;
在良性系统日志上,通过总结句预训练BERT模型;
利用BERT模型将节点的属性编码成固定长度的属性语义特征向量表示。
6.根据权利要求3所述的基于语义增强与注意力机制的APT检测方法,其特征在于,所述根据溯源图中的节点生成每个节点的子图,根据节点的属性语义特征向量表示利用自注意图卷积网络提取每个子图的特征矩阵,作为每个节点的节点特征向量表示,包括:将属性语义特征向量表示作为节点的初始特征向量;
生成溯源图中每个节点的子图 ,其中, 表示节点 及节点 的K跳邻域节点的集合, 表示边集合;
初始化溯源图中的每个节点的初始特征向量,根据溯源图生成每个节点的子图矩阵,利用自注意图卷积网络提取每个子图的特征矩阵,作为每个子图的节点特征向量表示。
7.根据权利要求6所述的基于语义增强与注意力机制的APT检测方法,其特征在于,所述利用自注意图卷积网络提取每个子图的特征矩阵,作为每个子图的节点特征向量表示,包括:将节点的子图矩阵通过线性变换得到Query矩阵、Key矩阵和Value矩阵;
根据Query矩阵、Key矩阵和Value矩阵计算自注意力分数矩阵,计算公式如下:;
其中, 表示自注意力分数矩阵, 表示Key矩阵的维度, 表示Query矩阵, 表示Key矩阵的转置;
将节点的子图矩阵作为原始邻接矩阵,对原始邻接矩阵进行聚合构建增强邻接矩阵,用公式表示如下:;
其中, 表示基于原始邻接矩阵对子图的节点特征进行聚合得到的第 层节点特征向量表示, 是节点的初始特征向量, 是正则化的原始邻接矩阵,表示原始邻接矩阵, 是度矩阵, 表示第 层的基于原始邻接矩阵的节点特征向量表示, 是第 层的待学习权重矩阵, 表示特征聚合的次数, 表示ReLU激活函数;
通过选取自注意力分数矩阵的前r个最大值或超过阈值 的元素,构建稀疏的增强邻接矩阵,用公式表示如下:;
其中, 表示稀疏的增强邻接矩阵的第i行第j列, 表示自注意力分数矩阵第i行第j列;
对稀疏的增强邻接矩阵进行对称处理,用公式表示如下:;
其中, 表示稀疏的增强邻接矩阵的第j行第i列;
对稀疏的增强邻接矩阵进行聚合得到基于增强邻接矩阵的节点特征向量表示;
;
其中, 表示基于增强邻接矩阵对子图的节点特征进行聚合得到的第 层节点特征向量表示, 是节点的初始特征向量, 表示正则化的增强邻接矩阵, 表示增强邻接矩阵, 是度矩阵, 表示第 层的基于增强邻接矩阵的节点特征向量表示, 表示第m层的待增强待学习权重矩阵;
将基于原始邻接矩阵和增强邻接矩阵对子图的节点特征进行聚合得到的节点特征向量表示进行融合得到子图的节点特征向量表示。