Aurellion 漏洞被利用,约 455,003 USDC 遭盗

据 SlowMist 披露,Aurellion Labs 相关 Diamond 合约中未受保护的 initialize(address) 函数,使攻击者得以通过重入方式夺取所有权、注入恶意 Facet,并盗走约 455,003 USDC。

USDC

摘要

Aurellion 遭遇攻击,约 455,003 USDC 被盗。据 SlowMist 称,攻击者滥用了 SafeOwnable Facet 中未受保护的 initialize(address) 函数,通过重入初始化修改 Diamond 合约所有权,随后调用 diamondCut 添加带有 pullERC20 功能的恶意 Facet。合约层面的访问权限使攻击者得以转移 USDC,这表明在模块化智能合约系统中,薄弱的初始化保护可能导致所有权被攻破和资金被盗。

术语与概念
  • Diamond contract: 一种模块化智能合约架构,将逻辑拆分为多个 Facet,无需替换核心合约即可实现升级和功能变更。
  • Facet: Diamond 架构中的合约模块,提供特定功能,并可通过升级进行添加、替换或移除。
  • diamondCut: 一种 Diamond 标准函数,用于修改合约中的 Facet;若在所有权被劫持后遭到滥用,可注入恶意逻辑。