SharkTeam:Tornado.Cash提案攻击原理分析

SharkTeam 对此事件第一时间进行了技术分析,并总结了安全防范手段,希望后续项目可以引以为戒,共筑区块链行业的安全防线。

北京时间 2023 年 5 月 20 日,Tornado.Cash 遭受提案攻击,攻击者已获利约 68 万美元。SharkTeam 对此事件第一时间进行了技术分析,并总结了安全防范手段,希望后续项目可以引以为戒,共筑区块链行业的安全防线。

一、事件分析

攻击者地址:

0x092123663804f8801b9b086b03B98D706f77bD59

0x592340957eBC9e4Afb0E9Af221d06fDDDF789de9

攻击合约:

0xAF54612427d97489707332efe0b6290F129DbAcb

0x03ecf0d22f9ccd21144a7d492cf63b471916497a

0x7dc86183274b28e9f1a100a0152dac975361353d(部署合约)

0xc503893b3e3c0c6b909222b45f2a3a259a52752d(假提案合约)

被攻击合约:

0x5efda50f22d34F262c29268506C5Fa42cB56A1Ce

发起提案交易:

0x34605f1d6463a48b818157f7b26d040f8dd329273702a0618e9e74fe350e6e0d

攻击交易:

0x3274b6090685b842aca80b304a4dcee0f61ef8b6afee10b7c7533c32fb75486d

攻击流程:

(1)首先,攻击者(0x59234095)先向被攻击合约(0x5efda50f)发起了一个提案,并宣称此提案是 16 号提案的补充

SharkTeam:Tornado.Cash提案攻击原理分析
SharkTeam:Tornado.Cash提案攻击原理分析

(2)但提案中实际上存在一个额外的自毁函数。

SharkTeam:Tornado.Cash提案攻击原理分析

(3)很遗憾的是社区并没有发现此提案中存在问题,大多数成员都投票通过了这次提案。

SharkTeam:Tornado.Cash提案攻击原理分析

(4)攻击者创建了很多个合约来实行代币的转移

SharkTeam:Tornado.Cash提案攻击原理分析

(5)攻击者(0x59234095)销毁了提案合约(0xc503893b)和他的创建合约(0x7dc86183)。随后在相同的地址重新部署了攻击合约(0xc503893b)。

SharkTeam:Tornado.Cash提案攻击原理分析
SharkTeam:Tornado.Cash提案攻击原理分析

(6)修改完提案合约后,攻击者(0x59234095)执行提案并将自己所控制的合约地址的代币锁定量都修改为 10000。

SharkTeam:Tornado.Cash提案攻击原理分析

(7)提案执行完成后,攻击者(0x09212366)将代币转移到自己的地址,并获得被攻击合约的所有权。

漏洞分析:由于提案合约(0xc503893b)的创建合约(0x7dc86183)是通过 creat2 进行部署的,所以两个合约销毁之后,在同一地址上可以部署新的逻辑合约,并且提案执行是通过 delegatecall 的形式调用,攻击合约可任意修改被攻击合约中的值。

事件总结:本次事件发生原因是由于社区在检查提案时未能发现提案中存在的风险,并没有认真核实提案合约的代码是否存在安全漏洞。

二、安全建议

针对本次攻击事件,我们在开发过程中应遵循以下注意事项:

  • 在进行提案设计时充分考虑提案机制的安全性并尽量降低提案被中心化控制的风险,可以考虑通过降低攻击的价值,增加获得投票权的成本,以及增加执行攻击的成本等方式结合实际妥善设计。
  • 在进行提案的投票前,社区应慎重检查合约代码是否有后门。
  • 在提案通过前,可联系第三方安全审计公司对合约逻辑代码进行安全审计。

(声明:请读者严格遵守所在地法律法规,本文不代表任何投资建议)

(0)
Gao的头像Gao
上一篇 2023年5月22日 下午12:15
下一篇 2023年5月22日 下午12:41

相关推荐

  • 关于代币模型的思考:如何发挥代币效用?

    关键要素包括防范 Sybil 攻击、设计有效的激励机制(如质押奖励、回购销毁)、管理流通量和完全稀释估值(FDV),并确保 Token 的实用性和灵活性。数据驱动的决策可以优化 Token 分配,最大化市场价值和用户参与度。

    2024年7月15日
    286
  • CertiK:Palmswap攻击事件分析

    在 2023 年 7 月 24 日,Palmswap 遭受了一次闪电贷攻击,导致损失约 901,000 美元。攻击最初是在区块 30248637 上由外部拥有的地址(EOA)0x5cf40 尝试发起的,但由于攻击者耗尽了 gas 费用而失败。

    2023年7月26日
    606
  • 机构争相追捧的RWA,炒作还是机会?

    RWA,真实世界资产(RWA),是指可以代币化并在区块链上表示的实物资产。RWA 的例子包括房地产、贷款、合同和担保,以及将在交易中使用的任何高价值物品。RWA 可以更简单地理解为链上资产投资链外并赚取收益;或者将链下资产以某种形式放到链上,以获得链上经济利益。

    2023年8月19日
    1.2K

发表回复

登录后才能评论
微信

联系我们
邮箱:whylweb3@163.com
微信:gaoshuang613