一种基于图结构的恶意PDF文档智能检测方法及系统与流程

专利检索2022-05-10  6


一种基于图结构的恶意pdf文档智能检测方法及系统
技术领域
1.本发明涉及一种基于图结构的恶意pdf文档智能检测方法及系统,属于信息安全技术领域。


背景技术:

2.传统的恶意pdf文档检测方法主要基于签名识别和启发式规则匹配,优点是误报率低,但局限于对病毒库中已有的恶意样本进行检测,面对未知恶意文档反应迟缓,攻击者可以通过伪造新的恶意文档来绕过检测。
3.现有基于机器学习的恶意文档检测方法其特征选择大多数依赖于专家的知识驱动,在恶意文档的手动分析期间进行观察来选择特征集(如调用类对象的数量、文档页数或版本号等),或是通过对元素的数学统计分析将特征细化(如某类对象在所有对象中的占比)。通过各类数学变换,这类特征可选取的数量很大,如果仅仅根据经验选取了一部分作为特征集,就会丧失文档的部分信息。
4.现有的恶意pdf文档检测方法技术的缺点包括:依赖于专家经验来遴选特征,无法全面反映文档属性;在面对对抗样本时,检测器性能下降明显;特征空间维度较大,导致深度学习模型的训练效率比较低,依赖系统的配置。


技术实现要素:

5.本发明所要解决的技术问题是克服现有技术的缺陷,提供一种基于图结构和卷积神经网络的恶意pdf文档检测方法,提高识别结果的准确性、高效性和易用性。
6.为解决上述技术问题,本发明提供一种基于图结构的恶意pdf文档智能检测方法,其特征在于,包括:
7.获取待检测的pdf文档;
8.解析pdf文档,得到文档的图结构特征,对图结构特征进行精简,计算精简后的拉普拉斯矩阵作为输入特征;
9.将输入特征输入到获取预先训练好的卷积神经网络模型,若输出为1,则判定为恶意文档;若输出0,则判定为良性文档。
10.进一步的,所述解析pdf文档,得到文档的图结构特征,包括:
11.通过解析pdf文档中各标签对象的引用关系,提取得到文档的结构路径,根据多条结构路径得到文档的图结构特征。
12.进一步的,所述对图结构特征的所有节点进行分类重要性排序,根据排序结果进行保留和合并处理,得到精简后的图结构特征,包括:
13.使用tf

idf算法对图结构特征的所有标签对象进行分类重要性排序,保留总重要性影响超过99%的节点,对剩下1%的结点进行合并,得到精简后的图结构特征。
14.进一步的,所述计算精简后的图结构特征的拉普拉斯矩阵作为输入特征,包括:
15.将精简后的图结构特征转化为邻接矩阵,记作a;
16.将精简后的图结构特征转化为度矩阵,记作d;
17.根据邻接矩阵和度矩阵得到拉普拉斯矩阵l,表达形式为:
18.l=d

a。
19.进一步的,所述卷积神经网络模型的训练过程包括:
20.获取已确定的若干恶意pdf文档和若干良性pdf文档,对每个恶意pdf文档和每个良性pdf文档进行解析,得到图结构特征,对图结构特征的所有节点进行分类重要性排序,根据排序结果进行保留和合并处理,得到精简后的图结构特征,计算精简后的图结构特征的拉普拉斯矩阵作为输入特征,得到输入特征训练集,给定良性文档训练标签为0,恶意文档训练标签为1;
21.对2d

cnn模型的网络各层的神经元权值进行初始化,输入特征训练集中的一个训练数据经过网络各层向前传播得到输出值,与已给定的标签进行比较,计算预测误差,将预测误差传回网络中,求得各层的误差,对权值进行更新,再重新输入一个训练数据向前传播,多次迭代后得到训练好的神经网络模型。
22.一种基于图结构的恶意pdf文档智能检测系统,包括:
23.获取模块,用于获取待检测的pdf文档;
24.解析处理模块,用于解析pdf文档,得到文档的图结构特征,对图结构特征进行精简,计算精简后的拉普拉斯矩阵作为输入特征;
25.学习检测模块,用于将输入特征输入到获取预先训练好的卷积神经网络模型,若输出为1,则判定为恶意文档;若输出0,则判定为良性文档。
26.进一步的,所述解析处理模块包括:
27.结构路径生成模块,用于通过解析pdf文档中各标签对象的引用关系,提取得到文档的结构路径,根据多条结构路径得到文档的图结构特征。
28.进一步的,所述解析处理模块包括:
29.图精简模块,用于使用tf

