首页|基于知识图谱的恶意代码分类方法研究

基于知识图谱的恶意代码分类方法研究

何取东

基于知识图谱的恶意代码分类方法研究

何取东1
扫码查看

作者信息

  • 1. 中原工学院
  • 折叠

摘要

当前互联网中恶意代码数量庞大,对网络安全产生严重威胁。国家互联网应急中心发布的《互联网安全威胁报告》指出,38%的网络安全事件由恶意代码引发。因此,如何分类识别庞大的恶意代码,不仅有助于企事业单位人员针对性的开展安全防御,同时对保障数据安全和个人信息安全具有重要指导意义。然而,当前恶意代码分类方法存在样本特征抽取不全面、特征间内在的关联关系缺失、恶意代码行为描述能力弱等不足,导致现有方案分类准确率偏低。 在上述背景下,本文利用知识图谱关系描述清晰,可推理和可解释性的特性,抽取恶意代码实体和关系构建恶意代码知识图谱,展开恶意代码分类方法研究,本文的主要工作内容和研究成果如下: 1.针对恶意代码行为特征抽取不全面、特征间的关联关系难以描述的问题,本文采取动静结合的方式抽取恶意代码的知识,并将其构建为知识图谱。首先,将恶意代码在沙箱中动态运行,得到链接库、注册表操作记录等运行结果报告;接着,对恶意代码进行静态的逆向分析,提取其中的API序列、API调用关系图等静态特征;然后,将静态分析和动态分析的结果进行融合,定义恶意代码本体和关系,生成恶意代码知识图谱中三元组;最后,将这些三元组存储到Neo4j图数据库中,完成了恶意代码知识图谱的构建。动静结合的互补分析方式,可以更加全面的抽取恶意代码实体知识和关系知识。 2.针对恶意代码分类任务中特征不全面、无法表示特征间的关联关系的问题,提出一种基于API特征矩阵的恶意代码分类方法。首先逆向抽取恶意代码数的API序列;然后将API序列中的API视为单词,使用Word2Vec技术进行词嵌入,得到融合上下文语义的API词向量;接着使用TransE技术对恶意代码知识图谱进行表示学习,得到API实体向量;再将同一个API的词向量和实体向量融合,得到知识图谱增强的恶意代码API特征矩阵;最后以该特征矩阵作为输入,使用TextCNN训练分类模型。实验结果表明,本方法在恶意代码家族分类任务上准确率达到93.8%,高于其他基于API序列的恶意代码分类方法。 3.针对恶意代码分类任务中难以表达API之间调用关系、API语义表示能力弱的问题,提出一种基于API调用关系图的恶意代码分类方法。首先将恶意代码进行逆向分析,提取出API函数及API间的调用关系;然后使用知识图谱表示学习和BERT两种技术对API进行嵌入;再将API的语义向量作为图的节点,将API间的调用关系作为图的边传入GCN来学习恶意代码样本的特征,最后进行恶意代码的分类。经实验证明,提出的方法在恶意代码分类任务中,准确率达到86.2%,高于其他基于API调用关系的恶意代码分类方法。

关键词

恶意代码/软件逆向/应用程序接口/知识图谱/神经网络/行为特征

引用本文复制引用

授予学位

硕士

学科专业

电子信息

导师

赵荣彩/夏冰/戴青

学位年度

2023

学位授予单位

中原工学院

语种

中文

中图分类号

TP
段落导航相关论文