-
公开(公告)号:CN118260773A
公开(公告)日:2024-06-28
申请号:CN202410525501.5
申请日:2024-04-29
Applicant: 兰州交通大学
Abstract: 一种基于多关系图的源代码漏洞检测方法,其首先从标准漏洞数据库SARD和NVD数据集中切分得到C语言源代码数据集,借助Joern生成AST并取得其程序切片;其次,为了捕获AST的额外语法信息,使用编译器对AST添加携带额外信息的边进行扩展以增强其结构和连接性,然后将增强的AST转化为多关系图;最后,构建多关系图注意力网络学习嵌入向量。使用图注意力网络从源代码中提取多个代码关系,利用多关系图的邻接矩阵和初始节点表示学习全局嵌入向量,对其进行归一化并馈送到softmax层进行处理。本发明借助新设计的表征方式和多关系图聚合学习,能够为下游软件漏洞检测任务提供更优质的代码表示,从而实现准确、高效且更适用的漏洞检测方法。
-
公开(公告)号:CN118296612B
公开(公告)日:2024-11-01
申请号:CN202410495528.4
申请日:2024-04-24
Applicant: 兰州交通大学
IPC: G06F21/57 , G06F18/241 , G06N3/0464 , G06N3/08
Abstract: 一种基于序列和图双通道模型的源代码漏洞检测方法VulD‑SG,其首先从公开的源代码漏洞数据集MSR中切分得到C语言源代码数据集,使用Joern工具生成源代码的程序依赖图PDG并取得其程序切片;其次,构建一个双通道的局部模型模块,分为上下两个部分,上部分为基于序列的特征向量提取模型,下部分为基于图的特征向量提取模型。融合模型阶段将基于序列的特征向量提取模型和基于图的特征向量提取模型的输出使用全连接层连接,最后输出漏洞检测的结果。本发明有效解决了传统的基于序列模型缺少源代码结构信息和基于图模型缺少源代码语法语义信息的问题。此外,通过设计融合模型,提升了漏洞检测的准确率。
-
公开(公告)号:CN118296612A
公开(公告)日:2024-07-05
申请号:CN202410495528.4
申请日:2024-04-24
Applicant: 兰州交通大学
IPC: G06F21/57 , G06F18/241 , G06N3/0464 , G06N3/08
Abstract: 一种基于序列和图双通道模型的源代码漏洞检测方法VulD‑SG,其首先从公开的源代码漏洞数据集MSR中切分得到C语言源代码数据集,使用Joern工具生成源代码的程序依赖图PDG并取得其程序切片;其次,构建一个双通道的局部模型模块,分为上下两个部分,上部分为基于序列的特征向量提取模型,下部分为基于图的特征向量提取模型。融合模型阶段将基于序列的特征向量提取模型和基于图的特征向量提取模型的输出使用全连接层连接,最后输出漏洞检测的结果。本发明有效解决了传统的基于序列模型缺少源代码结构信息和基于图模型缺少源代码语法语义信息的问题。此外,通过设计融合模型,提升了漏洞检测的准确率。
-
-