返回
VulFinder: Exploring Chaincode Vulnerabilities More Effectively and Efficiently Using Knowledge Graph Based Defect Pattern Matching
DOI:10.1109/TSE.2025.3605379.png)
摘要
En 中文
Hyperledger Fabric 是 Linux Foundation 的一个开源项目,它是一种模块化区块链框架,并已成为企业区块链平台的非官方标准。在 Hyperledger Fabric 中,智能合约也称为 chaincode,通常使用通用编程语言编写,包括 Go、Java 或 Node.js 等。尽管已有一些针对 Java 和 Node.js 的漏洞检测方法,但针对 Go 的漏洞检测方法非常少,尤其是在将其作为 Hyperledger Fabric 中智能合约编程语言的情况下。本文提出了一种基于知识图谱的缺陷模式匹配方法,并开发了一个名为 VulFinder 的工具,用于检测 chaincode 中的漏洞,即使用 Go 语言编写的智能合约。采用知识图谱是因为它能够完整保留智能合约的语法和逻辑信息。该方法包括两个关键步骤:首先,从 Go language specification 和 chaincode 源代码构建知识图谱,包括本体层定义和实例层构建;其次,定义缺陷模式,并使用 SPARQL 查询语句在知识图谱上匹配和定位漏洞。为评估 VulFinder 的检测有效性和效率,由于缺乏公开数据集,我们通过手动分析和漏洞注入构建了两个数据集。实验结果表明,VulFinder 能够有效检测 22 种典型的 chaincode 漏洞,其 recall 高达 98.87%,而 false negative rate 低至 1.13%。
Keyword:
Hyperledger fabric
chaincode
vulnerability detection
knowledge graph
期刊
IF:
5.6
论文数:
2.9K
被引数:
1.1W
机构
引用论文
Combining Graph Neural Networks With Expert Knowledge for Smart Contract Vulnerability Detection结合图神经网络和专家知识的智能合约漏洞检测

