综述

基于人工智能的智能合约漏洞检测研究综述

  • 罗一帆 1 ,
  • 姜思羽 1, 2 ,
  • 陈伟利 1, 2 ,
  • 张菁菁 1, 2 ,
  • 王常吉 , 1, 2, *
展开
  • 1. 广东外语外贸大学信息科学与技术学院(网络空间安全学院),广州 510006
  • 2. 数据安全治理与隐私计算广东省工程研究中心,广州 510006

网络出版日期: 2025-08-20

基金资助

广东省基础与应用基础研究基金面上项目(2025A1515012982);广东省基础与应用基础研究基金委员会-区域联合基金(青年基金)(2022A1515110932);国家自然科学基金青年科学基金(62302106);教育部人文社会科学研究一般项目(24YJAZH150)

版权

版权所有©《网络空间安全科学学报》编辑部 2025

A research review of AI-based smart contract vulnerability detection

  • LUO Yifan 1 ,
  • JIANG Siyu 1, 2 ,
  • CHEN Weili 1, 2 ,
  • ZHANG Jingjing 1, 2 ,
  • WANG Changji , 1, 2, *
Expand
  • 1. School of Information Science and Technology (School of Cybersecurity), Guangdong University of Foreign Studies, Guangzhou 510006, China
  • 2. Data Security Governance and Privacy Computing Guangdong Provincial Engineering Research Center, Guangzhou 510006, China

Online published: 2025-08-20

Copyright

Copyright ©2025 Journal of Aeronautical Materials. All rights reserved.

摘要

区块链技术的去中心化与不可篡改特性推动了智能合约在金融、供应链等领域的广泛应用,但智能合约漏洞频发,传统检测方法难以应对日益复杂的攻击模式,亟需更高效的检测技术。为系统梳理人工智能(Artificial Intelligence,AI)技术在智能合约漏洞检测中的研究进展,综述了2020—2025年相关文献,明确了漏洞检测方法的分类与性能评价标准。重点分析了自然语言处理、图神经网络、大语言模型等AI方法的技术原理、典型应用及优劣比较。进一步探讨了当前漏洞检测方法面临的数据质量不高、模型解释性不足、扩展性有限等挑战,并提出了未来研究的具体路径,包括构建多样化高质量数据集、开发高解释性的模型架构、提升检测工具的跨平台兼容性等。综述结果可为智能合约漏洞检测领域的相关研究提供参考,推动AI技术更深入的实践应用。

本文引用格式

罗一帆 , 姜思羽 , 陈伟利 , 张菁菁 , 王常吉 . 基于人工智能的智能合约漏洞检测研究综述[J]. 网络空间安全科学学报, 2025 , 3(3) : 25 -37 . DOI: 10.20172/j.issn.2097-3136.250302

Abstract

The decentralized and immutable feature of blockchain technology has driven the widespread adoption of smart contracts in fields such as finance and supply chain. However, the frequent vulnerabilities in smart contracts and the increasing complexity of attack patterns have made conventional detection approaches struggle to cope, necessitating more efficient detection techniques. To systematically review the research progress of artificial intelligence (AI) technologies in the smart contract vulnerability detection, relevant literature from 2020 to 2025 were surveyed, with the classification of vulnerability detection methods and performance evaluation criteria clarified. The technical principles, typical applications, and comparative advantages and disadvantages of AI methods such as natural language processing, graph neural networks, and large language models were analyzed. Furthermore, the current challenges faced by vulnerability detection methods were discussed, including low data quality, insufficient model interpretability, and limited scalability. Specific future research directions were also proposed, such as constructing diverse and high-quality datasets, developing highly interpretable model architectures, and improving the cross-platform compatibility of detection tools. The findings of this review can provide valuable references for research in the field of smart contract vulnerability detection and promote the deeper practical application of AI technologies.

0 引 言

区块链的历史可追溯至1982年,学者Chaum在其博士论文中首次提出了类似区块链协议的概念[1]。2008年,区块链作为比特币交易的分布式账本技术被正式引入[2]。同年,中本聪发布了点对点电子现金系统——比特币[3],推动了去中心化交易的广泛关注。智能合约作为区块链的重要技术之一,最早由尼克·萨博在20世纪90年代提出[4],旨在将传统纸质合约转化为代码形式,实现合约条款的自动执行。如今,智能合约已广泛应用于股权众筹、游戏、保险、金融和供应链等领域[5-6]。然而,智能合约一旦部署便无法修改,且其掌握大量金融资产,这使其成为攻击者的主要目标,漏洞检测因此成为保障其安全性的关键环节。
近年来,智能合约漏洞引发的安全事件频发。例如,2016年,“The DAO”事件因重入漏洞导致超过6 000万美元的损失[7];2017年,Parity钱包漏洞导致51万以太币被锁死;2018年,美链(Beauty Chain,BEC)因整数溢出漏洞导致Token价格归零;2020年,bZx借贷协议两次遭受攻击,损失近百万美元。这些事件暴露了智能合约的安全隐患,也推动了形式化验证、代码审计等技术的发展,为了更直观地展示攻击带来的影响及其相关信息,本文将部分重要的攻击事件汇总在于表1中。
表 1 智能合约真实攻击案例

Table 1 Real-world attack cases of smart contracts

攻击时间损失主要原因
Mt.Gox2011年10月84万枚比特币网络协议的缺陷
Bitfloor2012年5月2.4万枚比特币钱包备份未加密
Mt.Gox2014年75万枚比特币允许用户修改交易ID的漏洞
DAO2016年6月5 000万美元存在重入性漏洞
Ethereum network2016年遭受重入攻击
ParityWallet2017年7月3 000万美元访问控制权存在漏洞
Coincheck2018年1月5.34亿美元新币种未引入多重签名
Poly Network2021年8月6.11亿美元存在跨链桥合约漏洞
Ronin2022年3月17.36万以太币桥接升级导致的投票门槛误解
BinanceBNB Bridge2022年10月5.69亿美元存在跨链桥漏洞
FTX2022年11月4.73亿美元fallback/receive控制漏洞
DMM Bitcoin2024年5月3.08亿美元植入恶意代码后,交易控制权被篡改
Bybit2025年2月14.6亿美元开发设备被入侵且错误签署恶意交易
为了应对智能合约的安全挑战,研究人员开发了多种检测技术,主要包括基于代码的静态分析[8]、模糊测试[9]、形式化验证[10]和基于人工智能(Artificial Intelligence,AI)的检测模型[11]。传统方法如Oyente[12]、Mythril[13]、Slither[14]和SmartCheck[15]在过去10年中取得了显著进展,但其高度依赖预定义规则或专家经验,难以准确理解复杂代码逻辑,且无法适应新型漏洞。相比之下,AI方法通过数据驱动学习,能够深入理解代码语义结构,展现出更强的适应性和扩展性[16]
同时,根据Vidal等的研究[17],选取了2016—2023年的81篇关于智能合约漏洞检测的论文,总结了近年不同技术的使用趋势:该领域使用AI技术的相关工作也越来越多,如图1所示[17]。因此,本文将对基于AI的智能合约漏洞检测技术进行讨论,通过调查近年的相关方法,总结漏洞检测领域的现状,对AI技术在智能合约检测中的不足提出研究方向和思路。
图 1 不同年份使用技术的情况

