基于程序语义与度量的代码缺陷检测

卢跃, 嵇友晴, 周礼亮, 吕青, 张迎周

中北大学学报(自然科学版) ›› 2025, Vol. 46 ›› Issue (01) : 105 -115.

PDF
中北大学学报(自然科学版) ›› 2025, Vol. 46 ›› Issue (01) : 105 -115.

基于程序语义与度量的代码缺陷检测

    卢跃, 嵇友晴, 周礼亮, 吕青, 张迎周
作者信息 +

Author information +
文章历史 +
PDF

摘要

软件中存在的代码缺陷严重影响了软件用户使用的体验感和安全性,传统的代码缺陷检测方法存在准确率较低的问题,而结合深度学习的现有方法的检测粒度较粗,检测效果也不够理想。为此,本文提出了一种基于程序语义与度量的代码缺陷检测方法。该方法采用基于LLVM IR的代码缺陷的兴趣点检测算法,使用轻量级符号化程序切片工具SymPas获取与缺陷兴趣点相关的程序切片。通过预训练模型将程序切片代码片段转化为向量表示,并融合指令级切片度量——认知复杂度度量,深入分析了切片语句之间的关系和特征。通过构建混合模型ResCNN-GRU进行训练,将提取的特征进行了有效融合和学习。实验结果表明,本文利用符号化程序切片技术细化了漏洞检测的粒度,在中间表示LLVM IR下融合的语义和度量信息能更好地表示缺陷代码语句间的关系和特征,构建的混合模型一定程度上解决了时间序列问题以及样本数量不均衡问题,相比其他先进方法,本文方法的准确率达到了94.1%。

关键词

预训练模型 / 程序切片 / 切片认知域 / 残差网络 / 卷积神经网络 / 门控制神经网络

Key words

引用本文

引用格式 ▾
基于程序语义与度量的代码缺陷检测[J]. 中北大学学报(自然科学版), 2025, 46(01): 105-115 DOI:

登录浏览全文

4963

注册一个新账户 忘记密码

参考文献

AI Summary AI Mindmap
PDF

63

访问

0

被引

详细

导航
相关文章

AI思维导图

/