攻击发生的主要原因是 migrateStake 函数没有检查输入的 oldStaking 参数。
撰文:CertiK
北京时间 2022 年 10 月 11 日 21:11:11,CertiK Skynet 天网检测到项目 Temple DAO 遭到黑客攻击,损失约 230 万美元。攻击发生的主要原因是 migrateStake 函数没有检查输入的 oldStaking 参数。
攻击步骤
① 攻击者(0x2df9…)调用 migrateStake() 函数,传入的 oldStaking 参数为 0x9bdb…,这导致被攻击的合约将里面的 LP 代币转移到了攻击者的合约中。
② 攻击者提取了 Stax Frax/Temple LP 代币,并将 FRAX 和 TEMPLE 代币 USDC 最终兑换为 WETH。
漏洞分析
导致 Temple DAO 漏洞的原因是 StaxLPStaking 合约中的 migrateStake 函数没有检查输入的 oldStaking 参数。
因此,攻击者可以伪造 oldStaking 合约,任意增加余额。
资金去向
以太坊上的 321,154.87 Stax Frax/Temple LP 代币后来被交易为 1,830.12 WETH( 约 230 万美元 )。
写在最后
自 6 月初该合约被部署以来,导致此次事件发生的漏洞已经存在了数月。这是一种智能合约逻辑错误,也应该在审计中被发现。
声明:该文观点仅代表作者本人,与炒币网无关。炒币网系信息发布平台,仅提供信息存储空间服务。对所包含内容的准确性、可靠性或者完整性不提供任何明示或暗示的保证,并不对文章观点负责。
提示:投资有风险,入市须谨慎。本资讯仅供参阅,不作为投资理财建议。