Fig.1 Usage of technologies across different years

本文聚焦基于AI的智能合约漏洞检测技术,系统梳理了近5年的相关研究,总结现状并指出未来研究方向。与现有综述[17-18]不同,本文重点关注以太坊平台上的单个智能合约(因其在区块链生态中的主导地位),深入分析AI方法在漏洞检测中的应用与挑战,以期为后续研究提供参考。
本文组织结构如下:第1节对智能合约漏洞检测领域进行了介绍;第2节针对AI方法,提出了三个子分类,分析了相应的技术与实现;第3节进行了讨论分析;第4节总结了现有的研究差距;第5节展望了未来研究方向。

1 相关工作

1.1 智能合约

智能合约是指以数字形式定义的承诺,参与者可以在智能合约上执行。智能合约包括在参与节点之间执行的交易的价值、地址、功能和状态。它接受交易作为输入,应用函数执行代码,并提供输出。与传统合约形式相比,智能合约能保证合约的有效性,其合约代码一旦部署后,满足条件就将自动执行,并且无须第三方参与,不会受到人为的干扰。正因这些特点,智能合约近些年来受到国家大力推行,被广泛应用于区块链和金融等领域[19-20]。智能合约是区块链技术的成果应用之一,它降低了交易成本、执行时间并提高了安全性,在一定程度上也解决了信任问题。
漏洞检测是保障智能合约安全最重要的手段之一。通过对智能合约代码、开发文档、使用手册等有可能存在安全漏洞的文件进行检测,识别和发现智能合约中可能存在的安全漏洞。通常可采用人工审计,或者按照专家规则对已知的漏洞类型进行检查,但往往这些方法错误率高,可拓展性不强。另外,也有许多工具通过对合约代码进行检测来识别漏洞,这些工具往往也面临着效率差、拓展性低等问题。近些年来,随着AI技术的不断发展,许多领域都开始使用AI技术对漏洞进行检测,这也是目前比较主流的方法之一。

1.2 智能合约漏洞

一直以来,许多智能合约漏洞检测工作按照八大类型来定义识别的漏洞,这八大类是影响较大的漏洞,如区块号依赖(Block Number Dependency,BN)、危险的委托调用(Dangerous Delegatecall,DG)、时间戳依赖(Timestamp Dependency,TP)、整数溢出(Integer Overflow,OF)、可重入攻击(Reentrancy,RE)等,但这些漏洞无法完全对应所有的合约漏洞。另外,比较主流的还有常见漏洞枚举(Common Weakness Enumeration,CWE),这是一种通用型的漏洞分类标准。本研究主要介绍的智能合约漏洞分类(Smart Contract Weakness Classification,SWC)是专门为智能合约漏洞设计的分类标准,涵盖了以太坊智能合约中常见的漏洞类型(如重入攻击、整数溢出、未授权访问等)。与CWE等通用漏洞分类标准相比,SWC更专注于智能合约领域,能够更精确地描述区块链环境中的安全问题。虽然CWE覆盖范围更广,但其分类粒度较粗,难以直接应用于智能合约漏洞检测。因此,本综述将介绍SWC这种分类标准,其能够更好地满足智能合约安全研究的需求。值得注意的是,即使是现在的SWC分类标准也无法保证百分之百覆盖所有漏洞,但SWC采用版本控制机制,定期发布更新版本。每个版本都会包含新增的漏洞类型、对现有分类的修改以及相关的详细描述和示例。本文将SWC官网的相关漏洞标准汇总于表2,供大家参考。
表 2 Smart contract Wakness Classification(SWC)漏洞分类标准

Table 2 Smart contract weakness classification standards

ID 漏洞名称 描述
SWC-100 函数默认可见 函数未显式声明可见性,默认可见性为public,可能导致未授权访问。
SWC-101 整数溢出和下溢 整数运算未检查溢出或下溢,可能导致变量值超出范围,引发意外行为。
SWC-102 过时的编译器版本 使用低级调用(如call、send、transfer)时未检查返回值,可能导致调用失败,但合约继续执行。
SWC-103 浮点数精度 Solidity 不支持浮点数运算,使用整数模拟可能导致精度丢失或计算错误。
SWC-104 未检查的返回值
调用外部合约时未检查返回值,可能导致调用失败,但合约继续执行。
SWC-105 未保护的以太币提取
合约允许任意地址提取以太币,未对调用者进行权限验证。
SWC-106 未保护的自毁函数selfdestruct 合约允许任意地址调用selfdestruct,可能导致资金丢失。
SWC-107 重入攻击
攻击者通过递归调用合约函数,在状态更新前多次提取资金。
SWC-108 状态变量默认可见性 状态变量未显式声明可见性,默认可见性为public,可能导致信息泄露。
SWC-109 未初始化的存储指针
未正确初始化存储指针,可能导致数据被意外覆盖。
SWC-110 断言滥用
滥用assert进行输入验证,可能导致合约无法正常执行。
SWC-111 使用已弃用的函数
使用已弃用的Solidity函数或语法,可能导致兼容性问题或安全漏洞。
SWC-112 委托调用注入
使用delegatecall调用不可信的合约,可能导致状态被恶意修改。
SWC-113 拒绝服务
外部调用失败导致合约无法继续执行,可能被攻击者利用。
SWC-114 交易顺序依赖 攻击者通过观察未确认的交易,抢先提交高Gas价格的交易以获取利益。
SWC-115 授权通过tx.origin 使用tx.origin进行授权验证,可能导致钓鱼攻击。
SWC-116 时间戳依赖 合约逻辑依赖区块时间戳,矿工可能操纵时间戳。
SWC-117 签名重放攻击 未正确处理签名,导致同一签名被多次使用。
SWC-118 错误的构造函数名
构造函数名与合约名不一致,导致构造函数变为普通函数。
SWC-119 影子状态变量 局部变量与状态变量同名,可能导致逻辑错误。
SWC-120 弱随机性
使用可预测的值(如区块哈希)作为随机数源,可能导致随机性被攻击者预测。
SWC-121 缺少事件记录 关键操作未触发事件,导致难以追踪合约状态的变化。
SWC-122 缺少输入验证 未对用户输入进行验证,可能导致合约逻辑被绕过。
SWC-123 要求Require滥用
滥用Require进行输入验证,可能导致合约无法正常执行。
SWC-124 写入任意存储位置 智能合约存储须严格授权,攻击者篡改存储可绕过检查,引发安全风险。
SWC-125 错误的继承顺序 继承顺序错误,可能导致函数覆盖或逻辑错误。
SWC-126 Gas不足攻击
Gas不足攻击可以在一个接受数据并在另一个合约的子调用中使用该数据的合约上执行,如果子调用失败,则将整个交易还原或继续执行。
SWC-127 函数类型变量任意跳转 Solidity支持函数类型变量,但滥用汇编指令可能导致任意代码执行,引发安全漏洞。
SWC-128 利用区块Gas限制的拒绝服务攻击 循环操作消耗过多Gas,可能导致交易失败。
SWC-129 拼写错误 会发生拼写错误。
SWC-130 错误的权限控制 权限控制逻辑错误,可能导致未授权访问。
SWC-131 未初始化的局部变量 局部变量未初始化,可能导致逻辑错误。
SWC-132 依赖以太币余额的逻辑 如果合约逻辑仅处理特定的以太币余额,则其行为可能会错误。始终可以使用自毁或通过挖矿来强制将以太币发送至合约(不触发其fallback函数)。
SWC-133 变长参数导致的哈希冲突 abi.encodePacked()使用多个可变参数可能导致哈希冲突,存在安全风险。
SWC-134 硬编码Gas用量的消息
调用
在智能合约中使用低级调用(如call)时,固定了Gas限额。
SWC-135 无效果代码 未验证外部输入,可能导致恶意代码注入。
SWC-136 链上未加密的私人数据 未加密的敏感数据存储在链上,可能导致信息泄露。
值得注意的是上表参考的时间是2025年3月,虽然SWC的分类标准已经非常全面,但由于漏洞检测领域的不断发展,社区将根据实际情况更新这些漏洞分类,甚至添加新的漏洞类型。

