基于图注意力网络的漏洞检测方法研究

来源 :西安工业大学 | 被引量 : 0次 | 上传用户:x1u2e3
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
软件等信息技术产业的不断发展,使软件的功能和组成结构日趋复杂,而复杂的软件结构导致软件安全事件频发,使工业生产和社会安全受到了严重威胁。大部分软件安全问题来自于软件源代码本身存在的安全风险,因此,近年来软件源代码安全问题得到社会各界的广泛关注。面对软件漏洞利用问题的快速增长,如何快速有效地对软件源代码进行漏洞检测,是当下信息安全研究领域的热门研究问题。传统的静态漏洞检测方法大多依赖于人工定制的漏洞模式进行漏洞检测,检测的准确率较低且效率低下。随着深度学习等技术的快速发展,大量基于深度神经网络的静态检测方法应运而生。现有的静态漏洞检测方法大多基于文本或抽象语法树进行表征,未考虑源代码结构信息,无法对源代码深层语义信息进行表征,导致漏洞检测方法普遍存在精度及准确率较低等问题。针对上述问题,本文的工作主要围绕以下三方面展开:1)现有的漏洞源代码数据收集方法效率较低,且漏洞描述信息不完整,本文通过从漏洞公开网站收集辅以人工的方式,来收集漏洞源代码数据并对漏洞信息进行标注。首先在漏洞公开披露网站获取漏洞源码链接,采集漏洞源代码,同时在NVD和CVE网站收集漏洞描述信息,以漏洞类型及漏洞ID为基准进行存储。为消除无关因素对漏洞检测实验造成的影响,对收集到的源代码数据进行了函数粒度分割、文件重命名、变量替换、删除无关字符等预处理操作。本文主要收集C/C++语言所编写的程序代码,最终构建了含有39160个代码样本的漏洞数据库。2)为解决现有源代码表征方法中存在的表征信息不完善、无法获取源代码深层语义信息、无法捕获代码结构信息等问题,本文提出了源代码特征提取方法CPGExtract,对收集到的软件源代码数据进行处理。首先通过源代码分析工具将源代码数据转化为图数据结构,即抽象语法树、控制流图、程序依赖图组成的图数据结构。接着使用图嵌入模型struc2vec将由节点和边组成的图数据结构转化为特征向量,将此特征向量作为后续神经网络模型训练与检测的输入。本研究与传统数据嵌入方法Deep Walk、node2vec和word2vec进行对比实验,实验表明本方法所采用的基于代码属性图的特征表示方法,可以捕获源代码结构信息,可以有效且完善地对软件源代码信息进行表征。基于struc2vec的图嵌入方法在节点特征分类任务当中取得了平均80%以上的准确率,相较于传统数据嵌入方法具有较大提升。3)针对目前源代码漏洞检测方法效率较差、精度较低等问题,本文提出了基于图注意力网络的漏洞检测方法。首先将源代码特征提取模块所生成的源代码特征向量作为漏洞表征学习模块的输入,漏洞表征学习模块由图卷积-池化层、图读出层、全连接层以及Soft Max层组成。为改善漏洞表征学习效果,获取漏洞源代码深层语义信息、提高漏洞检测方法的准确率,本文选用图注意力网络层作为图卷积层的网络模型。本研究通过与cppcheck、deepbugs、flawfinder以及vuldeepecker四种传统漏洞检测模型进行同基准对比实验,证明了本方法能够有效地识别各类型漏洞,软件源代码漏洞检测平均精度达到了87%,相较于传统漏洞检测工具及方法具有更高的精度与准确率。
其他文献
知识是对“识”的理解和描述,也可以说知识就是智能。但目前的主流认知是知识是人类在实践中认识客观世界的结果,这种认识并没有对认识的主体进行讨论。在人工智能领域,为了建立一个基于共识的知识库来表现智能,出现了专家系统、神经网络、知识图谱等模型,这些模型对知识的研究不够深入,且知识库不会随外界更新。因此为了建立一个全面、基于自我意识、可以随外界更新的知识库,本文在知识表示研究的基础上,将知识融合任务分成
学位
现代战争中,无人机在空战和空地联合作战中都占据重要地位并发挥着巨大作用。然而,从战术任务起飞点出发,躲避所有障碍物并且避免敌方探测器的嗅探和攻击,安全飞行并最终到达任务终点,是无人机在诸多战术应用中的首要任务,是执行一系列任务的前提和保障。因此,无人机需要一条满足任务需求的飞行路径,需要有效的路径规划方法来获得。除此之外,无人机战术路径规划的常规仿真方案中,无论是环境感知、态势评估、飞行控制、无人
学位
相机在拍摄人脸图时,常常因为抖动、失焦等原因得到模糊图像。而当人脸图像被模糊化时,对人脸识别等高级视觉任务有很大的影响。人脸图像去模糊的目的是从模糊的输入图像中恢复出清晰的图像,从而提高识别精度等。因此,图像去模糊问题是图像复原领域里面的研究重点,而一般的去模糊方法在人脸图像上效果不佳。本文采用生成式学习方法,结合特征矫正模块,实现对模糊人脸图像进行高精度复原,主要工作如下:(1)基于高效自注意力
学位
随着深度学习中卷积神经网络技术发展,现今的卷积神经网络的模型结构应用越加广泛。为了提升模型性能,网络模型通常变得更加复杂,规模日益庞大,且神经网络本身存在计算冗余,使得边缘设备无法满足复杂模型的运算需求。因此深度卷积神经网络的模型压缩工作被广泛研究,使用有效的模型压缩算法可以减少冗余度,让复杂模型转变为轻量模型以适应更丰富的应用场景。本文主要工作研究了轻量化卷积神经网络和结构化模型剪枝技术。首先是
学位
随着计算机图形学、数字图像三维处理在口腔数字化方面的快速发展,计算机在口腔诊疗领域有着广泛的应用。本课题着眼于数字化口腔医疗的发展和推广,在牙齿尖点的提取和牙齿的三维测量基础上,进行了全牙列数字化评估研究。本文包括以下几个方面的主要研究内容:1)本文以全牙列数字化评估系统在口腔数字化诊疗中的应用为背景,对三维测量技术、牙尖提取方法和现有的评估系统进行了简单的介绍。在此基础上,基于编码结构光技术的相
学位
随着计算预算和数据可用性的空前增加,深度模型在目标识别任务中取得了优异的性能。然而,机器学习机制仍然无法与认知学习相比,认知学习不仅可以持续地获取新知识并保存大部分经常用到的旧知识,还能在少量注释样本上构建高精度的识别能力。小样本类增量学习(FSCIL)是一种受认知学习启发的新兴机器学习范式,给定具有足够训练数据的基类和来自新类的少量可训练样本,FSCIL使用旧类训练一个表示模型,然后不断地使模型
学位
近年来,随着卫星遥感技术和深度学习技术的快速发展,基于深度学习方法对遥感图像中的特定目标进行检测逐步成为当前的研究热点。我国拥有广袤的海域和许多重要的港口,开展海面目标检测无论在军事上还是在民用上都有着非常重要的价值和意义,例如渔业管理、港口交通服务、海上巡逻等。本文主要目标是在复杂海洋环境以及各种云雾天气的干扰情况下,依托现有的深度神经网络方法,研究海面遥感舰船图像处理的分类与定位不准确问题。主
学位
人工智能的迅速崛起开启了一次重大的时代转型,生理状态评估领域迎来了新的曙光,以数据和智能状态评估算法驱动的生理状态评估领域方兴未艾。在生理状态评估领域之中,传统的心率异常状态存在误报警、准确率不高等问题,同时疲劳状态也难以通过单一参数进行感知与评估。因此本文针对两类不同的生理数据(波形生理信号以及稀疏多元生理数据),分别建立了深度神经网络模型,实现了人体心电异常状态以及疲劳状态的识别。本文主要的研
学位
随着武器装备的飞速发展,空战环境日益复杂多变,现代战场呈现出高度智能化的特点。威胁评估作为一种辅助决策工具,可以提高指挥员对战场的实时感知能力,帮助指挥员快速、准确地判断战场形势,从而做出科学、有效的战术决策。本文以地面防空为背景,展开研究空中目标威胁评估的相关问题。论文的主要研究内容如下:(1)针对空中袭击目标,建立威胁评估模型。在建模过程中综合考虑诸多因素,通过相关系数和Alpha系数确定威胁
学位
区块链是数字经济发展中的一项重要技术,已被纳入国民经济十四五规划纲要中。区块链技术的应用范围正在迅速扩张,已经从虚拟货币扩展到了与金融、物流、政府以及医疗等各种行业的结合。然而,在区块链技术飞速发展的今天,区块链网络间的数据协同需求也在日益上升,由于不同区块链在底层架构、共识机制以及消息协议等方面的不同,导致区块链生态形成了“数据孤岛”的局面,无法进行数据交互。在现如今大量的联盟链应用场景中,跨链
学位