用于漏洞检测的两阶段深度学习模型
密码学与安全
2023-05-18 v1 人工智能
机器学习
摘要
应用安全是开发现代软件的重要组成部分,因为许多攻击依赖于软件中的漏洞。由于技术进步,全球攻击数量正在增加。公司必须在其软件开发、测试和部署的每个阶段都纳入安全性,以防止数据泄露。有若干检测软件漏洞的非 AI 方法,如静态应用安全测试(SAST)和动态应用安全测试(DAST)。然而,这些方法有显著的误报率和漏报率。另一方面,研究人员一直有兴趣开发采用 BERT、BLSTM 等深度学习模型的基于 AI 的漏洞检测系统。在本文中,我们提出了一种两阶段解决方案,针对 C/C++ 源代码中的漏洞检测提出了两个深度学习模型:第一阶段是 CNN,检测源代码是否包含任何漏洞(二分类模型);第二阶段是 CNN-LTSM,将该漏洞分类为 50 种不同类型漏洞中的一类(多分类模型)。实验在 SySeVR 数据集上进行。结果显示第一阶段准确率为 99%,第二阶段为 98%。
引用
@article{arxiv.2305.09673,
title = {Vulnerability Detection Using Two-Stage Deep Learning Models},
author = {Mohamed Mjd Alhafi and Mohammad Hammade and Khloud Al Jallad},
journal= {arXiv preprint arXiv:2305.09673},
year = {2023}
}