当前位置:主页 > 科技论文 > 自动化论文 >

基于代码属性图和图卷积神经网络的软件漏洞检测方法研究

发布时间:2021-05-22 16:02
  随着开源软件的广泛使用,在软件设计与开发实现的过程中存在的一些缺陷或不足即软件漏洞容易被恶意攻击者利用。作为软件安全的第一层检查,从源代码中尽早检测漏洞并及时修补可以减少软件漏洞带来的损失,然而传统的源代码审查技术在很大程度上取决于审查人员对安全问题的理解与长期经验的积累,并且在代码规模日益增大的情况下无法满足对漏洞检测的需求。基于机器学习的漏洞检测方法虽然避免了基于规则的漏洞检测方法依赖专家人工编写检测规则的问题,但是仍需要人工提取漏洞特征,而近年来深度学习技术在各领域取得的研究成果为代码漏洞检测的研究提供了新的方向。然而,现存的研究方法在源代码的中间表示形式上常常忽略了其结构信息,深度神经网络通常把代码当作自然语言文本来对其进行表示学习。针对上述问题,本文提出了基于代码属性图和图卷积神经网络的漏洞检测方法,具体工作如下:首先,通过分析源代码生成对应的代码属性图(Code Property Graph),并根据图结构边的类型提取出漏洞检测关注的图结构。进一步,我们利用程序切片技术,根据可能的漏洞关键点生成程序切片对图结构进行简化,仅保留与指定漏洞关键点相关的图结构,这样既可以减轻无关... 

【文章来源】:哈尔滨工业大学黑龙江省 211工程院校 985工程院校

【文章页数】:65 页

【学位级别】:硕士

【文章目录】:
摘要
ABSTRACT
第1章 绪论
    1.1 课题研究的背景和意义
    1.2 国内外研究现状及分析
        1.2.1 源代码的中间表示的国内外研究现状
        1.2.2 图表示学习方法的国内外研究现状
        1.2.3 代码漏洞检测的国内外研究现状
    1.3 本文的主要研究内容以及各章节安排
        1.3.1 主要研究内容
        1.3.2 章节安排
第2章 基于代码属性图的源代码图结构抽象表示
    2.1 引言
    2.2 源代码的图结构化抽象表示的总体流程
    2.3 代码属性图的定义和生成
        2.3.1 代码属性图的基本概念
        2.3.2 代码属性图的生成和存储
    2.4 漏洞检测关注的图结构信息提取方法
    2.5 图结构信息的抽象化表示
    2.6 基于程序切片技术的图结构简化方法
        2.6.1 程序切片技术
        2.6.2 基于漏洞关键点的程序切片设计方案
        2.6.3 基于程序切片的图结构简化算法及实现
    2.7 结构化表示的结果与分析
        2.7.1 漏洞检测关注的图结构信息提取结果
        2.7.2 基于程序切片的图结构简化结果
    2.8 本章小结
第3章 基于图卷积神经网络的软件漏洞检测方法
    3.1 引言
    3.2 基于图卷积神经网络的软件漏洞检测方法总体流程
    3.3 基于图分类的漏洞检测模型的形式化定义
        3.3.1 漏洞检测模型问题定义
        3.3.2 模型网络结构
    3.4 基于图卷积神经网络的图表示学习
        3.4.1 图卷积神经网络结构及其变体
        3.4.2 图卷积神经网络的训练
    3.5 图结构中节点的向量表示学习
        3.5.1 节点向量表示学习模型的输入
        3.5.2 节点信息的传递与聚合
    3.6 图完整结构的向量表示学习
        3.6.1 基于子图加权的READOUT模型设计
        3.6.2 基于整图节点注意力的READOUT模型设计
        3.6.3 基于子图和节点注意力的READOUT模型设计
    3.7 本章小结
第4章 算法的实验验证
    4.1 数据集信息采集与预处理
    4.2 实验设置
    4.3 评价指标
    4.4 实验结果对比与分析
    4.5 图形化界面的展示
        4.5.1 图形化界面的实现
        4.5.2 图形化界面的操作展示
    4.6 本章小结
结论
参考文献
攻读硕士学位期间发表的论文及其他成果
致谢


【参考文献】:
期刊论文
[1]面向源代码的软件漏洞静态检测综述[J]. 李珍,邹德清,王泽丽,金海.  网络与信息安全学报. 2019(01)
[2]软件与网络安全研究综述[J]. 刘剑,苏璞睿,杨珉,和亮,张源,朱雪阳,林惠民.  软件学报. 2018(01)
[3]程序切片技术综述[J]. 王伟,陈平.  微电子学与计算机. 2002(08)

硕士论文
[1]基于深度学习的漏洞检测方法研究[D]. 王苏娟.华中科技大学 2019
[2]Linux内核驱动中漏洞检测的研究[D]. 徐永健.北京工业大学 2015



本文编号:3201282

资料下载
论文发表

本文链接:https://www.wllwen.com/kejilunwen/zidonghuakongzhilunwen/3201282.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户c7b67***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com