损失超2600万美元,Truebit Protocol安全事件分析及被盗资金流向追踪

Favoritecollect
Shareshare

作者:Beosin

1月9日凌晨,Truebit Protocol于5年前部署的未开源合约遭受攻击,损失8,535.36 ETH(价值约2640万美元)。Beosin安全团队对本次安全事件进行了漏洞与资金追踪分析,并将结果分享如下:

攻击手法分析

本次事件我们以最主要的一笔攻击交易作为分析,交易哈希为: 0xcd4755645595094a8ab984d0db7e3b4aabde72a5c87c4f176a030629c47fb014

1. 攻击者调用getPurchasePrice()获取价格

2. 随后调用存在缺陷的函数0xa0296215(),并将msg.value值设置得极小

由于合约未开源,通过反编译的代码推测该函数是存在算术逻辑漏洞,如整数截断出现问题,导致攻击者成功铸造了大量TRU代币。

3. 攻击者通过burn函数将铸造的代币“卖回”给合约,从合约储备中提取了大量 ETH

此过程再重复4次,每次msg.value值增加,直至将合约中的ETH几乎全部提取。

被盗资金追踪

根据链上交易数据,Beosin通过旗下区块链链上调查与追踪平台BeosinTrace进行了详尽的资金追踪,并将结果分享如下:

目前,被盗的8,535.36 ETH经过转移,绝大部分分别存放在了0xd12f6e0fa7fbf4e3a1c7996e3f0dd26ab9031a60和0x273589ca3713e7becf42069f9fb3f0c164ce850a。

其中地址0xd12f持有4,267.09 ETH,地址0x2735持有4,001 ETH。攻击者发起攻击的地址(0x6c8ec8f14be7c01672d31cfa5f2cefeab2562b50)还存有267.71 ETH,三个地址暂未有更进一步的资金转移。

被盗资金流向分析图 by Beosin Trace

以上地址均已被Beosin KYT标记为高风险地址,以攻击者地址为例:

Beosin KYT

结语

本次被盗资金涉及5年前未开源的智能合约,对于此类合约,项目方应对合约进行升级,引入紧急暂停、参数限制以及新版本的Solidity安全特性。此外,安全审计依然是合约必不可少的环节。通过安全审计,Web3企业可以尽可能全面地检测智能合约代码,发现并修复潜在漏洞,提高合约安全性。

*Beosin将提供本次所有资金流向与地址风险的完整分析报告,欢迎通过官方邮箱support@beosin.com领取。

Disclaimer: This article is copyrighted by the original author and does not represent MyToken’s views and positions. If you have any questions regarding content or copyright, please contact us.(www.mytokencap.com)contact
More exciting content is available on
X(https://x.com/MyTokencap)
or join the community to learn more:MyToken-English Telegram Group
https://t.me/mytokenGroup