【技术实现步骤摘要】
本专利技术属于计算机安全,具体涉及一种可学习的层次化图表示源代码漏洞检测系统及方法。
技术介绍
1、在软件开发过程中,开发人员可能因疏忽或编程语言的内在缺陷而引入漏洞,这种情况几乎不可避免。
2、传统的漏洞检测方法主要依赖于人类专家制定的规则。然而,传统方法在灵活性和全面性上不足,难以有效应对多样化的安全威胁。当前研究中,结合机器学习技术,特别是深度学习、强化学习和人工神经网络等在漏洞检测领域的应用受到了广泛关注。这些先进技术的融入为漏洞检测带来了新的可能性,使检测方法不仅更加高效,还能更好地适应和识别新的安全威胁。
3、在基于深度学习的漏洞检测方法中,源代码的表征方式有多种,如基于图表征、基于文本表征、基于抽象语法树表征等。其中,基于图的表征方式能够对代码的语法信息、语义信息、控制流、数据流等信息进行深层次的表征,因此基于图表征的方法在漏洞检测领域受到广泛使用及关注,成为当下研究的热点。现阶段将图神经网络模型用于漏洞检测,尚未建立成熟的体系。大多数应用只是简单使用图学习领域已有的模型,并没有针对漏洞代码自身特点
...【技术保护点】
1.一种可学习的层次化图表示源代码漏洞检测系统,其特征在于,包括代码图表征处理模块、代码语义提取模块和漏洞检测模型;所述代码图表征提取模块用于对代码进行清理,删除代码中无效的注释信息,并对代码进行符号化处理,使用静态程序分析工具提取代码中的图结构信息;所述代码语义提取模块用于从源代码中提取词token,并通过Word2Vec技术将代码中的词映射到高维向量空间中,对源代码进行向量化表示;所述漏洞检测模型包括对比损失计算模块和可学习的图读出模块,所述对比损失计算模块用于在漏洞检测模型的训练过程中,能够在学习如何有效地压缩和表征图的同时,保留对分类任务至关重要的细粒度局部块
...【技术特征摘要】
1.一种可学习的层次化图表示源代码漏洞检测系统,其特征在于,包括代码图表征处理模块、代码语义提取模块和漏洞检测模型;所述代码图表征提取模块用于对代码进行清理,删除代码中无效的注释信息,并对代码进行符号化处理,使用静态程序分析工具提取代码中的图结构信息;所述代码语义提取模块用于从源代码中提取词token,并通过word2vec技术将代码中的词映射到高维向量空间中,对源代码进行向量化表示;所述漏洞检测模型包括对比损失计算模块和可学习的图读出模块,所述对比损失计算模块用于在漏洞检测模型的训练过程中,能够在学习如何有效地压缩和表征图的同时,保留对分类任务至关重要的细粒度局部块结构信息;所述可学习的图读出模块用于将可训练的cls节点与所有其他节点建立连...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。