LIVABLE: Exploring Long-Tailed Classification of Software Vulnerability Types

06/12/2023
by   Xin-Cheng Wen, et al.
0

Prior studies generally focus on software vulnerability detection and have demonstrated the effectiveness of Graph Neural Network (GNN)-based approaches for the task. Considering the various types of software vulnerabilities and the associated different degrees of severity, it is also beneficial to determine the type of each vulnerable code for developers. In this paper, we observe that the distribution of vulnerability type is long-tailed in practice, where a small portion of classes have massive samples (i.e., head classes) but the others contain only a few samples (i.e., tail classes). Directly adopting previous vulnerability detection approaches tends to result in poor detection performance, mainly due to two reasons. First, it is difficult to effectively learn the vulnerability representation due to the over-smoothing issue of GNNs. Second, vulnerability types in tails are hard to be predicted due to the extremely few associated samples.To alleviate these issues, we propose a Long-taIled software VulnerABiLity typE classification approach, called LIVABLE. LIVABLE mainly consists of two modules, including (1) vulnerability representation learning module, which improves the propagation steps in GNN to distinguish node representations by a differentiated propagation method. A sequence-to-sequence model is also involved to enhance the vulnerability representations. (2) adaptive re-weighting module, which adjusts the learning weights for different types according to the training epochs and numbers of associated samples by a novel training loss.

READ FULL TEXT
research
02/09/2023

Vulnerability Detection with Graph Simplification and Enhanced Graph Representation Learning

Prior studies have demonstrated the effectiveness of Deep Learning (DL) ...
research
01/08/2020

μVulDeePecker: A Deep Learning-Based System for Multiclass Vulnerability Detection

Fine-grained software vulnerability detection is an important and challe...
research
05/26/2023

AIBugHunter: A Practical Tool for Predicting, Classifying and Repairing Software Vulnerabilities

Many ML-based approaches have been proposed to automatically detect, loc...
research
08/04/2023

RAHNet: Retrieval Augmented Hybrid Network for Long-tailed Graph Classification

Graph classification is a crucial task in many real-world multimedia app...
research
06/16/2022

ResNorm: Tackling Long-tailed Degree Distribution Issue in Graph Neural Networks via Normalization

Graph Neural Networks (GNNs) have attracted much attention due to their ...
research
04/13/2021

Improving Long-Tailed Classification from Instance Level

Data in the real world tends to exhibit a long-tailed label distribution...
research
09/07/2021

Software Vulnerability Detection via Deep Learning over Disaggregated Code Graph Representation

Identifying vulnerable code is a precautionary measure to counter softwa...

Please sign up or login with your details

Forgot password? Click here to reset