1.3 攻击模式演化趋势

随着区块链技术的发展和智能合约应用场景的不断拓展,攻击模式也在不断演变,呈现出更高的隐蔽性和复杂性。攻击者利用智能合约的复杂性和不同组件之间的交互,设计出更加精密的攻击方式。例如,时间戳依赖攻击(Timestamp Dependence Attack)通过操纵区块时间戳影响合约逻辑,而交易重排序攻击(Transaction-Ordering Dependence,TOD)则利用交易顺序的依赖性操纵执行结果[21-22]。此外,随着DeFi生态的繁荣,闪电贷攻击(Flash Loan Attack)等新型攻击手段层出不穷,攻击者通过无抵押借贷和价格操纵在极短时间内获取巨额利润[23]。这些攻击不仅隐蔽性强,且造成的经济损失日益严重。面对这种动态威胁格局,传统的漏洞检测工具已难以应对。研究者提出了基于形式化验证(如Oyente、Mythril)和机器学习的新型检测方法,通过符号执行、静态分析和异常模式识别等技术提升检测能力[24-25]。未来,漏洞检测工具需要不断更新和优化,结合智能化和自适应技术,以应对不断演变的攻击模式,保障区块链生态的安全。

2 人工智能驱动的漏洞检测技术

在AI技术快速发展的时代,已经有越来越多的研究人员将AI技术视为检测智能合约漏洞的重要手段。AI技术能够识别复杂代码中的潜在漏洞模式,优化路径探索,并捕捉代码间的依赖关系,从而降低误报率和漏报率。

2.1 自然语言处理技术

自然语言处理(Natural Language Processing,NLP)技术在智能合约漏洞检测中的应用,近年来取得了显著进展。通过将智能合约代码视为一种特殊的“语言”,NLP技术能够捕捉代码中的语义信息和结构特征,从而识别潜在的漏洞模式[26]

2.1.1 深度学习方法

早期的NLP应用尝试是Tann等于2020年提出了SaferSC(Safer Smart Contract)模型[27],这是首个基于深度学习的智能合约漏洞检测框架。SaferSC的创新之处在于其利用长短期记忆网络(Long Short-Term Memory Network,LSTM)对以太坊智能合约的操作码(Opcode)序列进行建模。通过将智能合约的操作码序列作为输入,LSTM网络能够学习代码中的时序依赖关系,从而检测出与Maian工具分类的三类漏洞(如重入漏洞、整数溢出等)相关的模式。实验表明,SaferSC在检测准确率上优于传统的静态分析工具,尤其是在处理复杂代码逻辑时表现出更强的鲁棒性。然而,SaferSC的局限性在于其仅针对操作码进行分析,未能充分利用源代码中的语义信息。
与SaferSC相比,Qian等同年提出的ReChecker模型[28]专注于智能合约中的可重入漏洞检测,并在语义理解上取得了突破。ReChecker的创新点在于其将Solidity源代码转换为合约片段(Contract Snippet),并利用双向长短期记忆网络(Bidirectional Long Short-Term Memory,Bi-LSTM)结合注意力机制,来捕捉代码中的语义和控制流依赖信息。不同于SaferSC仅分析操作码序列,ReChecker能够从源代码中提取更丰富的语义特征,从而提高了对可重入漏洞的检测精度。此外,注意力机制的引入使得模型能够聚焦代码中的关键部分,进一步降低了误报率。ReChecker的成功标志着NLP技术在智能合约漏洞检测中的应用从单一的操作码分析扩展到源代码层面的语义理解。
在代码表示学习方面,Ashizawa等于2021年提出的Eth2Vec模型[29]进一步拓宽了NLP技术的应用范围。该模型通过结合段落向量分布式记忆(Distributed Memory Model of Paragraph Vectors,PV-DM)模型和以太坊虚拟机(Ethereum Virtual Machine,EVM)字节码提取器,实现了对智能合约代码的全局表示学习。与SaferSC和ReChecker不同,Eth2Vec的核心思想是将EVM字节码视为一种自然语言文本,并利用神经网络自动学习其潜在特征。这种方法的优势在于能够捕捉代码中的隐性知识,从而检测出更复杂的漏洞模式。此外,Eth2Vec还具备代码克隆检测的能力,能够识别出具有相似漏洞模式的不同合约。这一技术的引入,使得NLP技术在智能合约漏洞检测中的应用从单一的漏洞检测扩展到代码相似性分析领域。
Nguyen等于2023年提出的MANDO-HGT框架[30]在代码结构建模方面实现了显著突破。该框架通过构建异质合约图(Heterogeneous Contract Graph)来综合代码中的多种信息(如控制流、数据流等),并利用图神经网络(Graph Neural Network,GNN)和Transformer进行特征提取和关系学习。与之前基于序列的模型(如LSTM和Bi-LSTM)相比,MANDO-HGT能够捕捉代码中的复杂结构关系,从而显著提升了检测性能。此外,Transformer架构的引入使得模型能够更好地处理长距离依赖问题,进一步提高了对复杂漏洞的检测能力。
同年,在轻量化模型设计方面,Xu等提出的CoN2VEC模型[31]提供了另一种思路。该模型基于文本卷积神经网络(Text Convolutional Neural Network,TextCNN),通过将智能合约的操作码序列嵌入到低维向量空间,并利用卷积神经网络(Convolutional Neural Network,CNN)进行特征提取和分类。与LSTM和Transformer相比,TextCNN具有更低的计算复杂度和更高的训练效率,适用于大规模智能合约的快速检测。然而,其局限性也很明显,即对代码语义的理解能力较弱,可能无法捕捉到复杂的漏洞模式。这一工作表明,在追求效率的同时,仍需权衡模型对代码深层语义的捕捉能力。

2.1.2 代码语义理解

