全球数字财富领导者

零时科技 || 攻击者获利约302万美元.Orion Protocol被攻击事件分析

2023-02-11 21:39:01
金色财经
金色财经
关注
0
0
获赞
粉丝
喜欢 7 0收藏举报
— 分享 —
摘要:BSC链与ETH链上Orion Protocol受到黑客攻击,攻击者获利约300万美元,被盗资金已转移至Tornado.Cash混币平台。

tXS20CKd0TGiprsIHpOsbK4Eox0L3GmHYZAAIA6T.jpeg

事件背景

零时科技区块链安全情报平台监控到消息,北京时间2023年2月3日,BSC链与ETH链上Orion Protocol受到黑客攻击,攻击者获利约300万美元,攻击者地址为0x837962b686fd5a407fb4e5f92e8be86a230484bd,被盗资金已转移至Tornado.Cash混币平台。零时科技安全团队及时对此安全事件进行分析。

漏洞及核心

Orion Protocol是一个交易聚合协议,用户可以进行代币交易,兑换以及跨链操作等。此处以BSC链攻击交易为例。

攻击者执行兑换操作,其中路径1代币由攻击者控制。

MvrQT2xMfb5tWnh0L0KZxV19oXZ2UVtCChgbfyrQ.png

EKrqTskCw1Ii0CVNql66UOXGuC9073QeglP1jOAK.png

在执行第一次兑换后,转入攻击者构造的恶意合约中进行代币转账,转账函数由攻击者恶意构造,在恶意构造的转账函数中攻击者将通过闪电贷获得的191,606 USDT 调用ExchangeWithAtomic合约中depositAsset函数存入合约中,此时修改了assetBalances变量的值,但是在最终转账时并没有执行assetBalances变量的修改。

HilWe6h8wqg4DnaaNZ1mZoJw4wDnCDJKONqMkC9x.png

fJwZui5t9jZhRllUTZZNKQZtO9Srbv4bnPDP34fY.png

计算最终兑换代币数值是由当前代币余额减去执行兑换之前合约对应代币余额

xRxUEET601PgOnWjr7GaDoRqP5B9kLzCkO4iecCV.png

由于在执行兑换过程中攻击者已经向合约转移大笔资金,因此攻击者兑换出的USDT资金变多

4BWiGMmRecoMN2YBsodpjVSuoBr6JwHjjI4xXh2e.png

兑换前余额

CD7qJwbQZLdfGsMiNtGxpmk1yVGcm1MxViNGl68J.png

执行兑换操作后余额

攻击者在此次兑换中使用1USDC共兑换出191,606 USDT

gpwK2kJuwBnSDTq1n0WtlwABB2DPV8AaWVL9QPn1.png

由于攻击者此前执行了depositAsset函数操作,但是兑换完成时并没有涉及到此函数中变量,攻击者仍可以通过调用withdraw函数取出之前通过depositAsset函数存入的资金。

o094baLTxJVlV2OOgrSAaOAbbO12iBbTo9hdfNCt.png

资金来源及去向

  • 资金来源

ETH链攻击地址资金来源为Bianace15交易所

kh0XyKV43OYgnDZsYslFienze4nfKMcb8ct7wbHU.png

BSC链攻击地址资金来源为Tornado.Cash混币平台

8OvYzTVOvsQJCeHpwTPvWMgOSOKjtL9hmfxvBujp.png

  • 资金流向

BSC链被盗资金通过跨链全部转移至ETH链攻击者地址

vVrOySKGiA32Kxwq4R8nO7xF0Eh6TdguU7qlVAh9.png

ETH链将被盗资金兑换为ETH共1100 ETH转移至 Tornado.Cash混币平台

EzTXWT2vzQEbkQwQW7lrvg6NndQOPxRpq5riL6pp.png

总结及建议

此次攻击是由于ExchangeWithAtomic合约中对于合约内不同函数间的重入未做限定,使得攻击者能够通过调用构造的恶意合约实现重入操作,且合约中代币兑换后转出资金计算方式只受合约代币余额影响,因此攻击者在执行兑换时通过调用其他函数转入资金影响合约余额后将转入的资金取出实现获利。

?安全建议

  • 建议对合约中涉及资金转移函数添加防重入机制保护,避免攻击者通过控制恶意合约进行攻击

  • 建议项目方上线前进行多次审计,避免出现审计步骤缺失

来源:金色财经

1. 欢迎转载,转载时请标明来源为FX168财经。商业性转载需事先获得授权,请发邮件至:media@fx168group.com。
2. 所有内容仅供参考,不代表FX168财经立场。我们提供的交易数据及资讯等不构成投资建议和依据,据此操作风险自负。
go