G-Scan:面向智能合约行级漏洞识别的图神经网络方法
密码学与安全
2023-07-18 v1
摘要
由于以太坊(ETH)平台的不可变和去中心化特性,智能合约易受安全风险影响,可能导致财务损失。虽然现有的基于机器学习的漏洞检测算法在合约级别达到了高准确率,但它们需要开发者手动检查源代码以定位缺陷。为此,我们提出 G-Scan,这是首个在首创的真实世界数据集上评估的端到端细粒度行级漏洞检测系统。G-Scan 首先以保留依赖和层次结构的方式将智能合约转换为代码图。接下来,我们训练图神经网络以识别易受攻击的节点并评估安全风险。最后,带有节点漏洞预测的代代码图被映射回智能合约以实现行级定位。我们在收集的真实世界智能合约数据集上训练和评估 G-Scan,该数据集带有重入漏洞的行级标注,重入漏洞是智能合约中最常见且最严重的漏洞类型之一。凭借精心设计的图表示和高质量数据集,G-Scan 在合约级漏洞检测中达到 93.02% 的 F1 分数,在行级漏洞定位中达到 93.69% 的 F1 分数。此外,轻量级图神经网络使 G-Scan 能够在 1.2 秒内定位 6.1k 行代码智能合约中的漏洞。
引用
@article{arxiv.2307.08549,
title = {G-Scan: Graph Neural Networks for Line-Level Vulnerability Identification in Smart Contracts},
author = {Christoph Sendner and Ruisi Zhang and Alexander Hefter and Alexandra Dmitrienko and Farinaz Koushanfar},
journal= {arXiv preprint arXiv:2307.08549},
year = {2023}
}