W3
安全实战与案例库进阶368 次阅读

Curve 被盗约 7000 万美元:编译器漏洞与重入锁失效

问题不在 Curve 的代码,而在它依赖的 Vyper 编译器某个版本的防重入机制失效——提醒我们信任链上还有"工具链"这一层。

#安全#案例#Vyper#编译器#重入攻击#Curve

一句话结论

Curve 事件把风险来源推进了一层:即使业务代码写对了,编译器生成错字节码同样会造成资金损失。

事件经过

2023 年 7 月,Curve Finance 上多个稳定币池被攻击,合计损失约 7000 万美元。事后定位到根因是 Vyper 编译器 0.2.15(以及 0.2.16 的早期发行版) 在生成防重入锁时存在缺陷,导致依赖该锁的池子实际上处于无保护状态。

根本原因:防重入锁没有真正生效

Curve 的池子用重入锁(reentrancy guard)防止在转账回调中再次进入关键函数。而在有缺陷的编译器版本下:

  • 编译器对重入锁状态变量的读写顺序产生了错误优化
  • 锁的写入没有按预期在回调发生前落盘
  • 于是攻击者可以在回调中重新进入函数,完成重入攻击

也就是说,开发者在源码层面写了正确的防护,但编译后在链上执行的字节码并不具备该防护。

为什么影响面这么大

  • Curve 是以太坊稳定币交易的核心基础设施,多个池子共享同一编译器版本
  • 攻击发生后引发了市场对相关资产与借贷协议连锁清算的担忧(因为大量 LP 代币被用于抵押)
  • 攻击者还在链上遭到 MEV 抢跑,实际部分资金被第三方截走

给你的教训

  • 「经过审计的源码」不等于「经过审计的字节码」:严格的项目会对已部署字节码再做校验。
  • 依赖第三方库与编译工具时,版本锁定与升级评估是安全流程的一部分,不是运维小事。
  • 对普通用户:协议使用的编译器/框架出现高危漏洞公告时,应及时撤出资金观望,而不是等官方说明。
  • 再一次印证:重入攻击仍是 Web3 的第一大漏洞类型,跨越十余年仍在造成损失。

延伸阅读

动手教程

把这个概念用起来的分步实操,跟着做一遍比再读十篇都记得牢

中心化交易所注册与账户安全设置
从选平台、核实官网、注册账号、KYC 实名,到 2FA、反钓鱼码、提现白名单和 API 权限,一次性把 CEX 账户的安全设置做全,避免以后被盗号或钓鱼。
预计 20-30 分钟 →
硬件钱包与钱包安全加固:冷存储、多签与分层策略
把钱包安全从「小心别被骗」升级为「即使被骗也伤不到根本」:为什么硬件钱包是资产安全的分水岭——私钥永不接触网络、签名在设备内完成、电脑中木马也拿不到密钥;硬件钱包选型与<strong>只从官方渠道购买</strong>(拒绝二手与第三方改装)的原因;设备初始化时助记词必须在设备屏幕上生成与抄写;与 MetaMask 联动的配置流程与屏幕双重核对纪律;多签钱包(Safe)的原理、阈值配置与团队共管场景;社交恢复与智能钱包如何消除「助记词丢失即终局」;分账户策略的落地方法;家庭与团队场景下的备份分片、共同持有人与继承方案;最后是一份安全加固总清单与年度安全复盘流程。
预计 40-50 分钟 →
智能合约原理:EVM、状态与不可篡改
从零理解智能合约:它为什么被称为「部署在链上的程序」,以太坊如何从一本账本升级为「世界计算机」,合约地址、字节码、存储与 ABI 分别是什么,EVM(以太坊虚拟机)如何用栈式模型逐条执行操作码并计量 Gas,为什么执行失败要整体回滚,以及不可篡改性、可组合性、可升级代理各自带来的风险,最后用 The DAO、Parity 等真实事故建立风险直觉。
预计 25-35 分钟 →
合约安全:重入、预言机操纵等高频漏洞与防范
以攻击者视角系统拆解导致史上巨额损失的智能合约漏洞类别:建立「所有外部输入与外部调用都是恶意的」安全第一性原理;重入攻击的三种形态与 Checks-Effects-Interactions、重入锁;整数溢出/下溢与 0.8 内置检查;访问控制缺失与 tx.origin 钓鱼;外部调用失败导致的拒绝服务;闪电贷如何无成本放大价格预言机操纵风险,以及 Chainlink 喂价与 TWAP 的正确姿势;无限授权与签名重放;可预测随机数;最后用 The DAO、Parity 多签、Ronin 桥、Euler 等真实案例时间线建立直觉,并给出项目方的应急响应预案框架。
预计 50-60 分钟 →

相关问题

读者在这类操作前后最常搜索的问题

免责声明与合规提示内容更新日期:2026-10-29
  • 本站全部内容仅用于技术学习与科普,不构成任何投资建议、要约或招揽。 数字资产价格波动剧烈,请独立判断并自行承担决策结果。
  • 教程记录的是撰写时的产品界面与规则,相关产品更新频繁, 实际操作请以官方当前界面与公告为准。发现内容过时,欢迎在对应页面反馈。

想系统排查自己的安全习惯?从安全自查清单开始。