Despite the successes of machine learning (ML) and deep learning (DL) based vulnerability detectors (VD), they are limited to providing only the decision on whether a given code is vulnerable or not, without details on what part of the code is relevant to the detected vulnerability. We present IVDetect an interpretable vulnerability detector with the philosophy of using Artificial Intelligence (AI) to detect vulnerabilities, while using Intelligence Assistant (IA) via providing VD interpretations in terms of vulnerable statements. For vulnerability detection, we separately consider the vulnerable statements and their surrounding contexts via data and control dependencies. This allows our model better discriminate vulnerable statements than using the mixture of vulnerable code and~contextual code as in existing approaches. In addition to the coarse-grained vulnerability detection result, we leverage interpretable AI to provide users with fine-grained interpretations that include the sub-graph in the Program Dependency Graph (PDG) with the crucial statements that are relevant to the detected vulnerability. Our empirical evaluation on vulnerability databases shows that IVDetect outperforms the existing DL-based approaches by 43%--84% and 105%--255% in top-10 nDCG and MAP ranking scores. IVDetect correctly points out the vulnerable statements relevant to the vulnerability via its interpretation~in 67% of the cases with a top-5 ranked list. It improves over baseline interpretation models by 12.3%--400% and 9%--400% in accuracy.


翻译:尽管机器学习(ML)和深层次学习(DL)基于脆弱性探测器(VD)取得了成功,但是它们仅限于就某一守则是否脆弱提供决定,而没有详细说明守则中哪些部分与所发现的脆弱性相关,而只是就某一守则是否脆弱的问题提供决定,我们提供了可解释的脆弱性探测器,其理论是使用人工智能(AI)来检测脆弱性,同时使用情报助理(IA)在脆弱陈述方面提供VD解释。关于脆弱性检测,我们分别通过数据和控制依赖性来考虑脆弱声明及其周围背景。这使我们的模型能够比利用现有方法中使用脆弱代码和~通则混合来更好地区分脆弱语句。除了粗略的脆弱程度检测结果外,我们还利用可解释性AI向用户提供精细的解释,其中包括方案依赖性图中的分图,其中的分解与所发现的脆弱性有关。我们通过脆弱性数据库的经验评估显示,现有DL(DL)法方法比使用脆弱程度代码和~通则使用现有版本代码的混合,而不是使用现有方法,比现有方法更好地区分脆弱程度混合,而不是使用脆弱代码和~通俗代码的混合。除了粗度检测结果外,我们可以利用了67-255的大赦国际,在最高10-10GDMDMDARDMDA的排名中,其最高判分级为4-255分级为4的缩缩取取了4至10-255分。

0
下载
关闭预览

相关内容

专知会员服务
61+阅读 · 2021年6月22日
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
151+阅读 · 2019年10月12日
强化学习最新教程,17页pdf
专知会员服务
174+阅读 · 2019年10月11日
【哈佛大学商学院课程Fall 2019】机器学习可解释性
专知会员服务
103+阅读 · 2019年10月9日
无监督元学习表示学习
CreateAMind
27+阅读 · 2019年1月4日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
Disentangled的假设的探讨
CreateAMind
9+阅读 · 2018年12月10日
vae 相关论文 表示学习 1
CreateAMind
12+阅读 · 2018年9月6日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
计算机视觉近一年进展综述
机器学习研究会
9+阅读 · 2017年11月25日
Capsule Networks解析
机器学习研究会
11+阅读 · 2017年11月12日
【论文】图上的表示学习综述
机器学习研究会
14+阅读 · 2017年9月24日
Auto-Encoding GAN
CreateAMind
7+阅读 · 2017年8月4日
Arxiv
16+阅读 · 2018年2月7日
Arxiv
4+阅读 · 2017年11月14日
VIP会员
相关VIP内容
专知会员服务
61+阅读 · 2021年6月22日
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
151+阅读 · 2019年10月12日
强化学习最新教程,17页pdf
专知会员服务
174+阅读 · 2019年10月11日
【哈佛大学商学院课程Fall 2019】机器学习可解释性
专知会员服务
103+阅读 · 2019年10月9日
相关资讯
无监督元学习表示学习
CreateAMind
27+阅读 · 2019年1月4日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
Disentangled的假设的探讨
CreateAMind
9+阅读 · 2018年12月10日
vae 相关论文 表示学习 1
CreateAMind
12+阅读 · 2018年9月6日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
计算机视觉近一年进展综述
机器学习研究会
9+阅读 · 2017年11月25日
Capsule Networks解析
机器学习研究会
11+阅读 · 2017年11月12日
【论文】图上的表示学习综述
机器学习研究会
14+阅读 · 2017年9月24日
Auto-Encoding GAN
CreateAMind
7+阅读 · 2017年8月4日
Top
微信扫码咨询专知VIP会员