Direction for Detection: A Survey of Automated Vulnerability Detection and all of its Pain Points
Not on the map. Why?
Abstract (arXiv)
Security vulnerabilities in software can have severe consequences; however, manual vulnerability detection is costly and does not scale, especially as agentic coding frameworks increase the rate of code production. Over the last decade, a large body of research has applied machine learning machine learning to automate vulnerability detection (ML4AVD), yet self-reported performance on the most popular datasets shows no clear upward trend. The ML4AVD research community has identified several flaws in problem formulations, datasets, and metrics, but these are discussed in isolation, leaving the overarching problems that generate and reinforce these flaws unaddressed. We first systematize the field through a survey of 87 influential works based on their problem formulation, input and detection granularity, target programming languages, evaluation metrics, datasets, and detection approach. Drawing on this corpus and prior empirical work, we identify twelve pain points spanning the ML4AVD pipeline and show that they are self-reinforcing and causally inter-meshed: feedback loops between datasets, formulations, baselines, and metrics perpetuate each other and explain the field's persistent concentration on binary classification of C/C++ vulnerabilities at the function level. Thus, the field optimizes for a narrow and artificial problem that omits vulnerability type prediction, broader language support, and separation of input from detection granularity. We pair each pain point with concrete recommendations to break these loops. Finally, we use AIxCC as a case study to assess how well a recent high-profile effort aligns with these recommendations and reflect on the relevance of ML4AVD in the era of agentic AI.
Key facts. No citing papers in the map yet (data through 14 Oct 2026). Builds on 80 of its 213 references that are in the map. First posted on arXiv 15 Dec 2024.
Builds on
80 of 213 references.
References · 80
- 2017Attention Is All You Needcited by 60,361
- 2018BERT: Pre-training of Deep Bidirectional Transformers for Language Understandingcited by 40,399
- 2017A Unified Approach to Interpreting Model Predictionscited by 6,555
- 2016"Why Should I Trust You?": Explaining the Predictions of Any Classifiercited by 5,070
- 2013Distributed Representations of Words and Phrases and their Compositionalitycited by 3,474
- 2014Empirical Evaluation of Gated Recurrent Neural Networks on Sequence Modelingcited by 2,367
- 2022Beyond the Imitation Game: Quantifying and extrapolating the capabilities of language modelscited by 1,998
- 2020CodeBERT: A Pre-Trained Model for Programming and Natural Languagescited by 1,310
- 2023Language Models Don't Always Say What They Think: Unfaithful Explanations in Chain-of-Thought Promptingcited by 1,122
- 2021CodeXGLUE: A Machine Learning Benchmark Dataset for Code Understanding and Generationcited by 744
- 2019GNNExplainer: Generating Explanations for Graph Neural Networkscited by 737
- 2014Distributed Representations of Sentences and Documentscited by 678
38 more
- 2020Parameterized Explainer for Graph Neural Networkcited by 426
- 2020Evaluation: from precision, recall and F-measure to ROC, informedness, markedness and correlationcited by 425
- 2022UniXcoder: Unified Cross-Modal Pre-training for Code Representationcited by 361
- 2023Explainability for Large Language Models: A Surveycited by 333
- 2020A Brief Review of Domain Adaptationcited by 288
- 2019Devign: Effective Vulnerability Identification by Learning Comprehensive Program Semantics via Graph Neural Networkscited by 272
- 2020Deep Learning based Vulnerability Detection: Are We There Yet?cited by 144
- 2024Vulnerability Detection with Code Language Models: How Far Are We?cited by 139
- 2018The Adverse Effects of Code Duplication in Machine Learning Models of Codecited by 126
- 2024Generalization or Memorization: Data Contamination and Trustworthy Evaluation for Large Language Modelscited by 122
- 2018Automated Vulnerability Detection in Source Code Using Deep Representation Learningcited by 114
- 2018TESSERACT: Eliminating Experimental Bias in Malware Classification across Space and Timecited by 108
- 2017Unsupervised Learning of Sentence Embeddings using Compositional n-Gram Featurescited by 104
- 2024IRIS: LLM-Assisted Static Analysis for Detecting Security Vulnerabilitiescited by 103
- 2020Dos and Don'ts of Machine Learning in Computer Securitycited by 102
- 2023DiverseVul: A New Vulnerable Source Code Dataset for Deep Learning Based Vulnerability Detectioncited by 102
- 2023LLMs Cannot Reliably Identify and Reason About Security Vulnerabilities (Yet?): A Comprehensive Evaluation, Framework, and Benchmarkscited by 97
- 2018SySeVR: A Framework for Using Deep Learning to Detect Software Vulnerabilitiescited by 92
- 2021CVEfixes: Automated Collection of Vulnerabilities and Their Fixes from Open-Source Softwarecited by 91
- 2024Vul-RAG: Enhancing LLM-based Vulnerability Detection via Knowledge-level RAGcited by 68
- 2023Understanding the Effectiveness of Large Language Models in Detecting Security Vulnerabilitiescited by 59
- 2021Vulnerability Detection with Fine-grained Interpretationscited by 56
- 2022VulBERTa: Simplified Source Code Pre-Training for Vulnerability Detectioncited by 51
- 2023Data Quality for Software Vulnerability Datasetscited by 51
- 2023Prompt-Enhanced Software Vulnerability Detection Using ChatGPTcited by 51
- 2021D2A: A Dataset Built for AI-Based Vulnerability Detection Methods Using Differential Analysiscited by 49
- 2022An Empirical Study of Deep Learning Models for Vulnerability Detectioncited by 46
- 2024Large Language Model for Vulnerability Detection: Emerging Results and Future Directionscited by 45
- 2024Large Language Model for Vulnerability Detection and Repair: Literature Review and the Road Aheadcited by 42
- 2020VulDeeLocator: A Deep Learning-based Fine-grained Vulnerability Detectorcited by 37
- 2024ReposVul: A Repository-Level High-Quality Vulnerability Datasetcited by 36
- 2022LineVD: Statement-level Vulnerability Detection using Graph Neural Networkscited by 35
- 2018Automated software vulnerability detection with machine learningcited by 34
- 2023Continuous Learning for Android Malware Detectioncited by 33
- 2021ReGVD: Revisiting Graph Neural Networks for Vulnerability Detectioncited by 32
- 2023Uncovering the Limits of Machine Learning for Automatic Vulnerability Detectioncited by 30
- 2024Top Score on the Wrong Exam: On Benchmarking in Machine Learning for Vulnerability Detectioncited by 28
- 2024MegaVul: A C/C++ Vulnerability Dataset with Comprehensive Code Representationcited by 27
50 most cited of 80 All 80 (JSON)
Built on by
Not cited yet.
Similar, not cited
Close in wording, no citation either way
- 2023Learning to Quantize Vulnerability Patterns and Match to Locate Statement-Level Vulnerabilities
- 2025White-Basilisk: A Hybrid Model for Code Vulnerability Detection
- 2026VulnGym: Benchmarking Coding Agents for Repository-Level Vulnerability Detection
- 2026PromptAudit: Auditing Prompt Sensitivity in LLM-Based Vulnerability Detection
- 2025Automated Vulnerability Validation and Verification: A Large Language Model Approach
- 2025Boosting Vulnerability Detection of LLMs via Curriculum Preference Optimization with Synthetic Reasoning Data
- 2025AVIATOR: Towards AI-Agentic Vulnerability Injection Workflow for High-Fidelity, Large-Scale Code Security Dataset
- 2026VulTriage: Triple-Path Context Augmentation for LLM-Based Vulnerability Detection