随着NLP技术的快速发展,预训练语言模型(Pre-trained Language Models,PLMs)在代码语义理解领域展现了强大的潜力。与传统的序列学习和图结构建模不同,预训练语言模型通过在大规模代码语料库上进行预训练,能够捕捉代码中的深层语义信息和上下文依赖关系,从而显著提升智能合约漏洞检测的精度和泛化能力。
CodeBERT[32]是早期将PLMs应用于代码分析的代表性模型之一。与传统的基于规则或模板的方法相比,CodeBERT的创新点在于其对Solidity代码和自然语言描述进行联合编码,生成具有丰富语义信息的代码表示。这种表示可以用于训练下游的漏洞检测模型,使其能够识别出与重入漏洞、整数溢出等相关的模式。相较于SaferSC(LSTM)和ReChecker(Bi-LSTM)等序列模型,CodeBERT的优势在于其能够通过预训练学习更通用的代码语义知识,从而处理更复杂的代码逻辑,并降低误报率。此外,CodeBERT还支持多语言代码分析,能够应用于跨链智能合约的漏洞检测任务。
针对漏洞检测任务的专用优化,VulBERTa[33]基于RoBERTa架构,通过对大规模漏洞数据集(如CVE公告和智能合约漏洞报告)进行预训练,进一步提升了模型性能。与通用代码模型(如CodeBERT)相比,VulBERTa能够更精准地捕捉代码中的漏洞模式。例如,在重入漏洞检测中,VulBERTa通过分析函数调用之间的状态依赖关系,显著提高了风险点识别的准确性。实验表明,VulBERTa在多个漏洞检测基准测试中均优于传统静态分析工具和通用PLMs。

2.2 图模型与神经网络

通过将智能合约代码表示为图结构,并结合GNN等深度学习技术,研究者能够捕捉代码中的复杂依赖关系和语义信息,从而更精准地识别漏洞。

2.2.1 图表示学习

图表示学习旨在将图结构数据映射到低维向量空间,从而捕捉节点和边的语义信息。在智能合约漏洞检测中,图表示学习通过将合约代码转换为图结构(如控制流图、数据流图或合约依赖图),能够有效捕捉代码中的复杂依赖关系和潜在漏洞模式。与2.1节所述的序列模型(如LSTM)和预训练语言模型(如CodeBERT)不同,图表示学习方法更擅长建模代码中的显式结构关系,尤其适合检测涉及多函数交互或状态依赖的漏洞类型。
早期的图表示学习应用可见于2020年Xing等提出的方法[34]。该工作通过将合约代码切片并构建函数级别的子图,利用神经网络和随机森林进行漏洞检测。与传统的全程序分析相比,这种基于函数切片的方法能够有效聚焦局部漏洞模式(如函数内的整数溢出),在检测精度上显示出优势。然而,其局限性在于难以捕捉跨函数的全局依赖关系,这可能影响其对复杂漏洞(如涉及多个合约交互的重入漏洞)的检测效果。
为克服局部分析的局限性,Zhang等于2022年提出的MODNN(Multi-Objective Deep Neural Network)模型[35]进行了重要改进。与Xing等的方法[34]不同,MODNN通过构建多目标图结构来同时表征代码中的多种关系,并结合CNN进行了特征提取。这种设计使其能够检测12种漏洞类型,显著扩展了检测范围。此外,MODNN的创新点还包括:通过反向传播机制发现未知威胁,增强了模型的泛化能力;开发了自动化工具SCC(Smart Contract-Crawler)来优化图生成流程。这些改进使得MODNN在检测效率和多漏洞覆盖能力方面超越了早期的单目标检测方法。

2.2.2 图神经网络

GNN是图表示学习的延伸,通过在图结构上进行信息传递和聚合,能够捕捉节点和边之间的复杂关系。GNN在智能合约漏洞检测中的应用是当前研究的热点,其优势在于能够处理复杂的代码依赖关系。
早期研究方面,Zhang等于2020年提出的DR-GCN模型[36]开创性地将图卷积网络(Graph Convolutional Network,GCN)应用于智能合约漏洞检测。DR-GCN通过将智能合约源代码转换为高语义表示的合约图结构,并利用GCN进行特征提取,能够检测可重入漏洞、时间戳依赖漏洞和死循环漏洞。DR-GCN的创新点在于其支持以太坊和维特链两个平台的智能合约分析,展现了良好的跨平台适应性。然而,受限于传统GCN的架构特点,该方法在处理长程依赖时仍存在一定的性能瓶颈。
最新研究进展表明,引入注意力机制可以显著提升GNN在漏洞检测任务中的表现。Zhen等于2024年提出的DA-GNN模型[37]通过创新性地结合双向注意力机制与图神经网络,实现了检测性能的进一步提升。具体而言,该模型采用门控循环单元(Gated Recurrent Unit,GRU)对操作码序列进行时序特征提取,同时设计节点级和图级的双重注意力机制,实现了对局部特征和全局表征的协同优化。实验结果表明,相较于传统GCN方法,DA-GNN在准确率和误报率等关键指标上均展现出显著优势。这一研究成果为智能合约漏洞检测提供了新的技术思路,即通过融合时序建模与注意力机制来增强图神经网络的表征能力。

2.2.3 图像化代码表示

图像化代码表示是一种将智能合约代码转换为图像形式的技术,通过将代码的语义和结构信息映射到像素空间,利用CNN进行高效的特征提取和漏洞检测。这种方法的核心思想是将代码的序列或字节码转换为灰度图或RGB图像,从而利用CNN在图像处理领域的优势,捕捉代码中的潜在漏洞模式。
在轻量化检测方法研究方面,Zhou等于2021年提出的SC-VDM模型[38]开创性地采用灰度图像表征方法。该模型通过将智能合约字节码映射到二维灰度空间,利用CNN提取局部纹理特征。与传统的基于规则或静态分析的方法相比,SC-VDM的优势在于其能够捕捉代码中的局部模式和全局依赖关系,同时显著降低了计算复杂度。实验表明,SC-VDM在检测重入漏洞和整数溢出漏洞时表现出色,且具有较高的检测效率。SC-VDM的创新点在于其将代码的字节码序列映射到灰度图像空间,从而利用CNN的卷积操作捕捉代码中的潜在漏洞模式。然而,其局限性在于灰度图像可能无法充分表达代码的语义信息,尤其是在处理复杂的跨函数依赖关系时,检测精度可能受到限制。
2022年,Hwang等提出的CodeNet模型[39]进一步提升了图像表征的语义表达能力,这是一种基于RGB图像表示的智能合约漏洞检测方法。CodeNet通过将智能合约的字节码转换为RGB图像,并利用改进的CNN进行特征提取,能够更全面地捕捉代码中的语义和上下文信息。与SC-VDM相比,CodeNet的创新点在于其将字节码映射到三维RGB空间,从而利用颜色通道表达代码的多维特征。此外,CodeNet还引入了深度可分离卷积和非步幅卷积操作,进一步降低了计算复杂度,同时提高了检测精度。CodeNet的优势在于其能够通过RGB图像表示捕捉代码中的多维语义信息,从而更准确地识别复杂的漏洞模式。例如,在检测可重入漏洞时,CodeNet能够通过颜色通道的变化捕捉函数调用之间的状态依赖关系。实验表明,CodeNet在多个漏洞检测基准测试中取得了优于传统方法的性能。

2.3 结合通用大语言模型

随着DeepSeek、ChatGPT等通用大语言模型(Large Language Models,LLMs)的爆火,越来越多的研究者通过使用这些模型的能力或对LLMs进行预训练、微调等方式来提取合约代码的语义信息和合约特征,甚至检测智能合约中的漏洞,研究发现这种结合可以显著提升模型的语义理解和推理能力,从而更精准地识别漏洞。

2.3.1 大语言模型微调

