咨询与建议

看过本文的还看了

相关文献

该作者的其他文献

文献详情 >基于图同构网络的源代码漏洞检测研究 收藏
基于图同构网络的源代码漏洞检测研究

基于图同构网络的源代码漏洞检测研究

作     者:王俐文 

作者单位:山东大学 

学位级别:硕士

导师姓名:宋勇;吴槟

授予年度:2022年

学科分类:08[工学] 0839[工学-网络空间安全] 0835[工学-软件工程] 081201[工学-计算机系统结构] 0812[工学-计算机科学与技术(可授工学、理学学位)] 081202[工学-计算机软件与理论] 

主      题:源代码漏洞检测 程序图 图同构 图同构神经网络 

摘      要:随着科学技术的发展,计算机软件已经融入到社会生产发展的各行各业,在国民生活甚至是国家发展中占据了非常重要的地位。一旦软件系统遭到攻击,可能会造成严重的经济损失甚至社会问题,因此软件安全是不可忽视的问题。目前影响软件安全的一个重要因素就是代码漏洞,C/C++作为广泛使用于操作系统、驱动和软件基础组件开发中的底层语言,其中的代码漏洞影响尤其突出。在软件的早期阶段,及时对软件源代码进行漏洞检测可以及时发现漏洞。目前主流漏洞检测方法有两种:一种是基于规则的漏洞检测,该方法由于需要专家定义漏洞规则、过于依赖人工经验知识导致具有较高的漏报率和误报率。另一种是基于学习的方法,该方法需要提取代码特征并且训练神经网络模型进行检测,因此代码的特征提取是否准确、完整以及神经网络模型选择是否合适对检测结果有很大影响。为了解决上述两种方法的不足,提高检测结果的准确率,本文针对提取的代码特征图建立了基于图同构神经网络的源代码漏洞检测模型,并进行了实验验证分析,结果表明基于图同构神经网络的源代码漏洞检测系统可以有效提高漏洞检测能力。主要研究内容如下:(1)首先分析了当前主流的源代码漏洞检测机制,详细介绍了漏洞检测原理、现有漏洞检测方法、图神经网络及在图分类任务中的应用。针对程序语义信息提取不足以及图神经网络选择不当导致的源代码漏洞检测漏报率和误报率较高的问题,提出了一种基于图同构神经网络的源代码漏洞检测方法。(2)针对源代码特征结构提取不全导致源代码漏洞检测准确率低的问题,本文探究了如何提取准确、完整的源代码图表示结构。通过构造程序语法图、控制依赖图、数据依赖图以及函数调用图用来丰富程序的语法语义信息,精确表达源代码语义信息,为训练网络模型提供准确、完整的输入。(3)在获得准确、完整的源代码程序图的基础上,分析了传统图神经网络结构,发现其中缺乏对图同构问题的研究。由于图中节点含有源代码tokens信息,传统的图神经网络在图分类任务中会丢失掉这些关键信息。因此本文采用图同构神经网络,设计了基于图同构神经网络的源代码漏洞检测模型,通过将代码图输入到图同构神经网络训练模型系统,从而进行源代码漏洞检测。(4)针对本文提出的源代码漏洞检测方法,在C/C++编程语言数据集上进行实验评估,实验结果表明,与FUNDED相比,考虑了图同构信息并且利用图同构神经网络进行漏洞检测导致准确率平均提高了 3.9%。

读者评论 与其他读者分享你的观点

用户名:未登录
我的评分