安全事件 · 链下软件缺陷

Across Protocol(Solana 中继者)安全事件(2026-07-17)

正文更新

Across Protocol(Solana 中继者)发生了什么?

2026 年 7 月 17 日,攻击者向 Across Protocol 伪造了 1,627 笔 Solana 存款事件。Risk Labs 的中继者没有校验 Solana Anchor 事件的 8 字节判别符,为其中 581 笔垫付,自有资金损失约 450 万美元(净额低于 400 万美元)。用户资金无损;Solana 路线暂停约 12 小时。攻击者后来以 10% 赏金为条件退还了剩余约 370 万美元。

来源: The Cryptonomistcrypto.newsOAK (onchainattack.org)The Crypto Times

基本事实

日期(UTC)
协议
Across Protocol —— Risk Labs 运营的、为 Solana 源链意图垫付的中继者
报告损失
中继者垫付约 450 万美元(约 50 万美元攻击者资金被困后净损失低于 400 万美元);攻击者后来以 10% 赏金为条件退还剩余约 370 万美元;用户资金未受影响 Across ProtocolThe Cryptonomistcrypto.newsOAK (onchainattack.org)DefiLlamaAcross ProtocolForesight News (via Bitget News)
根因
链下软件缺陷 — 链下中继者没有校验 Solana Anchor 事件的 8 字节判别符,伪造的存款事件被当成真实存款 OAK (onchainattack.org)The Cryptonomist
涉及链
Solana, 18 destination chains
追回情况
用户获全额补偿
官方复盘
Across Relayer Incident: Post-Mortem

时间线

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

  1. 2026-07-17 13:07 — Solana 上提交第一笔伪造存款。 The Cryptonomist
  2. 2026-07-17 14:14 — 伪造存款结束(1,627 笔,来自一次性钱包,指向 18 条目标链,面额约 4,170 万美元);两分钟后首批攻击地址被拉黑。 The Cryptonomist
  3. 2026-07-17 16:23 — Across API 停用 Solana 源链与目标链。 The Cryptonomist
  4. 2026-07-17 16:35 — 链上暂停 Solana SpokePool;一分钟后发布首份公开声明。 The Cryptonomist
  5. 2026-07-17 17:37 — 合并根因修复;18:26 部署到 Risk Labs 全部基础设施。 The Cryptonomist
  6. 2026-07-18 01:05 — 通过 CCTP 路由恢复 Solana 存款。 The Cryptonomist
  7. 2026-07-24 — Across 在 X 上发布复盘,媒体报道其中数据。 Across Protocol
  8. 2026-07-30 — Across 称攻击者在商定 10% 赏金后退还了剩余约 370 万美元。 Across Protocol

资金去向与追回情况

损失由 Risk Labs 运营的中继者承担,而不是用户:当天所有真实的在途转账都已完成或退款(The Cryptonomist)。约 50 万美元攻击者资金被困在协议内,因此净损失低于 400 万美元(crypto.news)。

2026 年 7 月 30 日,Across 称攻击者于 7 月 27 日主动联系团队,双方商定 10% 赏金后,攻击者退还了剩余资金(约 370 万美元);Risk Labs 中继者的资金扣除赏金后已追回(Across 官方 X;Foresight News,经 Bitget)。

影响了哪些路线和桥?

只有以 Solana 为源链的路线可被利用,且受损的只是 Risk Labs 中继者垫付的订单。Across 在 API 中停用 Solana 作为源链和目标链,暂停 Solana SpokePool,约 12 小时后改走 Circle CCTP 恢复 Solana 存款。EVM 链之间的路线未受影响。

本站相关桥评测: Across

为什么会发生?

Across 是意图型桥:中继者先在目标链把钱付给用户,之后再从源链锁定的存款里拿回。这种设计让中继者在链下判断“这笔存款是否真的发生”成为一个授权决定。Solana 没有统一的事件日志,读取方只能从交易数据里重建事件,而失败的交易同样可以吐出数据。Anchor 给每个事件加 8 字节判别符,正是为了区分真实事件和看起来相似的数据。中继者代码跳过了这一比较,于是没有转移任何代币的伪造交易被解析成了存款(OAK)。

有两点限制了损失:其一,损失落在写错代码的一方——中继者垫付的是自有资金,当天跨链的用户没有损失;其二,事先已有 CCTP 备用路径,暂停有问题的路径时不会把 Solana 用户困住。漏洞出在通常没人审计的链下观察者软件里;而约一小时内 1,627 笔存款分散到 18 条链,远超正常流量,按时间窗限制垫付额度本可以更早止损。

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

当时

当天上午从 Solana 跨出的用户不需要做任何操作:真实存款都被成交或退款。实际该做的是等官方解除暂停,不要在 Solana 被停用期间换别的前端反复重试,并保存存款交易哈希,以备需要申请退款。

现在

漏洞已修复,Solana 路线已恢复。对所有意图型桥都适用的检查:如果垫付方被骗,损失由谁承担(本例是中继者);桥是否有暂停开关和备用路由;事件发生后多快公布时间线。优先选择会发布带日期复盘的桥。upswap 照常采样 Across 报价,本事件不改变排名,排名只看净到账。

来源

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

  1. Across Solana Relayer Attack Drained $4.5M — No User Lost a Cent — The Cryptonomist · 媒体 · 核对于
  2. Across Protocol relayer loses under $4M in Solana attack — crypto.news · 媒体 · 核对于
  3. Across Protocol — missing 8-byte Anchor discriminator check (2026-07-17) — OAK (onchainattack.org) · 安全机构 · 核对于
  4. Across Protocol Reports First Attack on Solana After $34B in Bridge Volume — The Crypto Times · 媒体 · 核对于
  5. DefiLlama Hacks — Across, 2026-07-17 (Spoofed Event Log, $4.5M) — DefiLlama · 数据库 · 核对于
  6. Across Relayer Incident: Post-Mortem — Across Protocol · 官方 · 核对于
  7. Update on the July 17 Relayer Incident: the funds are back — Across Protocol · 官方 · 核对于
  8. Across: The attacker has returned approximately $3.7 million, and the team has paid a 10% bounty — Foresight News (via Bitget News) · 媒体 · 核对于

如何引用本页?

Burn, A. / upswap.io(2026)。Across Protocol(Solana 中继者)安全事件(2026-07-17)。更新于 2026-10-24。https://upswap.io/zh/incidents/across-2026#summary。CC BY 4.0。访问日期:____。

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