1.一种溯源图级别的高级持续威胁样本自动化生成方法,其特征在于,所述溯源图级别的高级持续威胁样本自动化生成方法,包括:定义溯源图级别的高级持续威胁样本中的实体类型与关系类型,利用基于流的图生成模型产生抽象攻击图结构,所述抽象攻击图结构中的节点和边分别具有所定义的实体类型和关系类型;
利用攻击阶段划分算法,确定抽象攻击图结构中每一攻击阶段的起始进程节点,所述攻击阶段包括初始入侵、权限提升、敏感行为和目标达成;
基于各起始进程节点,将抽象攻击图结构划分为初始入侵子图、权限提升子图、敏感行为子图和目标达成子图;
根据攻击技术匹配规则识别初始入侵子图、权限提升子图、敏感行为子图和目标达成子图中的攻击技术,并基于所识别的攻击技术从攻击实例化库中获取实体名称,所述攻击实例化库存储了与每种攻击技术相关的所有实体类型对应的实体名称;
为初始入侵子图、权限提升子图、敏感行为子图和目标达成子图中,仅具有实体类型的实体填充对应的实体名称,得到自动化生成的溯源图级别的高级持续威胁样本;
所述抽象攻击图结构定义为 ,其中 为节点矩阵,
为边矩阵,为抽象攻击图结构中最大的节点数, 为实体类型数,为关系类型数,当第个节点和第 个节点由一条关系类型的索引为 的边连接时,记 ,否则记 ,, ;
其中,所述利用基于流的图生成模型产生抽象攻击图结构,包括:
抽象攻击图结构生成过程的迭代从一个空的抽象攻击图结构 开始,在第 轮迭代中,根据已有的抽象攻击图结构 预测新的节点,随后预测新的节点与所有已有节点之间的边,持续迭代直到新预测的节点与任意一个已有的节点都没有关系,或者抽象攻击图结构中节点已达到最大数目时,停止迭代,输出抽象攻击图结构;其中,在一次迭代中节点和边的预测过程如下:对于一个给定的抽象攻击图结构 ,使用去量化技术添加噪声,将离散的抽象攻击图结构 表示为连续数据;
采用关系图卷积网络学习连续数据的嵌入向量 ,并对嵌入向量进行sum‑pooling操作,得到整个抽象攻击图结构 的嵌入向量 ;
利用两个多层感知机模型,针对嵌入向量 ,分别产生预测节点分布均值的神经网络参数和预测节点分布方差的神经网络参数,利用分别赋予了预测节点分布均值的神经网络参数和预测节点分布方差的神经网络参数的神经网络,针对上一轮迭代获得的节点分布,输出本轮迭代的节点分布,并选择节点分布中值最高的维度所对应的实体类型作为本轮迭代新预测的节点的节点类型;
利用两个多层感知机模型,针对嵌入向量 、嵌入向量 中的第 个节点的嵌入以及嵌入向量 中的第 个节点的嵌入,分别产生预测边分布均值的神经网络参数和预测边分布方差的神经网络参数,其中 为本轮迭代新预测的节点的序号,为任意一个已有的节点的序号;
利用分别赋予了预测边分布均值的神经网络参数和预测边分布方差的神经网络参数的神经网络,针对上一轮迭代获得的边分布、本轮迭代新预测的节点以及本轮迭代已预测的边,输出本轮迭代的边分布,并选择边分布中值最高的维度所对应的关系类型作为本次新预测的边的边类型,重复预测边类型,直至完成本轮迭代新预测的节点与任何一个已有的节点之间的边类型的预测。
2.根据权利要求1所述的溯源图级别的高级持续威胁样本自动化生成方法,其特征在于,所述实体类型包括恶意进程、良性进程、恶意文件、系统文件、临时文件和套接字,所述关系类型包括分叉、删除、注入、读、写、更改模式、执行、发送和接收。
3.根据权利要求1所述的溯源图级别的高级持续威胁样本自动化生成方法,其特征在于,所述利用攻击阶段划分算法,确定抽象攻击图结构中每一攻击阶段的起始进程节点,包括:从一张抽象攻击图结构中获得功能流的起始节点集合和终止节点集合,根据起始节点集合和终止节点集合,获取抽象攻击图结构中每个进程节点对应的功能流集合;
取抽象攻击图结构中出度不为0的进程节点作为候选阶段特征节点,计算任意两个候选阶段特征节点之间的功能流相似度,并删除功能流相似度大于相似阈值且功能流集合大小较小的候选阶段特征节点;
统计节点的功能流数和总度数,并分别根据功能流数和总度数对删除后剩余的候选阶段特征节点进行递增排序,得到功能流数列表和总度数列表,根据每个候选阶段特征节点在功能流数列表和总度数列表中的索引计算得分;
将得分位于最高的前四个候选阶段特征节点作为起始进程节点,并且按照起始进程节点的时序递增顺序,将四个起始进程节点分别作为初始入侵的起始进程节点、权限提升起始进程节点、敏感行为起始进程节点和目标达成起始进程节点。
4.根据权利要求3所述的溯源图级别的高级持续威胁样本自动化生成方法,其特征在于,所述功能流的起始节点所包含的实体类型为恶意进程、良性进程和套接字,所述功能流的起始节点的节点度特征为0入度,或者存在一个出度边的时间戳小于所有入度边的时间戳;
所述功能流的终止节点所包含的实体类型为恶意进程、良性进程、恶意文件、系统文件、临时文件和套接字,所述功能流的节点度特征为0出度,或者存在一个入度边的时间戳大于所有出度边的时间戳。
5.根据权利要求3所述的溯源图级别的高级持续威胁样本自动化生成方法,其特征在于,所述功能流相似度计算过程如下:;
式中, 表示候选阶段特征节点 和候选阶段特征
节点 之间的功能流相似度, 表示候选阶段特征节点 对应的功能
流集合, 表示候选阶段特征节点 对应的功能流集合,、分别表示候选阶段特征节点的序号, 表示取集合的长度, 表示取最大值。
6.根据权利要求3所述的溯源图级别的高级持续威胁样本自动化生成方法,其特征在于,得分计算如下:;
式中, 表示候选阶段特征节点 的得分, 表示
候选阶段特征节点 在功能流数列表 中的索引, 表示功能流数列
表 的长度, 表示候选阶段特征节点 在总度数列表
中的索引, 表示总度数列表 的长度, 为权重常数。
7.根据权利要求1所述的溯源图级别的高级持续威胁样本自动化生成方法,其特征在于,所述攻击技术匹配规则,包括:在初始入侵攻击阶段,若按序满足三元组[套接字,接收,良性进程],[良性进程,读,系统文件]和[良性进程,发送,套接字],则识别攻击技术的编号为T1590或T1592;
在初始入侵攻击阶段,若按序满足三元组[套接字,接收,良性进程],[良性进程,执行,恶意文件]和[良性进程,读,系统文件],则识别攻击技术的编号为T1586;
在初始入侵攻击阶段,若按序满足三元组[恶意进程,写,恶意文件]和[恶意进程,执行,恶意文件],则识别攻击技术的编号为T1091;
在初始入侵攻击阶段,若按序满足三元组[恶意进程,分叉,良性进程]和[良性进程,执行,恶意文件],则识别攻击技术的编号为T1053;
在初始入侵攻击阶段,若按序满足三元组[恶意进程,读,系统文件]和[恶意进程,写,临时文件],则识别攻击技术的编号为T1217;
在权限提升攻击阶段,若按序满足三元组[恶意进程,注入,良性进程]和[良性进程,执行,恶意文件],则识别攻击技术的编号为T1204;
在权限提升攻击阶段,若按序满足三元组[恶意进程,读,系统文件]和[恶意进程,写,临时文件],则识别攻击技术的编号为T1555或T1539;
在权限提升攻击阶段,若按序满足三元组[恶意进程,读,系统文件]和[恶意进程,写,系统文件],则识别攻击技术的编号为T1078;
在权限提升攻击阶段,若按序满足三元组[恶意进程,分叉,良性进程]和[良性进程,写,系统文件],则识别攻击技术的编号为T1136;
在权限提升攻击阶段,若按序满足三元组[恶意进程,删除,系统文件]和[恶意进程,写,系统文件],则识别攻击技术的编号为T1036;
在权限提升攻击阶段,若按序满足三元组[恶意进程,分叉,良性进程]和[良性进程,读,系统文件],则识别攻击技术的编号为T1087;
在权限提升攻击阶段,若满足三元组[恶意进程,注入,良性进程],则识别攻击技术的编号为T1563;
在敏感行为攻击阶段,若按序满足三元组[第一恶意进程,分叉,良性进程]和[良性进程,分叉,第二恶意进程],则识别攻击技术的编号为T1569;
在敏感行为攻击阶段,若按序满足三元组[恶意进程,分叉,良性进程]和[良性进程,删除,系统文件],则识别攻击技术的编号为T1070;
在敏感行为攻击阶段,若按序满足三元组[恶意进程,分叉,良性进程],[良性进程,读,系统文件]和[良性进程,写,临时文件],则识别攻击技术的编号为T1201、T1518或T1614;
在敏感行为攻击阶段,若按序满足三元组[恶意进程,分叉,良性进程]和[良性进程,写,临时文件],则识别攻击技术的编号为T1056、T1074或T1125;
在敏感行为攻击阶段,若按序满足三元组[恶意进程,分叉,良性进程]和[良性进程,发送,套接字],则识别攻击技术的编号为T1568、T1571或T1572;
在目标达成攻击阶段,若按序满足三元组[第一恶意进程,分叉,第二恶意进程]和[第二恶意进程,写,系统文件],则识别攻击技术的编号为T1037或T1525;
在目标达成攻击阶段,若按序满足三元组[恶意进程,分叉,良性进程]和[良性进程,更改模式,恶意文件],则识别攻击技术的编号为T1548;
在目标达成攻击阶段,若按序满足三元组[恶意进程,分叉,良性进程],[良性进程,写,临时文件]和[良性进程,发送,套接字],则识别攻击技术的编号为T1567;
在目标达成攻击阶段,若按序满足三元组[恶意进程,分叉,良性进程]和[良性进程,删除,系统文件],则识别攻击技术的编号为T1485、T1531或T1561。