基于深度学习的软件脆弱性检测研究

来源 :军事科学院 | 被引量 : 1次 | 上传用户:chenhang
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
软件的脆弱性是软件自身存在的安全缺陷,因软件的错误行为引发的安全故障,软件的脆弱性检测就是找到并识别出软件的安全故障。随着现代软件规模的不断增加和程序复杂度的逐步演化,软件开源逐渐成为主流的开发趋势,目前开源软件的脆弱性定位方法仍以人工检测为主,程序开发人员通过检查软件源代码来定位漏洞所在的位置。然而单单依靠手动分析找出所有的代码缺陷与软件漏洞几乎是不可能实现的,并且基于人工的软件脆弱性检测方法因耗时久、效率低等问题的影响,已无法满足现代软件的发展需求,从而导致了较高的人力成本开销、误报和漏报等问题也频繁出现。近年来,深度神经网络技术在解决特定领域知识问题上表现出了巨大潜力,研究人员开始将深度学习算法引入到恶意代码检测和软件脆弱性分析的研究中。本文在深度学习的软件脆弱性检测研究的基础上,提出了基于预训练上下文编码器的程序表示学习方法和基于自注意力机制的混合网络模型用于脆弱性代码分类,并在以上两种方法的基础上进一步提出了一款基于深度学习的软件脆弱性自动化检测系统。通过设计实现与多种模型和软件安全检测工具的实验对比,验证了上述研究成果的有效性,本文的创新工作如下:(1)为解决软件脆弱性的表征难题,本文提出了基于预训练上下文编码器的程序表示学习方法。程序表示学习是基于深度学习的软件脆弱性检测研究的核心,传统的表示方法无法捕获上下文语义的信息,由于没有考虑到前后语义的关联信息,导致嵌入模型的泛化性能不足。与传统的静态文本单词和段落的嵌入模型不同,本方法基于转换器的双向编码表征模型,设计了一款将词嵌入、句嵌入和位置嵌入三者融合的向量化方法,该方法能够高质量的捕获代码间的语法和语义信息,同时有效地解决了样本由于词汇稀疏产生的高维问题,其对软件的脆弱性特征提取性能优于传统语义表征方法。(2)为提升脆弱性代码分类算法的精度,本文提出了基于自注意力机制的混合网络用于软件脆弱性分类。针对代码脆弱性特征分类问题,研究发现与单一的循环神经网络分类器相比,添加注意力机制的融合网络模型可以有效提高隐藏层的训练效果,模型内部主要由向量化数据输入层、信息特征提取层、注意力机制层、分类层和输出层等五部分构成,该方法可以进一步实现对代码间长期依赖关系的学习,提高对软件脆弱性信息的提取质量。在与LSTM网络、GRU-attention网络和朴素贝叶斯网络三种神经网络的对比实验中,该方法对软件脆弱性的自动化检测性能优于其他三种分类模型。(3)为保证基于深度学习的软件脆弱性检测研究的完整性和实用性,本文在以上两种成果的基础上,设计并实现了一款基于深度学习的软件脆弱性自动化检测系统,并与商用软件检测工具Flawfinder、代码克隆检测系统VUDDY和基于深度学习的漏洞检测系统Vuldeepecker三种安全检测工具进行了实验对比,对比实验表明,本文提出的系统对软件脆弱性的自动化检测性能表现突出。实验评价指标表明,本系统比目前较为先进的基于深度学习的软件脆弱性自动化检测系统的F1值高出7.2%,精度值高出2.6%。
其他文献
在如今愈加激烈的大国博弈环境中,取得对太空的主导权俨然可以左右战略博弈的天平。而在轨服务、编队飞行、深空探测等复杂的空间任务都需要自主导航和相对导航等精确的航天器状态估计技术。航天器状态估计精度与传感器精度和滤波算法息息相关。一方面,发展火热的微小卫星星座及编队往往采用低成本和低精度的敏感器,这必然带来更严重的噪声水平,对导航算法的性能是一个大的挑战;另一方面,现有航天器状态估计方法大都基于高斯假
学位
背景:近年来,中国社会取得巨大发展,人民生活水平不断提高,油脂摄入增多,伴随而来的是高血脂患者增加。血脂主要由胆固醇及甘油三酯组成,虽然胆固醇在体内发挥重要作用,但其过高的水平已经公认是诱发冠心病、动脉粥样硬化、脑卒中等心脑血管疾病的重要因素,如何降低血胆固醇水平成为医学研究关注的重点之一。目的:目前,药物治疗是国内外降低胆固醇的主流方式,但其费用较高,同时存在肌溶解、肝损伤、糖尿病、消化道反应、
学位
随着各国对海洋资源的不断开发与利用,水下传感器网络(Underwater Sensor Networks,UWSNs)逐渐成为海洋工程领域的研究热点。而水下目标被动定位技术作为UWSNs的关键技术而备受重视。与陆地定位系统不同,由于水下环境的特殊性,电磁波信号较难覆盖水下空间,因此,对水下目标被动定位算法的选择提出了更高的要求。本文利用声信号获取观测参量,针对水下传感器网络不同定位场景下的定位原理
学位
除草剂CLP的大量生产及在农业生产中的广泛应用,严重地威胁生态水体系统。CLP具有广谱抑菌特性和抗生物降解性,进入污水处理工艺中会对主流脱氮工艺造成潜在影响,而CLP胁迫下反硝化脱氮性能与微生物响应机制是未知的。因此本课题通过批次实验和连续进水反应器分别探讨了CLP短期和长期胁迫下反硝化脱氮性能变化。结合分子生物学手段,解析了CLP对微生物细胞的毒性作用和代谢活性的影响及微生物群落结构与功能的演替
学位
作为社会最基本的组织单位,家庭在满足老人经济支持、生活照护、精神慰藉等养老需求中发挥着重要作用,是其他养老模式所无法替代的。然而,伴随着家庭结构趋向小型化、人口跨区域流动、思想观念转变等社会变迁,传统的家庭养老功能逐渐式微,并呈现加速弱化的趋势。因此,在厘清家庭养老功能变迁轨迹的基础上,可对我国家庭养老现实困境进行剖析,并提出有利于家庭养老功能重塑的对策建议,以期为缓解我国老龄化压力、促进家庭关系
期刊
随着大数据处理技术的发展,基于深度学习的目标检测方法广泛应用于视频监控、自动驾驶、医学图像分析、人脸识别、遥感图像分析等领域。由于传统相机在高速运动和极端光照场景下会产生运动模糊和过曝欠曝现象,导致目标检测算法失效,拥有高动态范围、高时间分辨率等特性的事件相机为复杂条件下的目标检测算法研究提供了新的方向。目前,基于事件相机的目标检测算法面临的重要挑战问题是,如何充分利用事件相机输出的事件序列的特有
学位
目前航天任务的发展逐渐多样化,以在轨服务技术为代表的空间任务不断增加。在航天器在轨服务的任务执行过程中,首先要在保证服务航天器和目标不发生碰撞的情况下对目标实施接近。由于航天器本身的易损性和目标可能存在的非合作性,对服务航天器接近过程中的控制技术提出了较高的要求。同时航天器的安全接近控制方法在其他空间操作任务中具有非常重要的意义。本文以空间目标在轨操作为研究背景,研究了对空间碎片等障碍物和失控的非
学位
在机械臂的设计与制造中,借助仿生思想是一种重要思路。肌肉是驱动人体关节活动的主要驱动器,作为一类生物软材料,肌肉对于软体机械臂的研发起着借鉴作用,而肌肉力学模型的建立对于探索生物肌肉作动机理的研究是十分重要的。近年来,随着仿生控制的机械臂尤其是人工肌肉驱动的智能机械臂的广泛使用,分析生物骨骼肌作动原理、建立力学模型将对机械臂的设计工作提供参考依据。本文以分析肌肉力学特性,建立体现肌肉时变作动力特性
学位
近年来,随着强化学习方法在各个领域所取得的显著成绩,如何优化强化学习方法的学习过程得到了越来越多的关注。由于强化学习的学习机制,智能体需要在学习过程中不断试错,利用收集到的样本积累经验,更新自身策略。在强化学习算法的应用中,由环境状态特征不明确、回报值稀疏、样本质量低、探索空间过大等所导致的学习效率低下问题成为强化学习所面临的一大挑战。人工势场法所提供的势函数可以形式化地表示当前观测状态中的态势分
学位
军事指标作为评价军事领域发展状况的重要标准,在评估军事发展现状和指导发展方向等方面具有重要作用。当前军事领域指标主要依靠专家通过对评价对象深入研究后提出,其构建过程给领域专家带来大量繁琐的工作并且效率不高,没有一个有力的辅助工具对专家构建军事指标提供支撑。因此,本文提出将历史积累的军事指标进行系统分类、有效组织,为构建新的军事指标体系提供参考,提升军事指标体系的构建效率,为领域专家提供有力辅助。本
学位