Beosin:Wormhole被盗案后续跟进分析
Wormhole黑客将30100金库的访问权限交给了由多签控制的可升级代理合约。
原文作者:Beosin
原文来源:Beosin
不知道大家是否还记得跨链协议 Wormhole 于 2022 年 2 月遭受黑客攻击这起安全事件,去年Beosin旗下Beosin EagleEye安全风险监控、预警与阻断平台监测显示,Wormhole项目方被黑客盗取12万枚ETH,损失金额约3.26亿美元。
据了解,当时Wormhole协议的开发由交易公司Jump Trading的加密分支Jump Crypto参与,事件发生后,Jump Crypto宣布投入12万枚ETH以弥补Wormhole被盗损失,支持Wormhole继续发展。
此后,Wormhole向黑客提出了1000万美元漏洞赏金和白帽协议方案,以换取资金返还,但黑客似乎并不领情。
而根据blockworks的报道,似乎三天前,这笔资金似乎已经追回,Beosin安全团队也将过程重新梳理与大家分享。
据了解,一直以来Wormhole黑客不断通过各种以太坊应用程序转移被盗资金,最近开设了两个Oasis金库,然而两个保险库都使用了Oasis提供的自动化服务。反制的关键在于Oasis自动化合约使用可升级的代理模式,这意味着合约所有者可以随时更改合约逻辑。
反制攻击发生于 2 月 21 日,当时sender地址(负责执行反制攻击,似乎归 Jump 所有)被添加为Oasis多重签名的签名者。Sender地址执行了五笔交易用于反制,随后从Oasis多重签名中删除。sender成为合格签名者的时间仅为 1 小时 53 分钟。
恢复过程的主要部分发生在第三笔交易中,sender升级了合约,使sender能够将质押物和借款从30100号金库中转移出控制权。Wormhole黑客的错误是将30100号金库的访问权限授予了一个由多方签名控制的可升级代理合同。下面是详细操作。
详细操作
一些地址别名
Oasis 多重签名 (0x85):拥有 Oasis 代理合约的 12 个多重签名中的 4 个。
Holder (0x5f):目前持有回收的资金。
Sender(0x04):负责执行反利用。
Jump1 (0xf8):用 DAI 为发送方提供资金以偿还债务并收回抵押品。通常标记为“Wormhole Deployer 1”,这个钱包被 Etherscan、Nansen 和 Arkham 标记为 Jump。
Jump2 (0xf5):从发送方收到剩余的 DAI。通常标记为“Jump Trading”,这个钱包被 Etherscan、Nansen 和 Arkham 标记为 Jump。
关于【Beosin:Wormhole被盗案后续跟进分析】的延伸阅读
DAI向双稳定币发展,MakerDAO的Endgame“这盘棋”有多大?
本文介绍了MakerDAO创始人Rune Christensen关于Dai未来发展的两篇文章,讲解了Dai如何在Endgame转型计划中实现双向“制导”,即去中心化和中心化两种稳定币新品牌。文章提出了两种解决稳定币三难困境的路径,分别是优先考虑效用和规模和走纯粹去中心化的路径,并披露了两种不同品牌的具体发展规划。未来,NewStable将继承大多数Dai的用例,专注于大众市场的采用和符合监管要求的现实世界资产支持,而PureDai则专注于实现完全去中心化的稳定币,通过与SubDAO生态系统合作,提供合法用例和套利机会。最终,预计所有Dai用户将迁移到NewStable或PureDai,确保去中心化核心价值在未来的稳定币解决方案中得到延续和强化。
MakerDAO终局计划“Endgame”迎新进展:将推出首个SubDAO和新代币,计划今年夏季推出第一阶段
MakerDAO正在加速推进终局计划“Endgame”,通过提高效率、弹性和可访问性,将DAI的供应量扩大到1000亿甚至更多。首个SubDAO Spark及其原生代币SPK即将推出,采用流行的DAO治理新模式,将每个subDAO设定特定的应用或职责。随着Endgame的推进,MakerDAO将推出多种新代币和功能,旨在实现DAI使用量的指数级增长。此外,Capital联创发布的研究指出,MakerDAO在DeFi领域占据近40%的利润,但市盈率受到抑制。随着Endgame的推进,MakerDAO的重组之战已经开始。
Sender首先初始化一些参数以启动攻击。然后,Sender 利用其在 Oasis Multisig 上的特权,通过 ServiceRegistry 将更改延迟更新为 0,从而允许它即时更新代理合约地址。Sender 部署了两个新的合约 Authorizer 和 Executor,这些合约用于欺骗协议。Sender 利用其绕过时间延迟的能力,更新 Oasis ServiceRegistry,使其能够调用 Authorizer 和 Executor 代替两个关键的 Oasis 合约。然后将AutomationExecutor 代理地址更新,使 Sender 完全控制30100金库。
接下来是反攻击的过程。Sender 必须关闭 30100金库并将其迁移到由Oasis Multisig 控制的新金库中。
首先Oasis Multisig 调用AutomationExecutor合约,从而完全控制30100金库。
然后调用Authorizer合约,这会使协议认为 30100金库可以合法地被 Sender 关闭。Authorizer 成功通过验证步骤。
再次调用Executor合约,创建一个新的30231金库,将抵押品和借入的 DAI 从 30100 金库迁移到 30231金库,并将 30231 的所有权转移给 Oasis Multisig。
最后将 120,695.43 的 wstETH 抵押品和 76.39M 的借入 DAI 从30100 金库移动到 30231金库。Authorizer 合约再次被调用,以验证30100金库已关闭,最后,Sender 将代理合约恢复到其原始地址,任务完成。
Figure 1sendertransfer
Beosin总结
Oasis 协议的漏洞利用的过程中。Wormhole黑客将30100金库的访问权限交给了由多签控制的可升级代理合约。在整个过程中,Authorizer合约和 Executor合约扮演了关键角色,但如果没有通过升级 AutomationExecutor 代理提供的完全控制,攻击将不可能实现。
一旦 Sender 完成了反制攻击,它就从 Oasis Multisig 中被移除。仅在 30 分钟后,Sender 就开始从 Jump1 收到 DAI。Jump1 总共发送了 80M DAI。Sender 用 78.3M DAI 来清算新创建的金库中的贷款,其余部分则发送给 Jump2。
在清除 DAI 债务之后,抵押品从 wstETH 和 rETH Vaults 中提取并发送给 Holder。自从到达 Holder 的时间(3 天 2 小时)以来,这些资产就没有移动过。
免责声明:本文仅代表作者个人观点,不代表链观CHAINLOOK立场,不承担法律责任。文章及观点也不构成投资意见。请用户理性看待市场风险,以及遵守所在国家和地区的相关法律法规。
图文来源:Beosin,如有侵权请联系删除。转载或引用请注明文章出处!