Page 368 - 《软件学报》2026年第1期
P. 368

揭晚晴 等: 智能合约与      DeFi 协议漏洞检测技术综述                                                365


                 漏洞类型. 在场景适配性上, LLM        作为主要检测引擎更适用于开发阶段的轻量级实时检测, 而与传统方法结合则
                 更适合安全审计阶段的高精度分析.
                    基于  LLM  的智能合约漏洞检测方法与传统方法相比, 具有以下核心优势. 首先, LLM                    在代码语义理解、逻辑
                 推理和生成方面的能力使其能够处理复杂的漏洞检测任务, 尤其在检测合约中的高阶逻辑漏洞时表现出优势和潜
                 力. 传统的静态分析和模糊测试方法往往局限于基础的代码分析和输入覆盖, 而                          LLM  能够通过推理和上下文理

                 解, 识别出更加复杂和隐蔽的漏洞类型. 其次, LLM            具有自适应微调能力, 使得它能够根据特定的漏洞场景进行快
                 速调优, 从而快速适配不同的漏洞检测任务, 减少对领域特定规则的依赖, 提升检测的精度和适用性. 此外, LLM
                 在与传统方法结合时, 能够通过生成测试用例、指导模糊测试活动以及自动生成形式化属性, 增强传统方法的检
                 测覆盖度和效率. 然而, LLM      的方法也面临着稳定性和漏洞类型适应性的问题, 当前不同                    LLM  及其提示设计对检
                 测效果的影响较大, 需要进一步优化.
                    LLM  在智能合约层漏洞检测中的应用具有重要潜力, 尤其是在处理新兴合约漏洞类型和提高检测性能方面.
                 作为一种新的技术范式, LLM        在语义理解、推理能力和任务适配性方面显著优于传统方法. 然而, LLM                      的稳定性
                 和泛化能力仍需进一步提升, 未来研究应聚焦于优化提示设计、增强模型鲁棒性, 并探索                            LLM  与传统方法的深度
                 融合, 以提升其在智能合约安全领域的实际应用效果.
                  3.2   DeFi 协议层漏洞检测方法
                    DeFi 协议由多个智能合约组成, 但是协议的复杂的业务逻辑和多合约交互特性显著增加了漏洞利用和攻击
                 检测的难度, 相比传统智能合约安全漏洞检测更具挑战性. 目前, DeFi 协议层的漏洞检测方法主要集中在价格操
                 纵漏洞的检测, 以下将分别介绍价格操纵漏洞检测方法及其他检测技术.
                  3.2.1    价格操纵漏洞检测方法
                    交易顺序依赖类型漏洞在          DeFi 协议中普遍存在, 攻击者可以利用抢先交易和三明治攻击等方式进行攻击. 为
                 了应对这些威胁, 研究者们开发了多种检测和防御方法.
                    首先, 对于抢先交易漏洞, Torres 等人      [85] 通过基于交易和攻击模式的分析方法, 详细揭示了以太坊区块链上发
                 生的抢先交易行为. 研究表明, 这些攻击者能够通过提前获取交易信息并优先执行, 从中获利, 这一现象对                              DeFi 生
                 态系统构成了重大威胁. 该研究的方法深入分析交易数据流, 并构建了一个框架, 用于识别和量化这些攻击的影
                 响. 另一个应对抢先交易漏洞的方法是静态分析技术. Nyx                系统  [128] 通过在智能合约部署前的静态分析, 能够有效
                 识别出潜在的抢先交易漏洞. 该方法通过分析合约代码的执行路径和逻辑, 提前发现可能被利用的安全漏洞, 从而
                 在合约部署前进行修复, 降低攻击发生的可能性.
                    针对三明治攻击, Zhou      等人  [129] 通过数学形式化的方式对去中心化交易所上的三明治攻击进行了深入研究.
                 研究表明, 攻击者通过操控交易顺序, 使得他们能够在人们购买代币之前先买入, 然后在人们买入后立即卖出, 获
                 利丰厚. 同时, 该研究根据交易在区块链区块内的相对位置来量化敌对交易者能够进行攻击的概率. Heimbach                              等
                 人  [130] 还提出了通过博弈论来消除三明治攻击的可能性, 该研究提出了一个“三明治博弈”, 从攻击者和受害者的角
                 度分析三明治攻击, 并且提供了一种简单而高效的算法, 交易者可以使用它来设置滑点容忍度, 保障                               DeFi 协议避
                 免遭受三明治攻击.
                    为实现实时检测针对        DeFi 协议的三明治攻击, Li 等人      [131] 还开发了一种基于   Geth  客户端的实时三明治攻击
                 检测系统. 该系统集成到       go-Ethereum  客户端  Geth  之中, 通过实时分析交易数据流, 能够在攻击发生时立即检测
                 并响应, 防止攻击者从中获利, 并且保持全节点的正常运行速度. 这种实时检测方法可以为保护                             DeFi 用户的私人
                 资金提供重要的安全保障.
                    闪电贷和预言机是实现价格操纵攻击中常用的工具, 其中闪电贷利用大额、快速借贷影响市场价格, 预言机
                 则可能被操控以篡改价格数据. 针对这些漏洞, 研究者提出了多种检测和预防方法.
                    闪电贷攻击的检测方面, LeiShen       [132] 通过基于规则的方法进行检测闪电贷攻击, 研究者分析了以太坊区块链
                 上发生的实际攻击事件, 并定义了           3  种闪电贷价格操纵的攻击模式, 基于这些攻击模式对交易数据进行分析从而
   363   364   365   366   367   368   369   370   371   372   373