Aave CAPO 预言机事件:2.85% 的价格误差引发 2600 万美元的错误清算

发布日期:2026-03-21 10:04:40   浏览量 :4
发布日期:2026-03-21 10:04:40  
4

2026年3月10日,34名Aave用户醒来后发现自己的wstETH头寸已被清算——并非因为市场崩盘,也非因为他们过度加杠杆,而是因为Aave自身的预言机将他们的抵押品价格低估了2.85%。此次事件造成的总损失约为2600万美元的错误清算,10,938枚wstETH被没收,第三方清算机器人从中提取了499枚ETH。

这并非一次攻击。没有黑客参与。问题出在协议自身的预言机配置错误——而这可能比任何黑客攻击都更令人担忧。

什么是CAPO?它为何存在?

Aave的关联资产价格预言机(CAPO)是一种针对应以可预测比率相互交易的资产所设置的安全机制。对于wstETH(封装质押ETH)而言,其对ETH的兑换率会随着质押奖励的累积而缓慢且可预测地上升——每年大约增长3%至4%。

CAPO限制了该兑换率变动的最大速度,以防范预言机操纵攻击。其逻辑很简单:

maxExchangeRate = snapshotRatio × (1 + maxYearlyGrowthPercent)^(timeSinceSnapshot / SECONDS_PER_YEAR)

如果报告的兑换率超过maxExchangeRate,CAPO就会将其限制在该上限之内。这样可以防止攻击者通过闪电式操纵Lido预言机来虚增wstETH的价格,并以此虚假抵押品进行借贷。

想法很好,但实现却致命。

根本原因:快照不同步

漏洞存在于两个系统之间的缝隙中:

链下组件

一个算法会定期更新snapshotRatio——即CAPO公式中使用的基准兑换率。该算法本意是将其设为7天前的兑换率,从而提供一个稳定的历史锚点。

链上约束

智能合约强制施加了一个硬性限制:snapshotRatio3天最多只能上涨3%。这是为了防止参数发生剧烈变动而设置的安全上限。

冲突发生

当链下系统试图将快照比率一次性向前推进7天的增长量时,链上约束只允许部分更新。然而,snapshotTimestamp却被更新为反映完整的7天调整。

结果:CAPO公式使用了一个旧的比率和一个新的时间戳,计算出的maxExchangeRate比实际市场价格低了2.85%。

// 本应发生的情况:
snapshotRatio = 1.228    // 当前准确的兑换率
snapshotTimestamp = now - 7天

// 实际发生的情况:
snapshotRatio = 1.1939   // 仅部分更新(受链上限值约束)
snapshotTimestamp = now - 7天  // 但时间戳已跳至完整7天前

// CAPO计算:
maxRate = 1.1939 × (1.0325)^(7/365) = ~1.194
// 实际市场兑换率:1.228
// 预言机报告值:1.194(低估2.85%)

清算连锁反应

Aave V3的效率模式(E-Mode)允许用户在使用关联资产时获得更高的杠杆率。处于E-Mode中的wstETH/ETH头寸的贷款价值比(LTV)可高达90%以上——这意味着即使价格出现微小偏差,也会触发清算。

当wstETH的价格突然“低于”实际价值2.85%时:

  1. 34个账户跌破了清算阈值
  2. 清算机器人(MEV搜索者)立即以折扣价没收了抵押品
  3. 10,938枚wstETH(约合2600万美元)在几分钟内被清算
  4. 清算者赚取了约499枚ETH作为奖励和

免责声明:本文内容来自互联网,该文观点不代表本站观点。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请到页面底部单击反馈,一经查实,本站将立刻删除。

关于我们
热门推荐
合作伙伴
免责声明:本站部分资讯来源于网络,如有侵权请及时联系客服,我们将尽快处理
支持 反馈 订阅 数据
回到顶部