The detection of software vulnerabilities (or vulnerabilities for short) is an important problem that has yet to be tackled, as manifested by the many vulnerabilities reported on a daily basis. This calls for machine learning methods for vulnerability detection. Deep learning is attractive for this purpose because it alleviates the requirement to manually define features. Despite the tremendous success of deep learning in other application domains, its applicability to vulnerability detection is not systematically understood. In order to fill this void, we propose the first systematic framework for using deep learning to detect vulnerabilities in C/C++ programs with source code. The framework, dubbed Syntax-based, Semantics-based, and Vector Representations (SySeVR), focuses on obtaining program representations that can accommodate syntax and semantic information pertinent to vulnerabilities. Our experiments with 4 software products demonstrate the usefulness of the framework: we detect 15 vulnerabilities that are not reported in the National Vulnerability Database. Among these 15 vulnerabilities, 7 are unknown and have been reported to the vendors, and the other 8 have been "silently" patched by the vendors when releasing newer versions of the pertinent software products.


翻译:软件脆弱性(或短期脆弱性)的发现是一个尚未解决的重要问题,每天报告的许多脆弱性就表明了这一点。这要求用机器学习方法来检测脆弱性。深层次的学习在这方面具有吸引力,因为它减轻了手动界定特征的要求。尽管在其他应用领域深层学习的巨大成功,但是它对于脆弱性检测的适用性没有得到系统的理解。为了填补这一空白,我们提议了第一个系统框架,用于利用深层学习在C/C+++程序中使用源代码来检测脆弱性。称为语法、语法和矢量表示(SySeVR)的框架,重点是获得能够容纳与脆弱性有关的合成和语义信息的节目表述。我们用4个软件产品进行的实验证明了框架的有用性:我们发现了15个在国家脆弱性数据库中未报告的弱点。在这15个弱点中,7个未知,并向供应商报告,其他8个是供应商在发布相关软件产品新版本时“隐蔽”的。

1
下载
关闭预览

相关内容

Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
145+阅读 · 2019年10月12日
开源书:PyTorch深度学习起步
专知会员服务
50+阅读 · 2019年10月11日
强化学习最新教程,17页pdf
专知会员服务
171+阅读 · 2019年10月11日
2019年机器学习框架回顾
专知会员服务
35+阅读 · 2019年10月11日
机器学习入门的经验与建议
专知会员服务
91+阅读 · 2019年10月10日
【哈佛大学商学院课程Fall 2019】机器学习可解释性
专知会员服务
101+阅读 · 2019年10月9日
GAN新书《生成式深度学习》,Generative Deep Learning,379页pdf
专知会员服务
199+阅读 · 2019年9月30日
Transferring Knowledge across Learning Processes
CreateAMind
26+阅读 · 2019年5月18日
已删除
德先生
53+阅读 · 2019年4月28日
无监督元学习表示学习
CreateAMind
26+阅读 · 2019年1月4日
Unsupervised Learning via Meta-Learning
CreateAMind
41+阅读 · 2019年1月3日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
16+阅读 · 2018年12月24日
人工智能 | 国际会议信息10条
Call4Papers
5+阅读 · 2018年12月18日
机器人开发库软件大列表
专知
10+阅读 · 2018年3月18日
人工智能 | 国际会议截稿信息9条
Call4Papers
4+阅读 · 2018年3月13日
人工智能 | 国际会议/SCI期刊约稿信息9条
Call4Papers
3+阅读 · 2018年1月12日
【今日新增】IEEE Trans.专刊截稿信息8条
Call4Papers
7+阅读 · 2017年6月29日
Arxiv
0+阅读 · 2021年3月9日
Deep Learning for Energy Markets
Arxiv
9+阅读 · 2019年4月10日
Few-shot Learning: A Survey
Arxiv
362+阅读 · 2019年4月10日
Deep Learning for Generic Object Detection: A Survey
Arxiv
13+阅读 · 2018年9月6日
A Survey on Deep Transfer Learning
Arxiv
11+阅读 · 2018年8月6日
VIP会员
相关VIP内容
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
145+阅读 · 2019年10月12日
开源书:PyTorch深度学习起步
专知会员服务
50+阅读 · 2019年10月11日
强化学习最新教程,17页pdf
专知会员服务
171+阅读 · 2019年10月11日
2019年机器学习框架回顾
专知会员服务
35+阅读 · 2019年10月11日
机器学习入门的经验与建议
专知会员服务
91+阅读 · 2019年10月10日
【哈佛大学商学院课程Fall 2019】机器学习可解释性
专知会员服务
101+阅读 · 2019年10月9日
GAN新书《生成式深度学习》,Generative Deep Learning,379页pdf
专知会员服务
199+阅读 · 2019年9月30日
相关资讯
Transferring Knowledge across Learning Processes
CreateAMind
26+阅读 · 2019年5月18日
已删除
德先生
53+阅读 · 2019年4月28日
无监督元学习表示学习
CreateAMind
26+阅读 · 2019年1月4日
Unsupervised Learning via Meta-Learning
CreateAMind
41+阅读 · 2019年1月3日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
16+阅读 · 2018年12月24日
人工智能 | 国际会议信息10条
Call4Papers
5+阅读 · 2018年12月18日
机器人开发库软件大列表
专知
10+阅读 · 2018年3月18日
人工智能 | 国际会议截稿信息9条
Call4Papers
4+阅读 · 2018年3月13日
人工智能 | 国际会议/SCI期刊约稿信息9条
Call4Papers
3+阅读 · 2018年1月12日
【今日新增】IEEE Trans.专刊截稿信息8条
Call4Papers
7+阅读 · 2017年6月29日
Top
微信扫码咨询专知VIP会员