DeFi赢了,但代价是什么
文章围绕rsETH跨链漏洞引发的2.92亿美元级连锁危机展开,分析了攻击如何通过LayerZero桥与错误的DVN配置放大到Aave、Compound和Euler,并导致DeFi整体TVL下滑。
rsETH 黑客攻击本可能成为 DeFi 的致命一击。针对最大借贷协议 Aave 的这起 2.92 亿美元攻击,由一座配置错误的桥触发,导致出借人资金被困,且没有明确的恢复路径。相反,在一周之内,生态系统中几乎所有主要协议都承诺出资,让用户免于损失。本文将讨论为什么会发生这种情况,以及还有哪些问题尚未得到解答。
背景
4 月 18 日,朝鲜 Lazarus 黑客组织通过 RPC poisoning 和定向 DDoS 的组合手段,利用 LayerZero bridge 入侵了 KelpDAO 的 rsETH,并在 Ethereum 上兑换了 116,500 枚没有足额支撑的 rsETH tokens。KelpDAO 当时部署了 1-of-1 DVN 配置,这使得只要单个 verifier 被攻破,就足以伪造一条 cross-chain message。
攻击者并没有出售被盗资金,而是将其作为抵押品存入 Aave、Compound 和 Euler,并在多个协议中借入了约 2.92 亿美元的 ETH,其中大部分资金是在多个网络上的 Aave 中借入的。
→ 关于攻击机制、归因分析以及各方角色的完整技术拆解可在 OAK Research 查看。
自黑客攻击以来,DeFi 的总 TVL 下降了 17%,其中受打击最严重的是 Aave,资金外流超过 120 亿美元,约为 47%。
社区一片茫然,出借人资金被困
在黑客攻击的后果变得清晰之后,问题的解决并没有结束,外溢效应仍在持续。随着 DeFi 用户将资金从 Aave 撤出,而 emode 又允许 rsETH 作为 ETH 借贷的抵押品,出借人发现自己被困在 Aave 中,几乎没有可供提取的流动性。
这是 pooled lending system 的特性:lenders 存入资金,borrowers 通过提供抵押品借出这些资金。然而,在 borrowers 还清贷款之前,lenders 可能会发现自己没有可提取的流动性。
为了激励 borrowers 偿还贷款,或吸引新的存款人进入协议,Aave 使用其 lending pools 的利率。如果 pool utilization 很高,这些利率就会上升,使循环和 yield farming 策略变得无利可图,同时提高支付给 lenders 的收益。
对于那些愿意深入了解的人,这里有一个更技术性的解释。如果你想看更偏实际层面的解释,可以跳过这一部分。IRM(Interest Rate Model)通过一个称为“kink”的拐点(记为 $U$)分为两个不同区域。
- 在 kink 之前(0% → $U$):曲线是“平缓”的。这是最优运行区间,利率缓慢上升,以吸引存款人,同时不过度惩罚 borrowers。该部分的斜率称为 Slope 1。
- 在 kink 之后($U$ → 100%):曲线会明显变陡。这是“压力区”,向 borrowers 传递资本正在变得昂贵的信号,也向存款人传递他们可以通过提供流动性获得溢价的信号。这个斜率称为 Slope 2。
目前,稳定币池被困在 Slope 2 区域,其中 USDC 的 $U$ 设为 92%。超过这一阈值后,deposit APY 会飙升以激励流动性流入,而 borrowing rates 则会上升以抑制进一步负债。
这种情景在“正常”的市场环境下可能有效,因为 DeFi 用户和机构都在寻找额外收益,但在用户无法确定能否保住初始本金、或是否会陷入流动性不足的压力环境下则行不通。
针对流动性冻结,Circle 的首席经济学家 Gordon Liao 提出了一项方案,主张激进上调 Aave 的利率参数——将 Slope 2 提高到 50%,并将 kink 降到 85%——理论上这会把最大借款利率推高到 53.5%,把 deposit rates 推高到 48.2%,从而迫使 borrowers 还款,同时吸引外部新增流动性。
然而,社区并不买账。在 48% APY 下,收益确实很吸引人,但当信心已经崩塌时,没有理性参与者会把资本锁定在一个没有退出保证的回报里。更糟糕的是,这种突如其来的冲击可能会在第一个新存款人进场之前,就引爆超过 7,000 万美元的脆弱循环仓位。
该提案也让人不安地看到了 Circle 相较于 Tether 的姿态。后者曾在近期 Drift protocol 危机中通过提供一条直接的 1 亿美元 credit line 作出回应——这是一种截然不同的承诺,而社区并没有忘记。
DeFi United 救助工具
针对这次黑客攻击,Aave 和 KelpDAO 发起了 DeFi United 倡议,一个用于补足 rsETH 储备并让所有持有人免于损失的救助工具。通过与合作伙伴和受影响方的协调沟通,他们在本文发布时已经补上了大部分缺口。
随着新的捐赠不断加入,这一部分会持续更新,并在救助工具完全补足 rsETH 持有者损失且情况恢复正常后最终定稿。
已披露的捐赠
Protocol donations
- Lido(2,500 ETH)
Lido 是第一个宣布参与救助工具的 protocol,捐赠金额最高可达 2,500 stETH。
Lido 试图保护的关键风险敞口,是其持有与 rsETH 相关策略的 EarnETH vault。如果救助工具未能获得全额资金,EarnETH vault 的存款人可能面临高达 9,000 ETH 的损失。因此,Lido 出资是为了避免给自己的用户带来更大的麻烦。
这里有一个重要条件值得强调:Lido 的资金只有在全部缺口被覆盖时才会投入。2,500 stETH 明确以其他贡献者填补完整 120,000 ETH 缺口为前提。Lido 拒绝成为一个只提供部分支持、却仍让 EarnETH 用户暴露在风险中的 backstop,这意味着它的参与是要么全部,要么不参与。
在这 2,500 stETH 之外,如果救助工具未能补足,Lido 还将贡献其 vault 中价值最高达 300 万美元的自有 shares 用于销毁。
截至目前,该 governance proposal 很可能会通过,已有超过 1200 万票支持帮助 rsETH 救助工具。
- EtherFi(5,000 ETH)
EtherFi 提议使用其 treasury,通过向 rsETH 救助工具注入 5,000 ETH 来恢复 rsETH 的抵押资产,以弥补抵押缺口、保护用户资产,并防止 bad debt 在 DeFi 中扩散。
目前尚不清楚这一公告是否旨在从竞争对手那里夺取 market share,但这代表了非受影响 protocol 所作出的最大规模捐赠之一。
- Golem Foundation & Golem Project(1,000 ETH)
Golem Foundation 发布公告,分配 1000 ETH 给救助工具,以支持更广泛的 DeFi 生态系统。他们对 rsETH 没有敞口,据我们理解,他们似乎完全是出于善意作出贡献。
- Aave DAO Treasury(25,000 ETH)
Aave Treasury 承诺通过 Token Logic 提出的 governance vote,向 DeFi United 行动捐赠 25,000 ETH。我们预计该投票会通过,因此已在报告的已披露捐赠部分直接纳入这笔捐赠。
这是迄今为止我们看到的、来自 3 个相关方之一、对 rsETH 危机最清晰的完整账目。
个人捐赠
当各个 protocol 站出来弥补缺口时,一些个人捐赠者和无关联实体也以个人名义进行了捐助。
- Stani Kulechov,Aave founder 和 CEO @ Aave Labs(5,000 ETH)
- Ernesto Boado(CEO @ BGD labs)和 BGD Labs(350 ETH)
- Emilio Frangella,VP Engineering @ Aave Labs(500 ETH)
同时还创建了一个用于公开捐赠的地址(defiunited.eth),可在此追踪。
Mantle loan
Mantle foundation 决定出手帮助填补缺口。这一点非常有意思,因为 Mantle 并不是把钱直接转入救助基金,而是决定向这一倡议提供最高 30,000 ETH 的 loan。
具体如下:
- Loan amount:最高 30,000 ETH
- Interest rate:Lido rate + 1%(Ethereum staking rate 再加息)
- Maturity:最长 36 个月,且可提前还款,无罚金。
- Aave 的条件:Aave DAO 总收入的 5%,以及 1100 万美元的 AAVE tokens 抵押物。此外,Aave 还将委托 130,000 枚 AAVE tokens 给 Mantle,用于参与 protocol governance。
- Custody:multisig wallet,由 Mantle 持有该钱包的一个 key。
未披露的捐赠
以下是承诺捐赠但金额未披露的 protocols 和实体。随着我们了解更多关于其承诺的信息,这一部分会更新,并在最终贡献公布后移入 protocol donations。
- Ethena Labs
Ethena 参与这项活动是有道理的,因为 Aave 上的 USDe 和 sUSDe loopers 直接受到了可借 stablecoins 短缺的影响,目前正经历负收益。
- LayerZero
LayerZero 的基础设施是此次攻击的攻击向量,在 Ethena 公告之后不久,他们也宣布将为 DeFi United 倡议出资。从理论上讲,他们的贡献应当与目前最大的捐赠相当或更多,因为其基础设施参与了此次事件。截至本文发布时,他们尚未披露分配给救助工具的最终金额。
- Ink Foundation & Tydro
Tydro 是部署在 Ink 上的一个“友好” Aave fork。连同 Ink Foundation 一起,他们已公开表示支持这一倡议,但在本文发布时尚未提供进一步细节。由于他们将从 Aave 的成功以及其在激励计划和更深流动性中的进一步整合中受益匪浅,我们可能会在 Ink 一侧看到类似 Mantle 所提议的方案。
- Frax Finance
虽然 Frax 并未披露直接参与,但我们在此纳入其声明,以示承认其支持。我们认为 Frax 可能会为可借 stablecoins 提供更深的流动性,从而让用户更高效地退出其仓位。
- KelpDAO
值得一提的是,KelpDAO 目前还没有作出任何承诺。我们已联系他们,并收到了确认:他们将为这一倡议做出财务承诺。金额尚未披露。
Arbitrum Freeze
除了 DeFi United 救助工具之外,部分资金也在 Arbitrum 上成功追回。4 月 21 日,Arbitrum 宣布已冻结与 Kelp DAO 黑客攻击相关的 30,766 ETH,约合 7,100 万美元。这些资金已被转移到一个安全的中间钱包,若没有新的 governance decision,将无法再被移动。
他们没有回滚,也没有改写网络历史来追回资金。相反,这次干预是通过系统层面的一个特殊交易执行的,即 ArbitrumUnsignedTxType。
这种类型的交易即便持有私钥的普通用户也无法生成。它是 ArbOS(Arbitrum 的 operating system)专属的操作,并且只能由 sequencer 在 Security Council(12-of-N model)进行 multisig validation 的要求下执行,其使用仅限于特殊情况。在这里,Security Council 的 12 名成员中有 9 名成功执行了这笔交易,从而冻结了其链上的 ETH。
为什么它奏效,以及为什么它可能不会再次奏效
现在让我们面对事实。到目前为止,DeFi United 救助工具之所以奏效……说到底,是因为它由 Aave 牵头。这之所以成为可能,是因为 Aave 拥有巨大的网络效应,拥有一批同样对这场灾难有足够敞口、并有动机帮助填补缺口的合作伙伴。
这种情况与 2023 年 Aave 上发生的 Michel Egorov(Curve Finance 创始人)事件有着诡异的相似之处。
A Déjà-vu?
如果你熟悉 2023 年发生的情况,可以跳过接下来的 3 段。对于需要快速了解的人,下面是回顾:
2023 年 7 月 30 日,Curve 因 Vyper programming language 中的漏洞遭到攻击,导致约 7,000 万美元被盗。这引发了人们对 Egorov 抵押贷款的担忧:他以约 4.6 亿枚 CRV tokens 为抵押借入了超过 1 亿美元,这相当于总供应量的 47%。CRV 价格下跌可能导致其仓位被清算,并引发连锁清算。
他最大的风险敞口是一笔来自 Aave 的 6300 万美元贷款,以 CRV 总供应量的 34% 为抵押。问题在于其结构性:一旦发生清算,Aave 就必须把作为抵押品的 CRV 卖到公开市场,而由于流动性不足,这会产生连锁效应。
最终的解决方案来自非正式的 OTC deals:8 月,Egorov 卖出了 1.06 亿枚 CRV,换取 4600 万美元以降低潜在的清算风险,买家包括 crypto trading firm Wintermute、Tron founder Justin Sun 和 NFT investor Jeffrey Huang,Aave 也购买了价值 200 万美元的 CRV tokens。一个匿名实体促成了最大的一笔 OTC deal,买入了 1750 万枚 CRV tokens。
遗憾的是,Egorov 并没有在这次黑客事件中回报这份人情。他在 Twitter 上回应称,自己参与“并不容易,除非卖掉[他的]肾脏”,而且 Curve 没有资金来做这件事。
相似之处在于整个 DeFi 生态系统齐心协力解决危机。它甚至带有某种诗意。这种时刻确实让人感觉整个生态系统正在团结起来,解决一个不仅影响用户,也影响行业中最重要 protocol 的危机。这些时刻让 DeFi 显得像一个值得奋斗的行业。
一个值得审视的因素是,为什么这种回应如此有效。
Aave 是这次恢复的关键因素
到目前为止,救助工具取得的所有成功,在很大程度上都可以归因于 Aave,而 KelpDAO 和 LayerZero 在很大程度上都受益于 Aave 的影响力。
这种“影响力”指的是 Aave 与其他依赖其正常运作的 protocol 之间的 composability,以及诸如“DeFi United”“Just Use Aave”或“Aave Will Win”等口号所带来的沟通效果,资金到位后协调一致的传播方式,以及 Aave 对 crypto ecosystem 的重要性。
DeFi 之所以赢了,是因为受影响的是 Aave 这个 protocol。
如果 Kelp 不在 Aave 体系之内,而只存在于一些对生态系统没有这么重要的 protocol 中,那么回应可能就不会是现在这个样子。
这也解释了为什么 Aave 不必动用 Umbrella 的 module,因此也没有惩罚那些相信 Aave 判断的用户,即便他们知道如果 Aave 没能成功填补缺口,他们将成为 backstop。
这也解释了为什么用户并没有在其持仓上遭到 haircut。Aave 必须保住面子,才能保持可靠,并维持“no ghost left behind”的形象。Aave 必须成功,DeFi 才能生存。
这也正好解释了为什么在公开沟通中,Aave 的参与程度比 LayerZero 或 Kelp 更高。LayerZero 最终可能会沦为另一场 bridge hack。Kelp 可能会沦为一个没有正确配置 crosschain solution 的 restaking protocol。Aave 不能失败,也不能失去用户信任。
我们能说得最直白的一点是:Aave 用来为这类情况提供 backstop 的方案——Umbrella module——应该只是 protocol 维护用户信任的最后手段。
然而,这确实引出了关于我们这个行业以及我们究竟在做什么的几个严肃问题。
一些值得提出的问题
rsETH 黑客事件证明,DeFi 可以在针对其主导 lending protocol 的 2.92 亿美元攻击下存活下来。它同样证明的是,要实现这种存活,需要多少特定条件同时成立。Aave 必须拥有异常充足的资本。攻击者必须把资金留在愿意冻结它们的链上。相邻生态必须因为担心传染效应而愿意出资。
- DeFi 里的“De”到底代表什么?
rsETH 的恢复比 DeFi 历史上任何其他事件都更严厉地压力测试了这个问题。Arbitrum 的 Security Council 通过行政决定冻结了攻击者的资金。Aave 没有启用原本就是为这种情况设计的 Umbrella module。
动员 treasury assets 并批准救助框架的这个“community”,实际上只是少数大型利益相关方在按自身利益理性行动。也许这就是一个年轻金融系统在遭遇生存危机时得以存活的唯一现实方式。
但这应当让人放弃那种舒适的幻想,即 DeFi 的韧性来自 decentralization。它来自 financial depth、集中的协调能力,以及大玩家愿意行动的意愿。这个“De”从来都只是一个愿景;在实践中,执行方式完全不同。
如果 Aave 失败,DeFi 可能会失败。如果整个 DeFi ecosystem 都依赖于单一 protocol,它真的“decentralized”吗?
现实是,多年来,我们在 OAK Research 一直主张不要再谈“DeFi”,而应当改称“on-chain finance”,因为除了生态中的少数孤立部分之外,如今再没有什么是真正 decentralized 的了。如果说这次黑客攻击和恢复过程有什么积极收获,那就是它可能会帮助更多人正视这一现实。
- Umbrella 真的会按预期工作吗?
Umbrella 在 protocol 需要约 2.3 亿美元时持有 5400 万美元。这意味着即使 Umbrella 被启用,仍然会有大约 1.75 亿美元的缺口需要覆盖。
更深层的问题在于这个 module 的启用:我们所看到的是,一旦影响被明确宣布,资本就会大规模外逃。到目前为止,Safety Module(Umbrella 的前身)和 Umbrella 都从未被使用过。原因也很清楚:一旦这个 module 发生损失,没有任何用户会愿意冒险把资金锁进去,这实际上消除了 Aave 迄今为止拥有的安全缓冲。
与此同时,正如我们在这里看到的,Umbrella 是 Aave 的最后手段。如果用户只拿到一点小额溢价,却要承担全部资本损失,market confidence 就会被侵蚀。Aave 会在使用 Umbrella 资金之前,动用任何可能的解决方案(甚至耗尽自己的 treasury)。
Umbrella 会一直按预期工作,直到它第一次被大规模测试为止;这与生态中每一种保险系统在最不该发生的时候反而资本不足这一悖论是一样的。
- Arbitrum 的下一步是什么?
Security Council 的干预果断、有效,但也让人极度不安。它挽救了 7100 万美元。它同时也表明,Arbitrum One 的核心其实是一个由九个签名就能覆盖 chain state 的系统,而这与 decentralization narrative 所宣传的产品并不相同。即便 Arbitrum 还不是 Stage 2 rollup,它也已经创造了一个很难被推翻的先例。
这一举措是一种合法且可以说非常好的保护机制,但它让 Arbitrum 处于一个尴尬的位置,并可能为未来可能发生的事件设定法律先例。
从我们的角度看:Arbitrum 必须尽快加速走向 stage 2 rollup,以便消除这一先例,并在未来链上的事件中将自己与责任隔离开来。
- 如果下一次黑客攻击不发生在 Aave 上,会怎样?
rsETH 的应对之所以奏效,是因为受害者是 DeFi 最大的 protocol,拥有 1.81 亿美元的 treasury assets、1.4 亿美元的年度收入,以及足够大的引力,足以让所有相邻 protocol 的生存都取决于它自身。
把同样的攻击应用到一个中型 lending protocol、一个更小的生态、一条没有 Security Council 的链、一个 vault curator 上,结果就会完全不同。
没有人会去救它。没有生态基金会动员起来。没有执法协调能够及时冻结资金。
Aave 也许已经成为唯一一个“大而不能倒”的 protocol,拥有足够的资源和强大的网络效应,使其能够在这次黑客攻击中存活下来。今天没有任何其他 protocol 处于同样的位置。
结论
此结论为本文作者的个人观点,应当如此看待。
如果还不够明确,我强烈认为,如果同样的情况发生在 Aave 之外的其他地方,结果不会是一样的。
我想赞扬当前 Aave 的领导层协调了这些努力,并展现了他们对 protocol 的承诺。30.6K ETH 来自 Aave 或与 Aave 相关的个人和实体。
- Aave DAO:25,000 ETH
- Stani Kulechov:5,000 ETH
- BGD Labs 及其创始人 Ernesto:350 ETH
- Emilio:500 ETH
仅这些人就贡献了填补缺口所需总额的 40% 以上。他们协调各方努力,并联系了许多人,确保没有用户在存入 Aave 的资金上遭到 haircut(或者说,在其他地方也一样)。必须指出:领导这个 protocol 的这些人已经明确证明,Aave 之所以是生态领导者,是有原因的。
与此同时,这次黑客攻击中受影响的两个主要参与方 LayerZero 和 KelpDAO 的回应则相当令人失望。尽管整个生态一起行动,他们两者却不断互相指责,而在本文发布时,他们都没有宣布任何实质性的贡献。Aave 为自己的错误承担了责任。这一点并不能用来形容这些 protocol。虽然二者都在 crypto ecosystem 中赢得了相当的信任,但这次事件揭示了结果在多大程度上取决于 Aave,而不是他们自己。
这一事件表明,整个行业充满了单点故障,无论是在单个 protocol 内部,还是在整个 DeFi 作为一个整体的层面上,因为一个单一 protocol 已经变得大到不能倒。真的需要 composability 吗?在什么情况下,把 exotic assets 集成到 protocol 中才值得承担风险?
一如既往,DeFi 生态只有在某些东西出问题之后才会吸取教训。这一次,很多东西都坏了,而生态系统也将迎来许多变化,使其整体上更加可靠、更安全,也更专业。至少在下一次事情发生之前是这样。
- 原文链接: x.com/oak_res/status/204...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