2023年,Sun等提出了ASSBert模型[40],这是一种基于半监督学习的BERT微调方法。ASSBert通过结合主动学习和半监督学习,解决了有限标记数据的挑战。具体而言,ASSBert利用来自Transformer网络的双向编码器表示,通过在少量标注数据和大量未标注数据上进行训练,显著提升了模型在智能合约漏洞检测任务中的表现。实验表明,ASSBert在处理复杂代码逻辑时展现了更强的鲁棒性,尤其是在检测重入漏洞和整数溢出漏洞时表现出色。
同一时期,Wei等提出了FTSmartAudit框架[41],通过结合知识蒸馏技术和微调LLMs,显著提升了漏洞检测的效率和精度。FTSmartAudit框架通过微调LLMs(如Llama3、Gemma等),使其能够捕捉Solidity代码中的语义特征和漏洞模式,同时利用知识蒸馏技术将大模型的知识迁移到轻量级模型中,降低了计算复杂度。实验表明,微调后的模型在检测重入漏洞、整数溢出漏洞等任务中表现出色,且显著优于传统工具。
虽然技术路线不同,但两种方法都针对智能合约漏洞检测的特殊性进行了优化:ASSBert采用半监督学习提升了数据利用效率,通过增强上下文理解使重入漏洞检测的F1值提升12%以上,适用于标注成本敏感的场景;FTSmart-Audit则通过知识蒸馏优化了计算效率,在保持精度的同时将推理速度提升3倍,更适合实际部署。

2.3.2 提示词工程

提示词工程(Prompt Engineering)是指通过设计合适的提示词(Prompt),引导LLMs生成期望的输出。在智能合约漏洞检测中,提示词工程能够显著提升模型的检测精度和效率。
在智能合约漏洞检测领域,提示词工程的应用呈现出从单一指令到复杂交互的技术演进路径。2023年,Boi等提出了VulnHunt-GPT模型[42],这是一种基于GPT-3的智能合约漏洞检测方法。VulnHunt-GPT通过设计有针对性的提示词,引导GPT-3识别以太坊智能合约中的常见漏洞。实验表明,VulnHunt-GPT在检测重入漏洞、整数溢出漏洞等任务中表现出色,且具有较高的检测效率。
随着研究的深入,Wei等于2024年提出了LLM-SmartAudit框架[43],这是一种基于多代理对话的智能合约漏洞检测方法。LLM-SmartAudit通过设计复杂的提示词和多轮对话机制,能够更全面地分析智能合约中的潜在漏洞。与VulnHunt-GPT相比,LLM-SmartAudit的创新点在于其引入了思维链(Chain-of-Thought)机制,能够逐步推理并生成更准确的检测结果。

2.3.3 检索增强

检索增强(Retrieval Augmentati-on)是一种通过从训练集中检索相似标签数据样本来增强LLMs在少样本提示(Few-shot Prompting)任务中表现的技术。
Yu等[44]的研究展示了检索增强生成(Retrieval-Augmented Generation,RAG)在智能合约漏洞检测中的应用,通过构建包含830个已知漏洞合约的向量数据库,并结合GPT-4-1106模型,实现了62.7%的引导检测成功率和60.71%的盲检测成功率。尽管RAG在提升模型理解力和任务表现方面具有显著优势,但其性能仍受限于检索质量、上下文长度和训练数据偏差等挑战,未来研究须进一步优化检索机制和上下文处理策略。

2.4 其他AI融合方法

除了上述这些方法外,现在还有许多研究人员在使用传统漏洞检测手段时,利用AI技术来提高效率和工作的可靠性。例如,Liu等[45]提出了一种基于GNN和专家规则的智能合约漏洞检测机制,并在EVM级别增加了检测和阻止机制,即阻止包含危险动作的合约交易,并生成错误报告。该方法解决了传统固定专家规则通用性、可扩展性和准确性都较差的问题。

3 数据集与评价体系

数据集是用于训练和评估漏洞检测模型的数据集合,在AI方法的开发与应用中,数据集作为模型训练和评估的基础,其质量与代表性对最终性能具有决定性作用。

3.1 数据集

3.1.1 公开数据集

在智能合约漏洞检测领域,数据集的多样性和高质量对模型训练效果有着至关重要的影响。目前,研究人员广泛使用多个公开数据集来支持模型的训练与评估,DAppSCAN和SmartBugs是两个典型的代表。DAppSCAN基于专业审计师的开源安全审计报告,包含10 016个漏洞实例,分为DAppSCAN-Source(25 000多个Solidity文件)和DAppSCAN-Bytecode(8 167个编译合约),其丰富的漏洞类型和高质量的真实审计数据为模型提供了多样化的训练样本,尤其适用于处理源代码和字节码的检测工具[46]。SmartBugs则提供了143个带标记漏洞的Solidity合约和47 000多个未标记的Ethereum合约,专注于工具基准测试,支持多样化漏洞场景和标准化评估框架,能够帮助研究人员评估工具在不同条件下的表现[47]。这些数据集不仅丰富了模型训练数据,也为实验设计和性能评估提供了重要支持。例如,许多研究论文利用这些数据集验证其检测工具的准确性和泛化能力,推动了智能合约漏洞检测技术的进一步发展。通过结合使用这些数据集,研究人员能够更好地应对智能合约漏洞检测中的多样性和复杂性挑战。

3.1.2 数据集的讨论

在讨论数据集时,除了上述这些公开数据集,还有许多不一样的训练数据集。这里选取了上述方法中部分有代表性的作为参考,以此来阐述AI模型更常用的数据集和数据集对AI漏洞检测的影响。
Tann等[27]在实验部分使用的数据集是从Google BigQuery的以太坊区块链数据集获取的920 179个智能合约,涵盖区块0 ~ 4 799 998个(截至2017年12月26日)。经过清理和分类后,最终用于训练和测试的数据集包含8 640个漏洞合约(分为自杀型、挥霍型、贪婪型)和416 944个非漏洞合约。评估指标包括准确率、召回率、精确率、F1分数和接收者操作特征曲线下面积(Receiver Operating Characteristic-Area Under the Curve,ROC-AUC),在测试集上分别达到99.57%、89.90%、82.49%、86.04%和94.81%。而由Xu等提出的CoN2VEC方法[31]使用从29个安全团队的1 199份开源审计报告中提取的数据用于训练,这可以保证数据的多样性和权威性。由此可知,数据集的多样性和权威性等很容易影响到模型的性能,所以很多研究人员并不会采用单一的公开数据集,往往将部分优质的数据集整合,或者从公开的合约代码中用人工审计的方式构建数据集,以满足训练的需要。

3.2 评价体系

3.2.1 评测指标

在智能合约漏洞检测中,常用的评估指标包括准确率、精确率、召回率、F1分数、平均精确率(Average Precision,AP)和ROC-AUC等。这些指标从不同角度衡量检测模型的性能,例如,准确率反映了整体预测正确的比例,精确率关注预测为漏洞的样本中有多少是真正的漏洞,召回率则衡量实际漏洞中有多少被正确检测出来,F1分数是精确率和召回率的调和平均,AP用于评估排序结果的相关性,ROC-AUC用于衡量模型在不同阈值下的分类性能[48]

3.2.2 模型的性能

