亲爱的研友该休息了!由于当前在线用户较少,发布求助请尽量完整地填写文献信息,科研通机器人24小时在线,伴您度过漫漫科研夜!身体可是革命的本钱,早点休息,好梦!

Vulnerability Detection via Multiple-Graph-Based Code Representation

计算机科学 图形 编码(集合论) 理论计算机科学 程序设计语言 脆弱性(计算) 计算机安全 集合(抽象数据类型)
作者
Fangcheng Qiu,Zhongxin Liu,Xing Hu,Xin Xia,Gang Chen,Xinyu Wang
出处
期刊:IEEE Transactions on Software Engineering [IEEE Computer Society]
卷期号:50 (8): 2178-2199 被引量:45
标识
DOI:10.1109/tse.2024.3427815
摘要

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 (M ultiple-G raph-Based V ulnerability D etection), 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.
最长约 10秒,即可获得该文献文件

科研通智能强力驱动
Strongly Powered by AbleSci AI
科研通是完全免费的文献互助平台,具备全网最快的应助速度,最高的求助完成率。 对每一个文献求助,科研通都将尽心尽力,给求助人一个满意的交代。
实时播报
1秒前
4秒前
zcccc发布了新的文献求助30
7秒前
酷盖发布了新的文献求助10
7秒前
14秒前
天天快乐应助标致初曼采纳,获得10
14秒前
15秒前
111111完成签到,获得积分10
15秒前
彭于晏应助范志鹏采纳,获得10
17秒前
传奇3应助胡耀辉采纳,获得10
17秒前
19秒前
清风明月发布了新的文献求助10
21秒前
111111发布了新的文献求助10
21秒前
23秒前
香蕉觅云应助糊涂的夜安采纳,获得10
24秒前
26秒前
飘逸少年发布了新的文献求助10
27秒前
yummm完成签到 ,获得积分10
27秒前
范志鹏发布了新的文献求助10
32秒前
shine完成签到,获得积分10
34秒前
胡耀辉发布了新的文献求助10
35秒前
38秒前
NexusExplorer应助清风明月采纳,获得10
39秒前
理li发布了新的文献求助10
39秒前
41秒前
飘逸少年完成签到,获得积分10
44秒前
胡耀辉发布了新的文献求助10
44秒前
琛琛发布了新的文献求助10
47秒前
LucyMartinez发布了新的文献求助10
56秒前
风趣的灵松完成签到,获得积分10
56秒前
Akim应助平儿采纳,获得50
1分钟前
科研通AI6.4应助理li采纳,获得10
1分钟前
wfrg完成签到,获得积分10
1分钟前
1分钟前
年年完成签到,获得积分10
1分钟前
平儿发布了新的文献求助50
1分钟前
1分钟前
1分钟前
1分钟前
1分钟前
高分求助中
Principles of Economics, 11th Edition 10000
University Physics with Modern Physics, 16th edition 10000
(应助此贴封号)【重要!!请各用户(尤其是新用户)详细阅读】【科研通的精品贴汇总】 10000
Matrix Methods in Data Mining and Pattern Recognition 510
Social Skills Improvement System-Rating Scales--Chinese Version 500
Dynamische Polarisation von H-1 und B-11 in (CH-3)-3NBH-3 500
CLSI M07 2024 500
热门求助领域 (近24小时)
化学 材料科学 医学 生物 纳米技术 工程类 有机化学 化学工程 生物化学 计算机科学 内科学 物理 复合材料 催化作用 细胞生物学 无机化学 光电子学 物理化学 电极 基因
热门帖子
关注 科研通微信公众号,转发送积分 7246879
求助须知:如何正确求助?哪些是违规求助? 8870455
关于积分的说明 18711726
捐赠科研通 6924364
什么是DOI,文献DOI怎么找? 3197822
关于科研通互助平台的介绍 2373025
邀请新用户注册赠送积分活动 2172667