Evaluating Line-level Localization Ability of Learning-based Code Vulnerability Detection Models
Marco Pintore, Giorgio Piras, Angelo Sotgiu, Maura Pintor, Battista Biggio
TL;DR
ML vulnerability detectors frequently localize at the function level rather than pinpointing exact vulnerable lines. The authors introduce Detection Alignment (DA), an explainability-based evaluation that uses line-level attributions and a Jaccard-style metric to quantify alignment between influential lines and ground-truth vulnerable lines. DA is model-agnostic and applied to three transformer-based detectors across three datasets (BigVul, Devign, PrimeVul), revealing consistent misalignment due to spurious correlations even when function-level metrics look strong. The approach provides a practical trust signal for debugging and can be extended as a regularizer during training, broadening evaluation of code vulnerability detectors beyond standard performance metrics.
Abstract
To address the extremely concerning problem of software vulnerability, system security is often entrusted to Machine Learning (ML) algorithms. Despite their now established detection capabilities, such models are limited by design to flagging the entire input source code function as vulnerable, rather than precisely localizing the concerned code lines. However, the detection granularity is crucial to support human operators during software development, ensuring that such predictions reflect the true code semantics to help debug, evaluate, and fix the detected vulnerabilities. To address this issue, recent work made progress toward improving the detector's localization ability, thus narrowing down the vulnerability detection "window" and providing more fine-grained predictions. Such approaches, however, implicitly disregard the presence of spurious correlations and biases in the data, which often predominantly influence the performance of ML algorithms. In this work, we investigate how detectors comply with this requirement by proposing an explainability-based evaluation procedure. Our approach, defined as Detection Alignment (DA), quantifies the agreement between the input source code lines that most influence the prediction and the actual localization of the vulnerability as per the ground truth. Through DA, which is model-agnostic and adaptable to different detection tasks, not limited to our use case, we analyze multiple learning-based vulnerability detectors and datasets. As a result, we show how the predictions of such models are consistently biased by non-vulnerable lines, ultimately highlighting the high impact of biases and spurious correlations. The code is available at https://github.com/pralab/vuln-localization-eval.
