利索能及
我要发布
收藏
专利号: 202310262800X
申请人: 浙江工业大学
专利类型:发明专利
专利状态:已下证
更新日期:2026-07-29
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种基于威胁情报报告的APT攻击聚类方法,其特征在于,所述基于威胁情报报告的APT攻击聚类方法,包括:步骤1、基于NLP技术对CTI报告清洗,得到标准化文本;

步骤1.1、对CTI报告进行过滤转换得到与攻击相关的规范化句子;

步骤1.2、对每一规范化句子进行IOC实体识别,并将匹配的实体替换为其属性词,然后对规范化句子进行词语消解,得到包含威胁行为的标准化文本;

步骤2、提取所述标准化文本中的候选威胁行为,将候选威胁行为与预构建的攻击行为模板库匹配提取技术或战术,根据CTI报告的文本语序,将提取的技术或战术生成CTI报告的攻击链;

步骤3、将所有CTI报告对应的攻击链根据传递闭包思想聚类,根据聚类结果得出APT攻击的不同类别。

2.如权利要求1所述的基于威胁情报报告的APT攻击聚类方法,其特征在于,所述对CTI报告进行过滤转换得到与攻击相关的规范化句子,包括:利用HAN模型过滤CTI报告中与攻击无关的文本;

利用BiLSTM模型将CTI报告中句子的冗余单词过滤;

对剩余的与攻击相关的文本添加句子分隔符,将长句分解为短句,对于缺少主语的句子,为其添加先行名词作为主语;

将所有为被动语态的句子转换为主动语态,得到CTI报告中与攻击相关的规范化句子。

3.如权利要求1所述的基于威胁情报报告的APT攻击聚类方法,其特征在于,所述对规范化句子进行词语消解,包括:代词消解:删除规范化句子中的代词,并将其替换为其指代的先行名词;

实体消解:替换规范化句子内指代,并将动词短语替换为动词本身;

依赖动词消解:将描述实体依赖的同义动词替换为标准动词。

4.如权利要求1所述的基于威胁情报报告的APT攻击聚类方法,其特征在于,所述攻击行为模板库构建过程如下:根据MITRE ATT&CK框架中对所有攻击技术或子技术的描述,为每个技术或子技术构建攻击行为模板T={c,Tb,i,p,te,ta},其中c为技术或子技术的现有状态,Tb为技术或子技术的攻击行为,i为技术或子技术使用的工具,p为技术或子技术的攻击意图,te为技术或子技术的威胁技术,ta为技术或子技术的威胁战术;

其中,攻击行为Tb={(a1,o1),…,(an,on)},其中ai为攻击行为的攻击动作,oi为攻击行为的攻击目标,1≤i≤n,(ai,oi)为原子攻击行为;

聚合所有技术或子技术的攻击行为模板作为攻击行为模板库。

5.如权利要求1所述的基于威胁情报报告的APT攻击聚类方法,其特征在于,所述提取标准化文本中的候选威胁行为,包括:利用Stanford CoreNLP模型识别标准化文本中与威胁行为有关的三元组SVO(Subject+Verb+Object),其中Subject为恶意软件或恶意用户的名称Cb、Verb为Subject执行的威胁动作Ca、Object为恶意威胁动作的执行目标Co,记候选威胁行为Cb=(Ca,Co)。

6.如权利要求1所述的基于威胁情报报告的APT攻击聚类方法,其特征在于,所述将候选威胁行为与预构建的攻击行为模板库匹配提取技术或战术,包括:A、利用词袋模型分别表示候选威胁行为以及攻击行为模板中的攻击行为;

B、将所有候选威胁行为分别与只包含一个原子攻击行为的攻击行为进行匹配,利用word2vec模型得到词袋模型中每个词语的向量化表示,并对每个向量进行加权相加,获得候选威胁行为与攻击行为对应的词袋模型的文本向量,并计算两个文本向量的匹配分数,当匹配分数最高且大于匹配阈值时,候选威胁行为与攻击行为匹配成功,其中,匹配分数计算公式如下:式中, 为第i个候选威胁行为的文本向量, 为第j个攻击行为的文本向量,为文本向量 与 的匹配分数;

C、将候选威胁行为与包含多个原子攻击行为的攻击行为进行匹配,为所有攻击行为包含的原子攻击行为数求均值m,并将均值m作为组合窗口,根据组合窗口滑动组合抽取出m个候选威胁行为,记为候选集合,并与包含多个原子攻击行为的攻击行为进行匹配,当满足公式2时认为匹配成功;

式中, 为候选集合,其中的 表示候选集合中的第m个候选威胁行为, 包含在组合 内, 表示候选威胁行为中与攻击行

为Tb匹配度最高的匹配度分数,Cth为组合匹配阈值, 表示候选集合中与攻击行为Tb匹配度最高的匹配度分数;

D、在步骤B的匹配结果中删除既在步骤B中匹配成功又在步骤C中匹配成功的候选威胁行为;

E、为匹配成功的候选威胁行为标注攻击行为所在模板中记录的技术或战术。

7.如权利要求1所述的基于威胁情报报告的APT攻击聚类方法,其特征在于,所述将所有CTI报告对应的攻击链根据传递闭包思想聚类,包括:*

初始化邻接矩阵E和传递闭包矩阵E;

对所有CTI报告对应的攻击链进行两两匹配,若满足传递闭包阈值则将邻接矩阵E中对应位置的元素值设为1;

*

若邻接矩阵E中的元素rik=1,同时元素rkj=1,则得到元素rij =1加入传递闭包矩阵* * *E,遍历所有i,j,k,i,j,k∈[1,n]得到最终的传递闭包矩阵E=(rij)n×n,n为CTI报告的数量;

* *

遍历传递闭包矩阵E ,若rij =1,则将传递链i到j中的所有攻击链加入同一个类,得到最终的聚类结果。