2021年8月,Poly Network 被黑。6.11亿美元不翼而飞。😱
2022年3月,Ronin Network 被黑。6.25亿美元蒸发。
2022年10月,BNB Chain 被黑。5.7亿美元被盗。
这些不是电影情节。这是 DeFi(去中心化金融)过去几年的日常。智能合约漏洞每年造成的损失以**十亿美元**计。
但有一个问题比损失本身更可怕:**大多数已披露的漏洞,从未被验证过是否真的可被利用。**
安全研究员在代码里发现可疑模式,写下"这可能是个重入攻击",然后就不管了。 protocol 开发者看到警告,但不知道这是真威胁还是虚惊。攻击者则在暗处等待,默默验证每一个"可能"。
这就是 DeFi 安全的现状:一个巨大的、未验证的灰色地带。🌫️
---
2026年5月4日,Ruichao Liang 等8位研究者发布了一篇可能改变这个现状的论文。他们造了一个AI系统,名字叫 **EvoPoC**。🎯
这个系统做了什么?
它读了2,573个智能合约。自动找到了漏洞。自动生成了攻击代码。自动验证了攻击是否真的能赚到钱。
成功率:**96.6%**。
它重现了85个真实世界历史上的DeFi攻击。它发现了16个以前没人知道的0-day漏洞。它帮助保护了价值**7,060万美元**的资产。
而且,这个AI不是简单地"生成代码"。它在做**结构化推理**——理解协议语义、追溯失败根因、组合攻击原语。就像一个真正的安全研究员,只不过它从不疲倦,从不遗漏,24小时工作。
---
## 但先搞清楚:DeFi漏洞到底是什么?💰
在讲 EvoPoC 之前,我需要解释几个概念。
> **Annotation: 智能合约(Smart Contract)**
>
> 运行在区块链上的自动执行程序。一旦部署,代码不可更改。它管理着用户的资产——存款、借贷、交易。如果代码有bug,攻击者可以直接从合约中偷钱,而且因为区块链的不可逆性,钱一旦被盗就几乎无法追回。
> **Annotation: DeFi(Decentralized Finance)**
>
> 去中心化金融,指在区块链上构建的金融服务(借贷、交易、衍生品等),不需要传统银行中介。2026年DeFi总锁仓价值(TVL)已超过数千亿美元,但安全问题一直是其阿喀琉斯之踵。
> **Annotation: PoC(Proof of Concept)**
>
> 概念验证。在安全领域,PoC 是一段代码,证明某个漏洞确实可以被利用来造成实际损害。发现漏洞和证明漏洞可利用,是两个完全不同的难度级别。EvoPoC 的名字就来自"Evolutionary Proof of Concept"。
传统上,找到 DeFi 合约漏洞的流程是这样的:
```
┌─────────────────────────────────────────────────────────┐
│ 传统 DeFi 安全审计流程 │
├─────────────────────────────────────────────────────────┤
│ │
│ 1️⃣ 人工阅读代码 → 2️⃣ 发现可疑模式 → 3️⃣ 手动构造PoC │
│ ↓ ↓ ↓ │
│ 数小时/天 凭经验判断 数小时/天 │
│ ↓ ↓ ↓ │
│ 容易遗漏 容易误判 经常失败 │
│ │
│ 结果:大多数披露的漏洞从未被验证 │
│ 后果:protocol 暴露于未知风险中 │
│ │
└─────────────────────────────────────────────────────────┘
```
这个流程的问题是:**劳动密集型 + 主观性强 + 覆盖率低**。
一个经验丰富的审计师一天能仔细读几千行代码。但一个复杂的 DeFi protocol 可能有几十万行代码。而且,发现"这里看起来可疑"和证明"这个可疑点确实能偷走钱"之间,隔着一道巨大的鸿沟。
---
## EvoPoC 的核心洞察:漏洞利用不是写代码,是推理 🔬
Liang 团队的关键洞察非常反直觉:
> **exploit synthesis is not a code generation task but a structured reasoning problem.**
翻译:**合成攻击代码不是代码生成任务,而是一个结构化推理问题。**
什么意思?
传统的想法是:给AI一段有漏洞的合约代码,让它"写一段攻击代码"。这就像给一个人一本菜谱,让他"写一道菜"。他可能写得出来,但不一定好吃,因为他不理解食材之间的关系。
EvoPoC 的做法完全不同。它要求AI先理解三件事:
1. **协议语义**:这个合约在做什么?(借贷?交易?流动性挖矿?)
2. **失败根因**:漏洞的本质是什么?(重入?价格操纵?权限绕过?)
3. **攻击原语**:有哪些已知的攻击手法可以组合?(闪电贷?三明治攻击?)
只有理解了这三件事,才能构造出真正有效的攻击。
---
## 分层知识图谱:AI的"安全百科全书" 🧠
EvoPoC 把这三类知识组织成一个 **Hierarchical Knowledge Graph(分层知识图谱,HKG)**。
> **Annotation: 分层知识图谱(Hierarchical Knowledge Graph, HKG)**
>
> EvoPoC 的核心数据结构。它不是简单的关键词列表,而是一个分层的图结构:底层是具体的攻击实例和合约代码模式,中层是攻击原语(如"重入攻击""价格预言机操纵"),顶层是协议语义概念(如"AMM""闪电贷""治理机制")。LLM 利用这个图谱进行多跳推理——从具体代码模式跳到抽象攻击原理,再跳回具体利用方案。
```
┌─────────────────────────────────────────────────────────┐
│ EvoPoC 的分层知识图谱 (HKG) │
├─────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────────────────────────────────────┐ │
│ │ 层级3: 协议语义 (Protocol Semantics) │ │
│ │ • AMM (自动做市商) │ │
│ │ • 闪电贷 (Flash Loan) │ │
│ │ • 治理机制 (Governance) │ │
│ │ • 流动性挖矿 (Yield Farming) │ │
│ └─────────────────────────────────────────────────┘ │
│ ↕ 关联 │
│ ┌─────────────────────────────────────────────────┐ │
│ │ 层级2: 攻击原语 (Exploit Primitives) │ │
│ │ • 重入攻击 (Reentrancy) │ │
│ │ • 价格预言机操纵 (Oracle Manipulation) │ │
│ │ • 权限绕过 (Access Control Bypass) │ │
│ │ • 整数溢出 (Integer Overflow) │ │
│ └─────────────────────────────────────────────────┘ │
│ ↕ 实例化 │
│ ┌─────────────────────────────────────────────────┐ │
│ │ 层级1: 具体模式 (Concrete Patterns) │ │
│ │ • 代码片段 A (某合约的 check-effects-interaction)│ │
│ │ • 代码片段 B (某预言机的更新逻辑) │ │
│ │ • 历史攻击 #1 (Poly Network 的跨链验证绕过) │ │
│ │ • 历史攻击 #2 (Beanstalk 的治理闪电贷攻击) │ │
│ └─────────────────────────────────────────────────┘ │
│ │
│ LLM 多跳推理路径: │
│ 具体代码异常 → 匹配攻击原语 → 理解协议语义 → 合成攻击 │
│ │
└─────────────────────────────────────────────────────────┘
```
这个图谱的作用就像安全研究员大脑中的"经验库"——只不过它永远不会忘记,永远不会疲惫,而且可以被精确查询。
---
## 两阶段验证:不只要能运行,还要能赚钱 💸
EvoPoC 最聪明的地方不是"生成攻击代码",而是**验证攻击代码**。
生成代码很容易。让代码在真实环境中成功执行并赚到钱,很难。
EvoPoC 设计了一个**两阶段验证框架**:
```
┌─────────────────────────────────────────────────────────┐
│ EvoPoC 两阶段验证框架 │
├─────────────────────────────────────────────────────────┤
│ │
│ 阶段1: 逻辑验证 (Logical Verification) │
│ ┌─────────────────────────────────────────────────┐ │
│ │ • 工具: SMT 求解器 (SMT Solver) │ │
│ │ • 目标: 检查攻击路径是否逻辑可达 │ │
│ │ • 验证: 从初始状态到攻击完成状态是否存在可行路径 │ │
│ │ • 输出: 通过 / 不可达 (路径被合约逻辑阻断) │ │
│ └─────────────────────────────────────────────────┘ │
│ ↓ 通过 │
│ 阶段2: 经济验证 (Economic Verification) │
│ ┌─────────────────────────────────────────────────┐ │
│ │ • 工具: 资产级状态模拟 (Asset-level Simulation) │ │
│ │ • 目标: 检查攻击是否能产生实际利润 │ │
│ │ • 验证: 模拟交易执行后的资产余额变化 │ │
│ │ • 输出: 利润 > 0 (可行) / 利润 ≤ 0 (不可行) │ │
│ └─────────────────────────────────────────────────┘ │
│ │
│ 只有两阶段都通过,才算一个"有效的PoC" │
│ │
└─────────────────────────────────────────────────────────┘
```
> **Annotation: SMT 求解器(Satisfiability Modulo Theories Solver)**
>
> 一种自动定理证明工具,用于判断一组逻辑约束是否可满足。在 EvoPoC 中,SMT 求解器将智能合约的执行路径编码为约束条件,然后检查"从状态A到状态B是否存在可行路径"。如果求解器返回"不可满足",意味着攻击路径被合约逻辑阻断。
> **Annotation: 资产级状态模拟(Asset-level State Simulation)**
>
> 在虚拟环境中模拟区块链交易执行,跟踪每个地址的资产余额变化。不同于简单的代码运行,它模拟真实的区块链状态转换——包括代币转账、流动性池余额更新、价格变化等。这确保生成的攻击不仅是"代码能跑",而是"能真的赚到钱"。
这个两阶段验证回答了安全领域最关键的问题:
**"这个攻击不只是理论上可行,它在经济上也真的有利可图吗?"**
---
## 数据说话:96.6%的成功率意味着什么 📊
让我用数字告诉你 EvoPoC 有多强。
**检测能力:**
| 指标 | EvoPoC | 传统模糊器 | LLM生成器 A1 |
|:-----|:------:|:---------:|:------------:|
| 检测 Recall | **98%** | ~60% | ~75% |
| 检测 F1-Score | **0.90** | ~0.55 | ~0.65 |
| 测试合约数 | 2,573 | — | — |
| 测试项目数 | 72 | — | — |
**漏洞利用能力:**
| 指标 | EvoPoC | SOTA 模糊器 | LLM生成器 A1 |
|:-----|:------:|:----------:|:------------:|
| 利用成功率 (ESR) | **96.6%** | ~19% | ~48% |
| 历史攻击重现 | **85 / 88** | ~30 | ~45 |
| 可恢复价值倍数 | 基准 | **1/300×** | **1/8.5×** |
| ESR 倍数 | 基准 | **1/5×** | **1/2×** |
**真实世界影响:**
| 指标 | 数值 |
|:-----|:----:|
| 恢复资产价值 | **$116.2M** |
| 0-day 漏洞发现 | **16个** |
| 保护资产价值 | **$70.6M** |
| 漏洞赏金收入 | **$2,900** |
这些数字意味着什么?
传统模糊测试器(如 Verite、ItyFuzz)找到漏洞后,只有约19%的概率能成功构造出可利用的攻击。EvoPoC 把这个数字推到了 **96.6%**。
差距不是一倍两倍,是 **5倍**。
---
## 但我必须说一个不舒服的事情 😰
EvoPoC 的论文让我兴奋,但也让我脊背发凉。
因为这个系统的工作方式,**攻击者也可以复制**。
论文中的技术是公开的。HKG 的构建方法在论文里写得清清楚楚。两阶段验证框架的实现细节也足够让一个有能力的工程师复现。
这意味着什么?
**攻防不对称正在被打破——但不是单向的。**
防御者可以用 EvoPoC 来审计自己的合约,在攻击者之前发现漏洞。但攻击者也可以用同样的技术(或者改进版)来自动扫描整个 DeFi 生态,寻找下一个 Poly Network。
论文发现的16个0-day漏洞被负责任地披露,protocol 得以修复。但如果有人用类似技术却不披露呢?
这是一个**自动化的武器**。
它可以用来保护资产,也可以用来窃取资产。区别只在于谁先用它,以及用的人的意图。
---
## 这不是科幻,这是现在 🚨
让我把这件事推向它最不舒服的结论。
EvoPoC 在72个已审计的项目中发现了16个0-day漏洞。这些项目已经**被人工审计过**,被认为"足够安全"。
但 EvoPoC 仍然找到了问题。
这说明什么?
**人工审计已经不够了。** 不是审计师不够优秀,而是 DeFi 的复杂度已经超出了人类的认知边界。一个 protocol 可能有几十个合约、几百个函数、几千行代码,以及它们之间复杂的交互关系。人类可以读懂每一行代码,但很难在脑中模拟所有可能的交互组合。
而 EvoPoC 可以。它不会疲劳,不会遗漏,不会受限于工作时间的限制。
这不是在说"AI 要取代安全审计师"。这是在说:**安全审计的未来,是人类专家 + AI 系统的协作。** 人类提供直觉、创造力和对业务逻辑的理解。AI 提供覆盖范围、执行速度和精确验证。
但过渡期会很危险。在防御者全面采用 AI 审计之前,攻击者可能已经先用上了。
---
## 论文详细信息 📚
**基本信息**
| 项目 | 内容 |
|:-----|:-----|
| **标题** | EvoPoC: Automated Exploit Synthesis for DeFi Smart Contracts via Hierarchical Knowledge Graphs |
| **作者** | Ruichao Liang, Jing Chen, Xianglong Li, Huangpeng Gu, Yebo Feng, Yue Xue, Cong Wu, Yang Liu |
| **arXiv ID** | [2605.02868](https://arxiv.org/abs/2605.02868) |
| **发布日期** | 2026年5月4日 |
| **类别** | cs.CR (Computer Security), cs.SE (Software Engineering) |
**核心贡献**
1. 🧠 提出 **分层知识图谱 (HKG)** 作为 LLM 引导多跳推理的结构化记忆
2. 🔬 提出**两阶段验证框架**:SMT 求解器检查逻辑可达性 + 资产级状态模拟检查经济可行性
3. 🤖 构建**知识驱动的智能体系统**,实现端到端漏洞检测与利用合成
4. 📊 在88个真实DeFi攻击和72个审计项目(2,573合约)上评估
**关键实验数据**
| 指标 | 数值 |
|:-----|:----:|
| 检测 Recall | **98%** |
| 检测 F1-Score | **0.90** |
| 利用成功率 (ESR) | **96.6%** |
| 历史攻击重现 | **85 / 88** |
| 恢复资产价值 | **$116.2M** |
| 0-day 漏洞 | **16个** |
| 保护资产价值 | **$70.6M** |
| 漏洞赏金 | **$2,900** |
**与SOTA对比**
| 对比对象 | ESR 倍数 | 可恢复价值倍数 |
|:---------|:--------:|:--------------:|
| SOTA 模糊器 (Verite, ItyFuzz) | **5×** | **300×** |
| LLM生成器 (A1) | **2×** | **8.5×** |
**概念注释索引**
| 概念 | 说明 |
|:-----|:-----|
| 智能合约 | 区块链上自动执行的程序,代码不可更改 |
| DeFi | 去中心化金融,区块链上的金融服务 |
| PoC | 概念验证,证明漏洞确实可被利用的代码 |
| HKG | 分层知识图谱,EvoPoC的核心数据结构 |
| SMT 求解器 | 自动定理证明工具,检查攻击路径逻辑可达性 |
| 资产级状态模拟 | 虚拟环境中模拟交易执行和资产变化 |
| ESR | Exploit Success Rate,漏洞利用成功率 |
| 0-day | 未公开披露的漏洞 |
登录后可参与表态
讨论回复
0 条回复还没有人回复,快来发表你的看法吧!
推荐
推荐
智谱 GLM-5 已上线
我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。
领取 2000万 Tokens
通过邀请链接注册即可获得大礼包,期待和你一起在 BigModel 上畅享卓越模型能力