本小节依旧选择3.1.2中的两个模型作为例子,说明用AI技术在智能合约漏洞检测领域的评测指标如何。两篇论文通过多维度评价指标验证了AI技术在智能合约漏洞检测中的性能[27,31]:Tann等提出的LSTM模型采用准确率(99.57%)、召回率(89.90%)、精确率(82.49%)、F1分数(86.04%)、ROC-AUC(94.81%)及分析时间等指标,证明深度学习对大规模Opcode序列的高效检测能力;Xu等的Con2Vec模型则通过准确率(平均96.76%)、精确率(97.39%)、召回率(96.11%)、F1分数(96.74%)及检测时间(小于0.1秒/合约)等指标,展示了TextCNN在13种漏洞类型上的快速检测优势。这些指标共同体现了AI技术通过Opcode序列特征学习,突破传统方法的路径爆炸问题,实现了高效、鲁棒的漏洞检测,为区块链安全提供了可扩展解决方案。

3.3 基准测试

为了公平、客观地评估不同的漏洞检测方法,研究人员构建了基准测试平台。基准测试通过控制实验环境变量,客观地比较不同技术的性能差异,为研究提供了可靠依据。例如,使用DAppSCAN等数据集作为测试集,评估各种检测工具在相同条件下的性能。这些基准测试平台有助于比较不同方法的优劣,且随着新型漏洞的不断出现,基准测试需要持续更新测试案例,并适应跨链评估等新需求,从而推动检测技术的进步。

4 技术对比与挑战

本节将分析传统方法与AI方法在技术上的差异,进一步对比二者在应用中的优劣。其次还将针对AI技术未来可能遇到的挑战做出分析。

4.1 性能对比

总体而言,AI驱动的漏洞检测方法在检测精度和效率方面较传统方法有显著提升。机器学习模型往往能更好地识别复杂的漏洞模式,并取得较高的检测准确率和F1分数等指标。然而,不同AI方法在具体性能上仍存在差异。例如,深度学习模型在处理复杂、大规模的数据时表现出更强的学习能力,但在训练和推理阶段的计算成本较高;而传统的机器学习模型在小型数据集上可能具有更快的训练速度和更低的计算开销。在检测效率方面,基于规则的静态分析方法通常具有较高的分析速度,但对于复杂的代码结构和漏洞模式可能存在较高的误报率和漏报率;而符号执行方法能够系统地探索程序路径,但在处理大规模合约时容易受到路径爆炸问题的影响,导致分析时间过长[49]。这里选取各技术中具有代表性的方法,以对比AI方法的突出效果,性能对比如表3所示。
表 3 性能对比

Table 3 Performance comparison

方法 代表模型/工具 精确率 召回率 F1分数 准确率 检测效率(秒/合约) 误报率 漏报率 计算开销
静态分析工具 Slither 0.78 0.72 0.75 0.80 0.5~8.0 0.20 0.15
符号执行 Mythril 0.73 0.68 0.70 0.75 1.0~100.0 0.15 0.10
机器学习方法 随机森林 0.87 0.83 0.85 0.88 2.0~20.0 0.10 0.08
深度学习 图神经网络 0.93 0.91 0.92 0.94 5.0~10.0 0.05 0.03

4.2 现存挑战

4.2.1 数据偏见

数据偏见问题是当前AI模型在智能合约漏洞检测中的主要瓶颈之一。由于许多模型依赖相对较小或具有选择性的数据集进行训练,这些数据集往往无法全面覆盖实际应用场景中智能合约的多样性和复杂性[50]。这种数据局限性可能导致模型在面对新型合约或不同区块链平台上的合约时,表现出泛化能力不足的问题。例如,某些模型可能在特定类型的合约上表现良好,但在处理其他编程语言或不同架构的合约时效果显著下降。因此,构建更加全面和多样化的训练数据集,以及开发能够适应不同合约特征的模型,是未来研究的重点方向。

4.2.2 可解释性

模型可解释性是另一个亟待解决的挑战。当前的AI模型,尤其是深度学习模型,通常被视为“黑盒”,其内部决策过程缺乏透明性[51]。在智能合约审计这一安全关键领域,审计人员需要清楚地理解模型的决策依据,以便验证其结果的可靠性并采取相应的修复措施。然而,现有的AI模型往往难以提供详细的解释,导致其在实际应用中的可信度受到质疑。为了提高模型的可解释性,未来的研究可以探索结合符号推理、规则引擎或可视化技术,以增强模型决策的可追溯性和透明度。

4.2.3 可扩展性

扩展性问题也是当前AI技术在智能合约漏洞检测中面临的重要挑战[52]。随着智能合约的规模和复杂性不断增加,以及新的区块链平台和编程语言的不断涌现,现有的检测方法需要具备良好的扩展性和跨平台兼容性。例如,某些模型可能针对以太坊智能合约进行了优化,但在处理其他区块链平台(如Solana或Polkadot)上的合约时表现不佳[53]。此外,随着合约功能的日益复杂,传统的静态分析方法可能无法有效捕捉动态行为或跨合约交互中的漏洞。因此,开发能够适应不同平台、支持多语言分析并具备高效处理大规模合约能力的检测方法,是未来研究的重要目标。

4.2.4 训练数据集质量

在研究中发现,检测效果很容易受到数据集质量的影响。目前的训练数据集往往覆盖范围有限,无法覆盖到所有的漏洞类型;数据集的准确性一般,大部分数据集依靠人工审计,这导致漏标或错标的风险存在;数据集的时效性不足,很多用于训练的数据依然沿用较老版本的代码。这些因素在很大程度上影响了AI方法在智能合约漏洞检测上的应用。

4.2.5 大模型的隐私问题

在利用通用LLMs(如GPT)进行检测时,通常需要在前端输入合约代码,或者直接调用应用程序编程接口(Application Programming Interface,API)。在大模型本身存在隐患的情况下,合约源代码很可能直接被窃取。其次,由于训练模型时可能会“记住”如密码、交易金额等敏感信息,并在后续推理过程中无意泄露,这种被称为“模型记忆”的现象也会为合约的隐私安全问题造成不小的挑战[54]

5 未来研究展望

为进一步推动AI技术在智能合约领域的持续发展,本文在此章节针对利用AI技术可能面临的机遇与挑战展开讨论,旨在为推动AI的漏洞检测提供未来发展的建议。

5.1 可解释AI与可视化

提高AI模型的可解释性对于智能合约漏洞检测的进一步发展至关重要。未来的研究可以聚焦开发专门针对代码分析的可解释AI技术,如能够突出显示导致漏洞分类的特定代码指令或数据流的模型,或者能够输出人类可读的解释,甚至提供修复建议。这将有助于审计人员和开发人员更好地理解模型的决策过程,提高对AI检测结果的信任度,并更有效地进行漏洞修复。

5.2 跨链与多语言支持

随着区块链技术的不断发展,跨链交互和多语言智能合约的使用将越来越普遍。未来的研究需要开发能够支持跨链和多语言智能合约漏洞检测的方法和工具,以应对不同区块链平台和编程语言所带来的安全挑战。这涉及研究不同平台和语言的特性,以及它们之间的交互方式,从而构建更加通用和灵活的漏洞检测框架。

5.3 联邦学习隐私保护

