自动漏洞检测的机器学习极限
利用机器学习和深度神经网络,针对 C++ 程序开发了一种基于数据驱动的漏洞检测方法,研究结果表明结合源代码和神经网络特征,可以获得更可靠的漏洞检测结果,最高检测能力达到 0.87。
Feb, 2018
研究了软件项目中不同因素对于识别漏洞的准确性的影响,通过挖掘软件库中的漏洞并使用机器学习技术进行自动检测。通过实验发现,将基于词袋模型的签名与随机森林模型相结合,在 17 个真实世界项目中能提高 4% 的检测准确率,并观察到在跨域中转移漏洞签名的局限性。
Jun, 2024
探讨了利用深度学习进行漏洞检测的现有技术面临的软件安全领域中高误报、高漏报且性能损失严重的问题,通过收集真实的训练数据和优化模型设计,实现了更好的自动化漏洞预测解决方案,取得了显著优于现有最好模型的预测性能。
Sep, 2020
通过对最新的语言模型的能力进行评估,研究了该模型在其训练数据中所使用的编程语言之外的领域的普适性,并检查了自然语言指令在提高这种普适性中的作用。研究通过对真实数据集的模型性能进行评估,以预测代码的脆弱性,从而对于深度学习在软件脆弱性检测中的应用作出了重要贡献。
Jan, 2024
这项研究利用 C/C++ 开源代码,使用机器学习开发了一个基于函数级别的漏洞检测系统,并使用三个定位潜在攻击的静态分析器精心筛选标注了数百万个开源函数的数据集。研究表明深度学习源代码的特征表示法是一种自动化软件漏洞检测的有前途的方法。
Jul, 2018
通过使用大型语言模型(LLMs)来辅助发现源代码中的漏洞,相比传统的静态分析工具,我们发现 LLMs 能够找出更多问题,提高漏洞检测的回溯率和 F1 分数,从而使得代码更加安全。
May, 2024
在代码语言模型(Code LMs)和漏洞检测不断增长的兴趣下,我们研究了代码语言模型在漏洞检测方面的有效性。研究发现现有漏洞数据集存在重要不足,包括数据质量不高、标签准确性低和重复率高,导致模型在现实漏洞检测场景中的性能不可靠。为解决这些挑战,我们引入了 PrimeVul 数据集,用于训练和评估代码语言模型在漏洞检测方面的性能。通过对 PrimeVul 上的代码语言模型进行评估,发现现有基准明显高估了这些模型的性能。这些发现强调了当前能力和在安全角色中部署代码语言模型的实际需求之间存在的巨大差距,突出了在这一领域需要更多创新的研究。
Mar, 2024
通过创建新的测试方法,我们评估了针对一组已知的 Benign & Malicious 文件执行敌对修改并评估性能变化的变化以及逃避技术,从而依靠实验证明了仅基于 ML 的系统可以比 AV 产品更有效地检测到试图通过修改来逃避的恶意软件,但在面临显着的新型攻击时可能反应较慢。
Jun, 2018