基本信息
摘要
深度学习模型在漏洞检测领域得到了广泛应用。基于深度学习的漏洞检测方法可以自动学习代码模式。有些方法将代码处理为文本序列,以实现可扩展的漏洞检测。它们利用自然的语言处理模型来提取代码特征。这些方法不考虑代码的语义结构,并将代码切片视为文本。基于图结构和图神经网络的漏洞检测方法比基于文本的方法更准确。但是,这些方法在实践中缺乏可扩展性。图表生成和图神经网络培训都很耗时。我们提出了一种基于图和图像的漏洞检测方法(VulGAI)。VulGAI选择更合理的节点中心度来生成图像。它可以保留程序细节,并从不同的角度区分节点重要性。此外,我们设计了一个更高效的CNN模型,它减少了计算开销,提高了检测性能(时间和准确性)。我们实现VulGAI并评估六种方法(VulDePecker、SySeVR、Devign、VulCNN、mVulPreter和VulGAI)40,657个函数。实验结果表明,VulGAI在精度、TPR和F1-Score方面均有较高的表现。此外,我们在30270个真实世界函数上比较了VulGAI和VulCNN。VulGAI的TP数是VulCNN的1.48倍。VulGAI在检测时间上比VulCNN快3.9倍。
关键点
节点中心性选择和高效CNN

最低0.47元/天 解锁文章
3750