联邦学习作为一种新兴机器学习范式,基于“数据不动,模型移动”的思想而设计,即模型分别部署在参与FL的多个终端和服务器之上,而数据无须离开持有数据的终端就能进行本地模型训练,终端和服务器之间仅存在模型参数或中间结果的交互,通过这样的持续协作完成全局模型的训练[55]
在智能合约漏洞检测中,数据隐私和安全是一个重要的关注点。联邦学习作为一种新兴的分布式机器学习方法,可以在不共享原始数据的情况下,联合多个参与方进行模型训练,从而保护数据隐私。这一点可以作为解决4.2.5大模型的隐私问题的新思路,通过将模型分发到各个客户端,再将分析出来的超参数与特征返还给服务器,这种方式很好地将合约代码直接给大模型做分析。未来的研究可以深入探索将联邦学习应用于智能合约漏洞检测,特别是与大模型结合,实现在保护数据隐私的前提下,利用多方数据进行模型训练,提高检测模型的性能和泛化能力。

5.4 构建更好的数据集

数据集的质量问题严重制约了AI的表现,主要体现在覆盖范围有限、标注准确性不足以及时效性较差等方面。未来的研究应致力于构建更加全面、准确和动态更新的数据集,涵盖多样化的漏洞类型和跨平台合约代码,并结合自动化工具与人工审计的混合标注方法,以提高数据标注的准确性和一致性。此外,建立数据集的动态更新机制,及时纳入最新的合约代码和漏洞案例,确保其能够反映最新的安全威胁,是提升模型泛化能力和检测效果的关键。

6 结束语

智能合约作为区块链技术的核心组件,其安全性至关重要。本文对2020—2025年基于AI的智能合约漏洞检测技术进行了全面综述,涵盖机器学习、自然语言处理、图模型与神经网络以及符号执行与AI融合等多种检测方法,分析了它们的优势、局限性和性能,并探讨了现存的挑战和未来的研究方向。尽管AI技术在智能合约漏洞检测中已经取得了显著成果,但仍须不断努力以应对新的安全威胁和挑战,推动智能合约安全技术的持续发展,为区块链生态系统的稳定和可靠运行提供有力保障。
1
CHAUM D. Computer systems established, maintained, and trusted by mutually suspicious groups[D]. Berkeley: University of California, 1982.

2
SHELDON R. A timeline and history of blockchain technology[EB/OL]. (2021-01-01)[2024-03-15]. https://whatis.techtarget.com/feature/A-timeline-and-history-of-blockchain-technology.

3
NAKAMOTO S. Bitcoin: A peer-to-peer electronic cash system[EB/OL]. (2008-10-31)[2024-03-15]. https://bitcoin.org/bitcoin. pdf.

4
NICK S. The idea of smart contracts[EB/OL].(1997-01-01)[2024-03-15]. http://www.fon.hum.uva.nl/rob/Courses/InformationInSpeech/CDROM/Literature/LOTwinters chool2006/szabo.best.vwh.net/idea.html.

5
TIAN Y, ZHANG N, LIN Y H, et al. SmartAuth: User-centered authorization for the Internet of Things[C]. 26th USENIX Security Symposium.USENIX, 2017: 361-378.

6
MEHAR M I, SHIER C L, GIAMBATTISTA A, et al. Understanding a DAO attack[J]. Journal of Cases on Information Technology, 2019, 21 (1): 19- 32.

DOI

7
CHU H, ZHANG P, DONG H, et al. A survey on smart contract vulnerabilities: Data sources, detection and repair[J]. Information and Software Technology, 2023, 159, 107221.

DOI

8
CHESS B, MCGRAW G. Static analysis for security[J]. IEEE Security and Privacy Magazine. 2004, 2(6): 76-79.

9
SINGH, KUMAR S, SINGH A. Software testing[M]. India: Vandana Publications, 2012.

10
BHARGAVAN K, DELIGNAT-LAVAUD A, FOURNET C, et al. Formal verification of smart contracts[C]//Proceedings of the 2016 ACM Workshop on Programming Languages and Analysis for Security. ACM, 2016: 91-96.

11
MOMENI P, WANG Y, SAMAVI R, et al. Machine llearning model for smart contracts security analysis[C]// 2019 17th International Conference on Privacy, Security and Trust. Fredericton, 2019: 1-6.

12
LUU L. Oyente: An analysis tool for smart contracts[EB/OL]. (2017-7-19)[2021-04-05]. https://loiluu.com/oyente.html.

13
SHARMA N, SHARMA S. A survey of Mythril, a smart contract security analysis tool for EVM bytecode[J]. Indian Journal of Natural Sciences, 2022, 13 (75): 39- 41.

14
FEIST J, GRIECO G, GROCE A, et al. Slither: A static analysis framework for smart contracts[C]//2019 IEEE/ACM 2nd International Workshop on Emerging Trends in Software Engineering for Blockchain. IEEE, 2019: 8-15.

15
TIKHOMIROV S, VOSKRESENSKAYA E, IVANITSKIY I, et al. SmartCheck: Static analysis of Ethereum smart contracts[C]//2018 IEEE/ACM 1st International Workshop on Emerging Trends in Software Engineering for Blockchain (WETSEB). IEEE, 2018: 9-16.

16
LIU Z, JIANG M, ZHANG S, et al. A smart contract vulnerability detection mechanism based on deep learning and expert rules[J]. IEEE Access, 2023, (11): 77990-77999.

17
VIDAL F R, IVAKI N, LARANJEIRO N. Vulnerability detection techniques for smart contracts: A systematic literature review[J]. Journal of Systems and Software, 2024(217): 112160-112193.

18
钱鹏, 刘振广, 何钦铭, 等. 智能合约安全漏洞检测技术研究综述[J]. 软件学报, 2022, 33 (8): 3059- 3085.

QIAN P, LIU Z G, HE Q M, et al. Survey on smart contract vulnerability detection techniques[J]. Journal of Software, 2022, 33 (8): 3059- 3085.

19
邵奇峰, 金澈清, 张召, 等. 区块链技术: 架构及进展[J]. 计算机学报, 2018, 41 (5): 969- 988.

DOI

SHAO Q F, JIN C Q, ZHANG Z, et al. Blockchain technology: Architecture and progress[J]. Chinese Journal of Computers, 2018, 41 (5): 969- 988.

DOI

20
SANNI B. Role of smart contracts in automating supply chain transactions[EB/OL]. (2024-10-01)[2025-03-01]. https://www.researchgate.net/publication/385209080_Role_of_Smart_Contracts_in_Automating_Supply_Chain_Transactions.

21
ATZEI N, BARTOLETTI M, CIMOLI T. A survey of attacks on Ethereum smart contracts[R]. Luxembourg: IACR, 2016: 1007.

22
LUU L, CHU D H, OLICKEL H, et al. Making smart contracts smarter[C]// Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security. ACM, 2016: 254-269.

23
QIN K, ZHOU L, LIVSHITS B, et al. Attacking the DeFi ecosystem with flash loans for fun and profit[J]. arXiv preprint, arXiv: 2003. 03810, 2021.

24
NIKOLIĆ I, KOLLURI A, SERGEY I, et al. Finding the greedy, prodigal, and suicidal contracts at scale[C]// Proceedings of the 34th Annual Computer Security Applications Conference. ACM, 2018: 653-663.

25
张文博, 陈思敏, 魏立斐, 等. 基于形式化方法的智能合约验证研究综述[J]. 网络与信息安全学报, 2022, 8 (4): 12- 28.

DOI

