事件背景
零时科技区块链安全情报平台监控到消息,北京时间 2022 年 10 月 27 日,TrustSwap 项目遭受黑客攻击,影响金额至少约 779 万美元 (880.2554ETH 和 6429327.65DAI)。此外,本次攻击还盗取了 CAW 和 TSUKA 代币,价值约 550 万美元。攻击者地址为 0x161cebb807ac181d5303a4ccec2fc580cc5899fd,漏洞合约为 0x48D118C9185e4dBAFE7f3813F8F29EC8a6248359。零时科技安全团队及时对此安全事件进行分析。
漏洞核心
攻击者调用 LockToken 函数锁定令牌获得 id 用于后续攻击
攻击者通过调用 LockToken 合约中 migrate 函数迁移流动性,此时传入的 id 值为之前锁定令牌时获得的 id,因此攻击者可以通过对于 lockerc20 地址的验证
进行资金迁移之后将剩余资金返回 LockToken 合约
由于新建池子的价格由用户自己控制,攻击者通过设置 sqrtPricex96 造成价格差
在 V2 中交易对的余额
在 V3 中计算获得的应添加的数量
将剩余的资金退还给攻击者
在这一步攻击中攻击者获利约 601ETH
资金来源及流向
攻击者初始资金由 FixedFloat 转入
“
资金流向
攻击者将资金转移至地址 0xBa399a2580785A2dEd740F5e30EC89Fb3E617e6E 目前资金无进一步移动
总结及建议
本次攻击是由于攻击者能够通过执行锁定代币获得 ID 来绕过检测,将流动性转移至攻击者控制的 V3 交易对中,并且新的交易对创建的池子价格由攻击者控制,资金迁移后剩余资金转移给用户,因此攻击者能够设置池子价格在资金迁移后获得巨额剩余。
“
安全建议
建议对于转移流动性时添加对于新池子的初始价格的判断,避免在进行资金迁移时有巨额资金剩余。
建议项目方上线前进行多次审计,避免出现审计步骤缺失
零时
往期内容回顾
零时科技 | Nomad 跨链桥被盗 1.8 亿美元事件分析
零时科技 | Audius 金库 1850 万枚 AUDIO 被盗事件分析
零时科技联合创始人黄鱼先生受邀对话《Web3 应用创新与生态安全》
【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。