VELVET: a noVel Ensemble Learning approach to automatically locate VulnErable sTatements
Yangruibo Ding, Sahil Suneja, Yunhui Zheng, Jim Laredo, Alessandro, Morari, Gail Kaiser, Baishakhi Ray

TL;DR
VELVET is an ensemble learning approach that combines graph-based and sequence-based neural networks to accurately locate vulnerable statements in source code, significantly outperforming existing static analyzers and neural models.
Contribution
The paper introduces VELVET, a novel ensemble neural network model that effectively captures code semantics for vulnerability localization, outperforming baseline methods on real-world and synthetic datasets.
Findings
VELVET achieves 4.5x better performance than static analyzers on real-world data.
VELVET attains 99.6% top-1 accuracy on synthetic data.
VELVET outperforms baseline deep-learning models by 5.3-29.0%.
Abstract
Automatically locating vulnerable statements in source code is crucial to assure software security and alleviate developers' debugging efforts. This becomes even more important in today's software ecosystem, where vulnerable code can flow easily and unwittingly within and across software repositories like GitHub. Across such millions of lines of code, traditional static and dynamic approaches struggle to scale. Although existing machine-learning-based approaches look promising in such a setting, most work detects vulnerable code at a higher granularity -- at the method or file level. Thus, developers still need to inspect a significant amount of code to locate the vulnerable statement(s) that need to be fixed. This paper presents VELVET, a novel ensemble learning approach to locate vulnerable statements. Our model combines graph-based and sequence-based neural networks to successfully…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Advanced Malware Detection Techniques · Software Reliability and Analysis Research
