ReGVD: Revisiting Graph Neural Networks for Vulnerability Detection

Van-Anh Nguyen,Dai Quoc Nguyen,Van Nguyen,Trung Le,Quan Hung Tran,Dinh Phung
DOI: https://doi.org/10.48550/arXiv.2110.07317
2022-02-05
Abstract:Identifying vulnerabilities in the source code is essential to protect the software systems from cyber security attacks. It, however, is also a challenging step that requires specialized expertise in security and code representation. To this end, we aim to develop a general, practical, and programming language-independent model capable of running on various source codes and libraries without difficulty. Therefore, we consider vulnerability detection as an inductive text classification problem and propose ReGVD, a simple yet effective graph neural network-based model for the problem. In particular, ReGVD views each raw source code as a flat sequence of tokens to build a graph, wherein node features are initialized by only the token embedding layer of a pre-trained programming language (PL) model. ReGVD then leverages residual connection among GNN layers and examines a mixture of graph-level sum and max poolings to return a graph embedding for the source code. ReGVD outperforms the existing state-of-the-art models and obtains the highest accuracy on the real-world benchmark dataset from CodeXGLUE for vulnerability detection. Our code is available at: \url{<a class="link-external link-https" href="https://github.com/daiquocnguyen/GNN-ReGVD" rel="external noopener nofollow">this https URL</a>}.
Machine Learning,Cryptography and Security
What problem does this paper attempt to address?