ZHANG W B, CHEN S M, WEI L F, et al. Survey on formal methods-based smart contract verification[J]. Journal of Cyber Security, 2022, 8 (4): 12- 28.

DOI

26
杨伊, 李滢, 陈恺. 基于自然语言处理的漏洞检测方法综述[J]. 计算机研究与发展, 2022, 59 (12): 2649- 2666.

DOI

YANG Y, LI Y, CHEN K. Survey on natural language processing-based vulnerability detection methods[J]. Journal of Computer Research and Development, 2022, 59 (12): 2649- 2666.

DOI

27
TANN W J W, HAN X J, GUPTA S S, et al. Towards safer smart contracts: A sequence learning approach to detecting security threats[J]. arXiv preprint, arXiv:, 1811, 06632, 2018.

28
QIAN P, LIU Z G, HE Q M, et al. Towards automated reentrancy detection for smart contracts based on sequential models[J]. IEEE Access, 2020, 8: 19685-19695.

29
ASHIZAWA N, YAMAMOTO T, TANAKA K, et al. Eth2Vec: Learning contract-wide code representations for vulnerability detection on ethereum smart contracts[C]//Proceedings of the 3rd ACM international symposium on blockchain and secure critical infrastructure. ACM, 2021.

30
NGUYEN H H, NGUYEN N M, XIE C, et al. MANDO-HGT: Het erogeneous graph transformers for smart contract vulnerability detection[C]//2023 IEEE/ACM 20th International Conference on Mining Software Repositories. IEEE, 2023: 334-346.

31
XU Z, LI Y, WANG J, et al. [J]. International Journal of Data Warehousing and Mining, 2023, 19(2): 1-23.

32
FENG Z, GUO D, TANG D, et al. CodeBERT: A pre-trained model for programming and natural languages[J]. arXiv preprint, arXiv:, 2002, 08155, 2020.

33
HANIF H, MAFFEIS S.VulBERTa: Simplified source code pre-training for vulnerability detection[C]//2022 International joint conference on neural networks (IJCNN). IEEE, 2022: 1-8.

34
XING C, CHEN Z, CHEN L, et al. A new scheme of vulnerability analysis in smart contract with machine learning [J]. Wirel Networks, 2024(30): 6325-6334.

35
ZHANG L, WANG J, WANG W, et al. Smart contract vulnerability detection combined with multi-objective detection[J]. Computer Networks, 2022, 217(9): 109289-109290.

36
ZHANG Y, LIU Z G, QIAN P, et al. Smart contract vulnerability detection using graph neural networks[C]//Proceedings of the Twenty-Ninth International Conference on International Joint Conferences on Artificial Intelligence. ACM, 2020: 3283-3290.

37
ZHEN Z, ZHAO X, ZHANG J, et al. DA-GNN: A smart contract vulnerability detection method based on dual attention graph neural network[J]. Computer Networks, 2024, 242, 110238.

DOI

38
ZHOU K, CHENG J, LI H, et al. SC-VDM: A light-weight smart contract vulnerability detection model [C]//Proceedings of the International Conference on Data Mining and Big Data. Springer, 2021: 138.

39
HWANG S J, CHOI S H, SHIN J, et al. CodeNet: Codetargeted convolutional neural network archi- tecture for smart contract vulnerability detection[J]. IEEE Access, 2022, 10, 32595-32607.

DOI

40
SUN X, TU L, ZHANG J, et al. ASSBert: Active and semi-supervised bert for smart contract vulnerability detection[J]. Journal of Information Security and Applications, 2023, 73: 103423.

41
WEI Z, SUN J, ZHANG Z, et al. FTSmartAudit: A knowledge distillation-enhanced framework for automated smart contract auditing using fine-tuned LLMs[J]. arXiv preprint, arXiv: 2410.13918, 2024.

42
BOI B, ESPOSITO C, LEE S. VulnHunt-GPT: A smart contract vulnerabilities detector based on OpenAI chatGPT[C]//Proceedings of the 39th ACM/SIGAPP Symposium on Applied Computing. ACM, 2024: 1517-1524.

43
WEI Z, SUN J, ZHANG Z, et al. LLM-SmartAudit: Advanced smart contract vulnerability detection[J]. arXiv preprint, arXiv:, 2410, 09381, 2024.

44
YU J. Retrieval augmented generation integrated large language models in smart contract vulnerability detection[J]. arXiv preprint, arXiv:, 2407, 14838, 2024.

45
LIU Z, JIANG M, ZHANG S, et al. A smart contract vulnerability detection mechanism based on deep learning and expert rules[J]. IEEE Access, 2023, 11, 77990- 77999.

DOI

46
ZHENG Z, SU J, CHEN J, et al. DAppSCAN: Building large-scale datasets for smart contract weaknesses in DApp projects[J]. IEEE Transactions on Software Engineering, 2024, 50(6): 1360 - 1373.

47
FERREIRA J F, CRUZ P, DURIEUX T, et al. SmartBugs: A framework to analyze solidity smart contracts[C]//Proceedings of the 35th IEEE/ACM international conference on automated software engineering. IEEE, 2020: 1349-1352.

48
GAO Z. When deep learning meets smart contracts[C]//Proceedings of the 35th IEEE/ACM International Conference on Automated Software Engineering. IEEE, 2020: 1400-1402.

49
KUSHWAHA S S, JOSHI S, SINGH D, et al. Ethereum smart contract analysis tools: A systematic review[J]. IEEE Access, 2022, 10, 57037- 57062.

DOI

50
王晓丽, 严驰. 生成式AI大模型的风险问题与规制进路: 以GPT-4为例[J]. 北京航空航天大学学报(社会科学版), 2025, 38 (1): 1- 10.

WANG X L, YAN C. Risks and regulatory approaches of generative AI large models: A case study of GPT-4[J]. Journal of Beijing University of Aeronautics and Astronautics (Social Sciences Edition), 2025, 38 (1): 1- 10.

51
PAUDEL D, DE WIT A, BOOGAARD H, et al. Interpretability of deep learning models for crop yield forecasting[J]. Computers and Electronics in Agriculture, 2023, 206, 107663.

DOI

52
QIU Y, MA L, PRIYADARSHI R. Deep learning challenges and prospects in wireless sensor network deployment[J]. Archives of Computational Methods in Engineering, 2024, 31(6): 3231-3254.

53
朱涵, 吴胜. 区块链跨链技术及其安全性综述[J]. 计算机应用研究, 2024, 41 (12): 1- 15.

ZHU H, WU S. Blockchain cross-chain technology and its security: A survey[J]. Application Research of Computers, 2024, 41 (12): 1- 15.

54
施敏, 杨海军. 大语言模型数据隐私保护的难点与探索[J]. 大数据研究, 2024, 10 (5): 1- 12.

SHI M, YANG H J. Challenges and explorations in data privacy protection for large language models[J]. Big Data Research, 2024, 10 (5): 1- 12.

55
陈卓, 江辉, 周杨. 一种面向联邦学习对抗攻击的选择性防御策略[J]. 电子与信息学报, 2024, 46 (3): 1119- 1127.

DOI

CHEN Z, JIANG H, ZHOU Y. A selective defense strategy against adversarial attacks in federated learning[J]. Journal of Electronics & Information Technology, 2024, 46 (3): 1119- 1127.

DOI

文章导航

/