arrow
Return

Vulnerability Detection via Multiple-Graph-Based Code Representation

delete2024-08-01
delete1
PRE
AI
F
Fangcheng Qiu
刘
刘忠鑫 (Zhongxin Liu) *
X
Xing Hu
X
Xin Xia
陈
陈刚 (Gang Chen)
王
王新宇 (Xinyu Wang) *
DOI:10.1109/TSE.2024.3427815delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
During software development and maintenance, vulnerability detection is an essential part of software quality assurance. Even though many program-analysis-based and machine-learning-based approaches have been proposed to automatically detect vulnerabilities, they rely on explicit rules or patterns defined by security experts and suffer from either high false positives or high false negatives. Recently, an increasing number of studies leverage deep learning techniques, especially Graph Neural Network (GNN), to detect vulnerabilities. These approaches leverage program analysis to represent the program semantics as graphs and perform graph analysis to detect vulnerabilities. However, they suffer from two main problems: (i) Existing GNN-based techniques do not effectively learn the structural and semantic features from source code for vulnerability detection. (ii) These approaches tend to ignore fine-grained information in source code. To tackle these problems, in this paper, we propose a novel vulnerability detection approach, named MGVD (MULTIPLE-GRAPH-BASED VULNERABILITY DETECTION), to detect vulnerable functions. To effectively learn the structural and semantic features from source code, MGVD uses three different ways to represent each function into multiple forms, i.e., two statement graphs and a sequence of tokens. Then we encode such representations to a three-channel feature matrix. The feature matrix contains the structural feature and the semantic feature of the function. And we add a weight allocation layer to distribute the weights between structural and semantic features. To overcome the second problem, MGVD constructs each graph representation of the input function using multiple different graphs instead of a single graph. Each graph focuses on one statement in the function and its nodes denote the related statements and their fine-grained code elements. Finally, MGVD leverages CNN to identify whether this function is vulnerable based on such feature matrix. We conduct experiments on 3 vulnerability datasets with a total of 30,341 vulnerable functions and 127,931 non-vulnerable functions. The experimental results show that our method outperforms the state-of-the-art by 9.68% - 10.28% in terms of F1-score.
Keywords:
Semantics
Codes
Source coding
Graph neural networks
Software
Feature extraction
Deep learning
Vulnerability detection
deep learning
code representation
graph neural network

Journal

IEEE Transactions on Software Engineering cover
IEEE Transactions on Software Engineering
IF:
5.6
Papers:
2.9K
Citations:
1.1W

Organization

H
huawei technologies
Scholars:
3.3K
Papers: 2.9K
Citations: 1
Z
zhejiang university
Scholars:
17.7W
Papers: 12.1W
Citations: 152
Cited Papers

Cited Papers

Gradient-based learning applied to document recognition
err1998-01-01
err3.8W
PREAI
errLecun, Y; Bottou, L; Bengio, Y; Haffner, P
errShare
errSave
Six years’ experience with LipidSeq: clinical and research learnings from a hybrid, targeted sequencing panel for dyslipidemias
err2020-02-10
err0
errOAAI
errJacqueline S. Dron; Jian Wang; Adam D. McIntyre; Michael A. Iacocca; John F. Robinson; Matthew R. Ban; Henian Cao; Robert A. Hegele
errShare
errSave
SySeVR: A Framework for Using Deep Learning to Detect Software Vulnerabilities
err2022-07-01
err261
errOAAI
errLi, Zhen; Zou, Deqing; Xu, Shouhuai; Jin, Hai; Zhu, Yawei; Chen, Zhaoxuan
errShare
errSave
Cardiovascular diseases risk prediction in patients with diabetes: Posthoc analysis from a matched case-control study in Bangladesh
err2021-02-15
err0
errOAAI
errSheikh Mohammed Shariful Islam; Shyfuddin Ahmed; Riaz Uddin; Muhammad U. Siddiqui; Mahsa Malekahmadi; Abdullah Al Mamun; Roohallah Alizadehsani; Abbas Khosravi; Saeid Nahavandi
errShare
errSave
Improved Glycemic Control through Continuous Glucose Sensor-Augmented Insulin Pump Therapy: Prospective Results from a Community and Academic Practice Patient Registry
err2009-07-01
err0
errOAAI
errOhad Cohen; Anna Körner; Rudolf Chlup; Christos S. Zoupas; Anton K. Ragozin; Krisztina Wudi; Dagmar Bartaskova; Aggelos Pappas; Tamás Niederland; Zoltán Taybani; Lubomir Barák; Andriani Vazeou
errShare
errSave
errShare
errSave
errShare
errSave
researcher View more