idf算法对图结构特征的所有标签对象进行分类重要性排序,保留总重要性影响超过99%的节点,对剩下1%的结点进行合并,得到精简后的图结构特征。
30.进一步的,所述解析处理模块包括:
31.特征提取模块,用于
32.将精简后的图结构特征转化为邻接矩阵,记作a;
33.将精简后的图结构特征转化为度矩阵,记作d;
34.根据邻接矩阵和度矩阵得到拉普拉斯矩阵l,表达形式为:
35.l=d

a。
36.进一步的,所述学习检测模块包括:
37.训练模块,用于
38.获取已确定的若干恶意pdf文档和若干良性pdf文档,对每个恶意pdf文档和每个良性pdf文档进行解析,得到图结构特征,对图结构特征的所有节点进行分类重要性排序,根据排序结果进行保留和合并处理,得到精简后的图结构特征,计算精简后的图结构特征的拉普拉斯矩阵作为输入特征,得到输入特征训练集,给定良性文档训练标签为0,恶意文档训练标签为1;
39.对2d

cnn模型的网络各层的神经元权值进行初始化,输入特征训练集中的一个训练数据经过网络各层向前传播得到输出值,与已给定的标签进行比较,计算预测误差,将预测误差传回网络中,求得各层的误差,对权值进行更新,再重新输入一个训练数据向前传播,多次迭代后得到训练好的神经网络模型。
40.本发明所达到的有益效果:
41.相对于现有技术,本发明的图结构提取和图精简方法降低了特征的维度,减轻了深度学习模型的训练压力,提高了系统的高效性;根据输入特征,利用卷积神经网络模型对文档进行检测分类或是自动训练模型的参数,提高了系统的准确性和易用性。
附图说明
42.图1为本发明工作流程图;
43.图2为本发明系统结构图。
具体实施方式
44.下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
45.如图1所示,一种基于图结构的恶意pdf文档智能检测方法,
46.输入一个文档,对其进行解析,提取它的图结构特征;使用tf

idf算法对图结构进行精简,然后计算图的拉普拉斯矩阵作为输入特征;将其送入2d

cnn模型训练或是检测分类。
47.所述图结构特征是指基于对pdf文档的结构解析,根据对象的引用关系,提取得到文档的结构路径,然后根据结构路径集合,构造得到文档的图结构。
48.所述图结构的精简过程为:
49.使用tf

idf算法对所有节点进行分类重要性排序,保留总重要性影响超过99%的节点,对剩下1%的结点进行合并,得到精简后的图结构。
50.所述的输入特征为:
51.将图结构转化为邻接矩阵的形式,邻接矩阵反映了图中各节点之间的相邻关系,记作a。将图结构转化为度矩阵的形式,度矩阵对角线上的元素是各个顶点的度,表示和该顶点相关联的边的数量,记作d。拉普拉斯矩阵l定义为l=d

a。
52.所述模型训练的过程为:
53.根据输入的聚合特征,利用2d

cnn模型自动地更新2d

cnn模型参数。
54.所述模型分类检测的过程为:
55.将聚合特征以向量的形式输入2d

cnn模型在经过卷积层、池化层、dropout层、全连接层后得到输出,若输出为1,则判定为恶意文档;若输出0,则判定为良性文档。
56.如图2所示,本实施例涉及一种基于图结构的恶意pdf文档智能检测系统,包括:
57.获取模块,用于获取待检测的pdf文档;
58.解析处理模块,用于解析pdf文档,得到文档的图结构特征,对图结构特征进行精简,计算精简后的拉普拉斯矩阵作为输入特征;
59.学习检测模块,用于将输入特征输入到获取预先训练好的卷积神经网络模型,若
输出为1,则判定为恶意文档;若输出0,则判定为良性文档。
60.进一步的,所述解析处理模块包括:
61.结构路径生成模块,用于通过解析pdf文档中各标签对象的引用关系,提取得到文档的结构路径,根据多条结构路径得到文档的图结构特征。
62.进一步的,所述解析处理模块包括:
63.图精简模块,用于使用tf

