论文标题

Grapheye:一种用于检测基于图形注意力网络的脆弱功能的新颖解决方案

GraphEye: A Novel Solution for Detecting Vulnerable Functions Based on Graph Attention Network

论文作者

Zhou, Li, Huang, Minhuan, Li, Yujun, Nie, Yuanping, Li, Jin, Liu, Yiwei

论文摘要

随着工业互联网的持续扩展,近年来,由软件漏洞引起的网络事件一直在增加。但是,软件漏洞检测仍然在很大程度上依赖专家进行的代码审查,以及如何自动检测软件漏洞是迄今为止的空缺问题。在本文中,我们提出了一种名为Grapheye的新颖解决方案,以确定C/C ++代码的函数是否具有漏洞,可以极大地减轻代码审核员的负担。 Grapheye源自观察到的,即,不可抛光函数的代码属性图自然与具有相同功能的脆弱函数的代码属性图不同。因此,检测脆弱的功能归因于图形分类问题。grapheye由VECCPG和GCGAT组成。 VECCPG是代码属性图的矢量化,该属性图是为了表征相应源代码的关键语法和语义特征。 GCGAT是基于图形图图的深度学习模型,该模型提出了旨在根据VECCPG解决图形分类问题。最后,通过基于SARD堆栈的缓冲区溢出,零零指针尊重,缓冲区错误和资源错误数据集验证了Grapheye,相应的F1分别为95.6%,95.6%,96.1%,92.6%和96.1%,分别验证了拟议的解决方案的有效性。

With the continuous extension of the Industrial Internet, cyber incidents caused by software vulnerabilities have been increasing in recent years. However, software vulnerabilities detection is still heavily relying on code review done by experts, and how to automatedly detect software vulnerabilities is an open problem so far. In this paper, we propose a novel solution named GraphEye to identify whether a function of C/C++ code has vulnerabilities, which can greatly alleviate the burden of code auditors. GraphEye is originated from the observation that the code property graph of a non-vulnerable function naturally differs from the code property graph of a vulnerable function with the same functionality. Hence, detecting vulnerable functions is attributed to the graph classification problem.GraphEye is comprised of VecCPG and GcGAT. VecCPG is a vectorization for the code property graph, which is proposed to characterize the key syntax and semantic features of the corresponding source code. GcGAT is a deep learning model based on the graph attention graph, which is proposed to solve the graph classification problem according to VecCPG. Finally, GraphEye is verified by the SARD Stack-based Buffer Overflow, Divide-Zero, Null Pointer Deference, Buffer Error, and Resource Error datasets, the corresponding F1 scores are 95.6%, 95.6%,96.1%,92.6%, and 96.1% respectively, which validate the effectiveness of the proposed solution.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源