Acala事件报告 — 2022年8月14日

  • bettechen
  • 发布于 2022-09-23 10:20
  • 阅读 19

本文详细报告了2022年8月14日Acala网络发生的iBTC/aUSD流动性池配置错误事件,该事件导致了aUSD的错误铸造和相应代币的交换问题。社区采取紧急治理措施以阻止进一步错误铸造并修复了漏洞,确保网络安全。未来将推出一系列安全增强措施。

Acala 事件报告 — 2022年8月14日

iBTC/aUSD 流动性池(“iBTC/aUSD LP”)的误配置(该流动性池于2022年8月14日当天上线)导致了大量 aUSD 的错误铸造。iBTC/aUSD LP 代币的质押奖励按照社区公告中说明的内容,应该是 INTR 和 ACA,具体见帖子 这里

当16名 iBTC/aUSD LP 贡献者在领取 iBTC/aUSD LP 奖励时,收到了这些错误铸造的 aUSD。其中一些 LP 贡献者反复向池中添加更多流动性并领取更多 aUSD 错误铸造,导致更多 aUSD 被错误铸造。这些已识别的 LP 贡献者将收到的错误铸造转换为其他代币,包括 DOT、IBTC、INTR 等,并将 aUSD 错误铸造和错误铸造交换的代币转移至其他与 XCM 连接的链上,如 Polkadot、Moonbeam、Interlay、Astar 及中心化交易所(CEX)。

用错误铸造的 aUSD 与其他代币交换导致了 Acala Swap 上 aUSD 与其他配对代币的交换比例的混乱。许多其他用户以显著失调的交换比率获得了 aUSD 错误铸造。其中一些用户随着池的不平衡增长而反复交换更多 aUSD 错误铸造。此后,他们将大量 aUSD 错误铸造转移到其他与 XCM 连接的链和 CEX。

响应

为防止进一步的错误铸造、交换和错误铸造的流出,多个紧急治理投票被通过,以重置误配置并暂停奖励面板、DEX、honzon 协议、预言机面板、LDOT 即时赎回、非 ACA 代币转移、xcm 转出、EVM+ 等等。

在接下来的几天和几周中,发布了一些追踪报告,以揭示事件的全部程度:

  • 共计错误铸造 3.022B aUSD
  • 2.96B 被发现于16名已识别的 LP 贡献者的地址中(追踪 这里这里
  • 12.38M aUSD 错误铸造被发现于获取大量 aUSD 错误铸造的前35个账户,或与获取大量 aUSD 错误铸造的账户关联(追踪 这里
  • 剩余的 52.068M aUSD 错误铸造、错误铸造交换的代币以及涉及事件的每个地址都在完整的追踪报告中识别,详见 这里

社区可以利用链上数据验证信息,并制定提案以解决问题、重新抵押 aUSD,并制定在 Acala 网络上恢复服务的计划。

一个悬赏已经发布(并且仍在开放中)给那些归还了 aUSD 错误铸造和转移到其他平行链的错误铸造交换代币的人。更多细节请见 这里

根本原因通过内部同行评审和外部安全审计被识别和验证。修复已通过审计( 这里),并准备在下一个运行时升级中通过治理投票进行应用。

漏洞

事件的根本原因是 DEX 储蓄代码中的一个漏洞,该代码是奖励面板的一部分。奖励面板由两个功能组成,用于在区块初始化时定期累积奖励:

  • accumulate_incentives: 从奖励库中累积奖励(以各种代币的形式),奖励库是存放奖励代币的地方
  • accumulate_dex_saving: 从 honzon 稳定费用中累积 aUSD 奖励(然后分享给 aUSD 流动性池的贡献者)

DexSavingRewardRates 指定了 aUSD 奖励的速率/金额。Acala 上 aUSD 的错误铸造是由于 accumulate_dex_saving 函数的 DexSavingRewardRates 参数的误配置导致的,该参数应该阻止误配置生效。accumulate_dex_saving 函数是一个已弃用的功能,仅在 Acala 的金丝雀网络 Kusama 的 Karura 首次启动时使用。

事件发生后不久,为了防止进一步的错误铸造,DexSavingRewardRates 参数被重置为 0(如最初设定)并通过紧急治理投票暂停了奖励面板。进一步的调查揭示了上述代码漏洞,可以通过移除与 dex_saving 相关的功能(accumulate_dex_savingupdate_dex_saving_rewards)和配置(DexSavingRewardRates)来修复。将需要进行运行时升级以应用修复。

审计

在启动时,Acala 的代码库已由 Trail of BitsSlowMistSRLabs进行审计。SRLabs 还通过审计持续的更改(以 Pull-Requests 的形式)为 Acala 提供持续的安全保障。

安全路线图

路线图上有多个倡议,以进一步加强 Acala 网络的安全性:

  • 参数保护机制,以持续检查和防止误配置
  • 奖励面板保护机制,使用证明隔离单个面板中的风险
  • 持续监控系统,以主动检测事件

下一步

关于 Acala 网络当前状态和恢复操作的建议报告将很快发布。

关于 Acala

Acala 是一个去中心化金融网络,支持 aUSD 生态系统。核心产品 Acala USD 是一个去中心化的、多抵押的、加密支持的稳定币,作为 Polkadot 生态系统的本地稳定币。Acala 的以太坊兼容区块链内置了 DeFi 协议供应用开发者利用,包括无信任的质押衍生品(流动 DOT — LDOT)、去中心化交易所以及 EVM+,这是一个混合的 EVM 提供了完全与以太坊兼容的开发环境以及与 Substrate 的完全兼容性。Karura 是 Acala 的姐妹平行链,服务于 Kusama 生态系统,并与 Acala 共享相同的代码库。

Linktree | Discord | 网站 | Twitter | GitHub | Wiki | 新闻通讯 | YouTube

  • 原文链接: medium.com/acalanetwork/...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
bettechen
bettechen
江湖只有他的大名,没有他的介绍。