idf算法对图结构特征的所有标签对象进行分类重要性排序,保留总重要性影响超过99%的节点,对剩下1%的结点进行合并,得到精简后的图结构特征。
64.进一步的,所述解析处理模块包括:
65.特征提取模块,用于
66.将精简后的图结构特征转化为邻接矩阵,记作a;
67.将精简后的图结构特征转化为度矩阵,记作d;
68.根据邻接矩阵和度矩阵得到拉普拉斯矩阵l,表达形式为:
69.l=d

a。
70.进一步的,所述学习检测模块包括:
71.训练模块,用于
72.获取已确定的若干恶意pdf文档和若干良性pdf文档,对每个恶意pdf文档和每个良性pdf文档进行解析,得到图结构特征,对图结构特征的所有节点进行分类重要性排序,根据排序结果进行保留和合并处理,得到精简后的图结构特征,计算精简后的图结构特征的拉普拉斯矩阵作为输入特征,得到输入特征训练集,给定良性文档训练标签为0,恶意文档训练标签为1;
73.对2d

cnn模型的网络各层的神经元权值进行初始化,输入特征训练集中的一个训练数据经过网络各层向前传播得到输出值,与已给定的标签进行比较,计算预测误差,将预测误差传回网络中,求得各层的误差,对权值进行更新,再重新输入一个训练数据向前传播,多次迭代后得到训练好的神经网络模型。
74.如图1所示,本实施例包括以下详细操作步骤:
75.步骤1)结构路径生成,结构解析单元对pdf文档进行解析,然后利用路径生成单元根据对象的引用关系,利用深度优先算法生成得到文档的结构路径。
76.步骤2)图精简,对象提取单元提取结构路径集合中的所有对象,tf

idf计算单元依据tf

idf算法计算对象的贡献度,对象精简单元将总贡献度占比低于1%的对象合并,得到精简后的对象集合。
77.步骤3)特征提取,图结构生成单元根据精简后的对象集合和文档的结构路径,生成文档的图结构;拉普拉斯矩阵计算单元,计算图的度矩阵和邻接矩阵,然后得到图的拉普拉斯矩阵,并作为输入特征。
78.步骤4)学习检测,当模式选择单元根据需求输入’train’时,模型学习单元根据特征提取模块生成的输入特征,利用2d

cnn深度学习模型进行训练,并对模型的参数进行更新;当模式选择单元根据需求输入’valid’时,文档检测单元将输入特征输入2d

cnn模型后得到输出,若输出为1,则判定为恶意文档;若输出0,则判定为良性文档。
79.使用例一:
80.用户输入文档test.pdf;
81.进行文档结构路径生成,提取得到的结构路径的集合structure_path.txt;
82.进行图精简,分析结构路径集合,并计算各对象的tfidf进行精简,得到精简对象集合dict.json;
83.进行特征提取,依据structure_path.txt和dict.json生成文档的图结构并计算得到其拉普拉斯矩阵,保存为文件lpls.npy;
84.选择训练模式时,输入’train’,模型进行学习并更新参数。
85.使用例二:
86.用户输入文档test.pdf;
87.进行文档结构路径生成,提取得到的结构路径的集合structure_path.txt;
88.进行图精简,分析结构路径集合,并计算各对象的tfidf进行精简,得到精简对象集合dict.json;
89.进行特征提取,依据structure_path.txt和dict.json生成文档的图结构并计算得到其拉普拉斯矩阵,保存为文件lpls.npy
90.选择测试模式时,输入’valid’,模型进行检测,输出结果为1,检测为恶意文档。
91.使用例三
92.用户输入文档test.pdf;
93.进行文档结构路径生成,提取得到的结构路径的集合structure_path.txt;
94.进行图精简,分析结构路径集合,并计算各对象的tfidf进行精简,得到精简对象集合dict.json;
95.进行特征提取,依据structure_path.txt和dict.json生成文档的图结构并计算得到其拉普拉斯矩阵,保存为文件lpls.npy;
96.选择测试模式时,输入’valid’,模型进行检测,输出结果为0,检测为良性文档。
97.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
98.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
99.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
100.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计
算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
101.以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
转载请注明原文地址:https://win.8miu.com/read-150375.html

最新回复(0)