一.背景
漏洞检测具有重大的意义,针对DLVP(Deep Learning Vulnerability detection)任务,作者在对现有的漏洞检测方法(VulDeepecker, SyScVR)等测试时发现了一些问题。
在sard等合成数据集训练的模型用在真实场景下(FFMPeg, Qemu, Linux等)效果很差
在用解释方法(LEMNA等)来解释漏洞检测方法时经常发现模型学习到了无关的特征
训练/测试数据包含了许多重复
现有的方法没有解决样本类别不平衡问题
论文贡献
提出了新的漏洞检测方法Reveal
利用Chromium和Debian的修复commit构造数据集
二.数据集
2.1 现有数据集
针对数据集,作者统计的一些结果
有合成,半合成,真实 & 类别平衡, 真实 & 类别不平衡
合成类:包括Juliet。使用已知漏洞pattern构造。
半合成:包括SARD和NVD。它们是从软件产品中提取,并做了一定修改。
真实:从代码仓库(github)的commit中提取,来自一些bug fix版本。
2.2 Reveal数据集
从Linux De ...
VulDeePecker:基于深度学习的漏洞检测系统