安全事件 · 验证逻辑缺陷

Wormhole安全事件(2022-02-02)

正文更新

Wormhole发生了什么?

2022 年 2 月 2 日,攻击者向 Wormhole 的 Solana 合约传入一个伪造的系统账户,绕过签名验证,无抵押铸出 120,000 wETH(约 3.26 亿美元),并把大部分跨回 Ethereum。Jump Crypto 次日补足 ETH,用户未受损失。

来源: WormholeCertiKKudelski SecurityL2Beat

基本事实

日期(UTC)
协议
Wormhole 代币桥 —— Solana 端
报告损失
在 Solana 上无抵押铸出 120,000 wETH(约 3.26 亿美元);其中 93,750 枚被跨回 Ethereum WormholeCertiKDefiLlama
根因
验证逻辑缺陷 — Solana 合约的 verify_signatures 接受了伪造的“指令 sysvar”账户,守护者签名实际上从未被真正校验 CertiKKudelski Security
涉及链
Solana, Ethereum
追回情况
用户获全额补偿
官方复盘
Wormhole Incident Report 02/02/22

时间线

带具体时刻的条目为 UTC+8(北京时间);只有日期的条目按 UTC 日历日。

  1. 2022-02-02 — 攻击者用伪造的 sysvar 账户调用 verify_signatures,再提交伪造的 VAA,在 Solana 上铸出 120,000 wETH。 CertiK
  2. 2022-02-02 — 93,750 wETH 在 Ethereum 上赎回为 ETH;Wormhole 关闭网络。 Kudelski Security
  3. 2022-02-03 — 部署补丁、补足 120,000 ETH,网络恢复。 Wormhole

资金去向与追回情况

当时 Wormhole 的支持方 Jump Crypto 补足了 120,000 ETH,使 Solana 上的 wETH 保持全额支撑;网络于 2 月 3 日恢复(Wormhole 事件报告)。所查来源中未见攻击者归还 ETH。

影响了哪些路线和桥?

受影响的是 Wormhole 代币桥 Ethereum ↔ Solana 的 wETH 路线;Wormhole 暂停网络直到修复。本站评测的 Mayan 如今基于 Wormhole 消息层;2022 年它尚无现在的形态,此处列出仅因为共用守护者层。

本站相关桥评测: Mayan

为什么会发生?

Wormhole 守护者对消息(VAA)签名,目标链合约必须验证这些签名。在 Solana 上,签名检查由原生程序完成,合约通过读取特殊的“指令 sysvar”账户来证明检查确实发生过。Wormhole 的 verify_signatures 使用了一个已弃用的辅助函数,它从传入的任意账户读取指令数据,却不确认该账户真的是 sysvar。攻击者传入一个伪装成“签名检查已成功”的账户,于是合约记录了从未发生的守护者批准,伪造的 VAA 铸出了 120,000 wETH(CertiK;Kudelski Security)。

守护者集合本身(19 个独立运营方)从未被攻破。这是关键区别:如果链上验证签名的代码可以被骗,再强的验证者集合也提供不了保护。

追回并非协议机制,而是一个资金雄厚的支持方选择承担损失。

这次攻击也说明非 EVM 代码需要专门审查。Solana 的账户模型要求程序读取的每个账户都以显式输入传入,因此程序必须自己校验每个账户的身份;习惯了隐式上下文的 EVM 开发者很容易忽略这一点。横跨不同虚拟机的桥,这类假设可能失效的地方也翻倍。

用户当时该怎么做?现在该怎么做?

当时

在 Jump 宣布补足之前,Solana 上 Wormhole wETH 的持有者面临脱锚风险。稳妥做法是:头几个小时不要折价卖出 wETH,在 Wormhole 确认修复和资产支撑前不要跨入新资金。

现在

Wormhole 消息现在需要 19 个守护者中的 13 个签名(L2Beat),并被 Mayan 等桥使用。当一座桥依赖外部消息层时,其风险卡应同时展示两层——本站的评测就是这样做的。确认桥的合约已验证,并公布了针对特定链代码(尤其是非 EVM 链)的审计。

来源

5 个独立发布方,链接按标注日期核对。

  1. Wormhole Incident Report 02/02/22 — Wormhole · 官方 · 核对于
  2. Wormhole Bridge Exploit Incident Analysis — CertiK · 安全机构 · 核对于
  3. Quick Analysis of the Wormhole Attack — Kudelski Security · 安全机构 · 核对于
  4. Mayan — interop protocol page (Wormhole guardian threshold) — L2Beat · 数据库 · 核对于
  5. DefiLlama Hacks — Wormhole, 2022-02-02 — DefiLlama · 数据库 · 核对于

如何引用本页?

Burn, A. / upswap.io(2026)。Wormhole安全事件(2022-02-02)。更新于 2026-10-24。https://upswap.io/zh/incidents/wormhole-2022#summary。CC BY 4.0。访问日期:____。

稳定锚点:#summary #facts #timeline #funds #affected #analysis #then #now #sources #cite