How the Training Procedure Impacts the Performance of Deep Learning-based Vulnerability Patching

2024年04月27日
  • 简介
    生成式深度学习(DL)模型已成功用于漏洞修补。然而,这种模型需要可供学习的大量补丁数据集。为了解决这个问题,研究人员提出了从预先训练的具有一般知识的模型开始,无论是在编程语言上还是在类似的任务,如漏洞修复方面。尽管在自动漏洞修补领域做出了努力,但缺乏系统研究这些不同的训练程序如何影响DL模型在这种任务中的性能。本文通过比较自我监督和监督预训练的现有解决方案,并首次尝试不同类型的提示调整来弥补这一差距,提供了多方面的贡献。该研究需要训练/测试23个DL模型。我们发现,针对漏洞修复的有监督预训练,虽然在数据收集方面昂贵,但大大提高了基于DL的漏洞修补。当在这种有监督预训练模型的基础上应用提示调整时,性能没有显著提高。相反,提示调整是一种有效且廉价的解决方案,可以大大提高自我监督预训练模型的性能,即不依赖于漏洞修补预训练的模型。
  • 作者讲解
  • 图表
  • 解决问题
    本论文旨在解决使用深度学习模型进行漏洞修补时需要大量数据集的问题,尝试通过预训练模型来解决这一问题,并对不同的预训练方法进行了比较和实验验证。
  • 关键思路
    论文的关键思路是使用预训练模型来解决漏洞修补的数据集不足的问题,通过对不同的预训练方法进行比较和实验验证,发现以bug-fixing为重点的有监督预训练方法可以显著提高漏洞修补的性能,而prompt-tuning则可以有效地提高无监督预训练模型的性能。
  • 其它亮点
    论文通过实验对比了不同的预训练方法对漏洞修补性能的影响,发现以bug-fixing为重点的有监督预训练方法可以显著提高性能,而prompt-tuning则可以有效地提高无监督预训练模型的性能。论文使用了23个深度学习模型进行训练和测试,实验结果表明了不同预训练方法的优劣。论文的实验数据集和代码都已经开源。值得继续深入研究的工作包括如何进一步提高漏洞修补的性能和如何更好地利用预训练模型。
  • 相关研究
    最近在这个领域中,还有一些相关的研究,例如:“DeepVulnerabilityPrediction: Deep Learning Models for Software Vulnerability Prediction”和“Deep Learning for Vulnerability Prediction in Source Code: An Empirical Study”等。
许愿开讲
PDF
原文
点赞 收藏
向作者提问
NEW
分享到Link

提问交流

提交问题,平台邀请作者,轻松获得权威解答~

向作者提问