SharkTeam:Midas Capital攻击事件原理分析

2023-06-19 16:06:37

北京时间2023年6月18日,Midas Capital遭受攻击,攻击者已获利约60万美元。

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

一、事件分析

攻击者地址:

0x4b92cc3452ef1e37528470495b86d3f976470734

攻击合约:

0xc40119c7269a5fa813d878bf83d14e3462fc8fde

被攻击合约:

0xF8527Dc5611B589CbB365aCACaac0d1DC70b25cB

攻击交易:

0x1ebc03f0f2257c275f4990b4130e6c3e451125aa98ee8bbde8aba5dc0320c659

攻击流程:

(1)攻击者(0x4b92cc34)调用攻击合约(0xc40119c7)的0x117741f7函数,然后首先调用被攻击合约(0xF8527Dc5)的mint函数将518614966827953435094个sAMM-HAY/BUSD代币转换为2个fsAMM-HAY-BUSD代币,也就是质押币。

(2)随后调用被攻击合约(0xF8527Dc5)的redeemUnderlying函数提取518614966827953435091个sAMM代币。并未选择全部提取,而是剩了3个。但注意此时只从攻击合约转移走了1个fsAMM代币。

(3)然后又调用了被攻击合约(0xF8527Dc5)的redeemUnderlying函数,又提取518096869957995439653个sAMM代币,由于攻击合约(0xc40119c7)账户中还存有1个fsAMM代币,所以能够成功提取。

(4)循环上面的操作,并且随着套利的过程,mint的数量翻倍,调用redeemUnderlying函数的次数也随之翻倍。

(5)在多次攻击交易后,最后将获得的sAMM代币换成BUSD,HAY,ANKR,WBNB,ankrBNB等获利离场。

二、漏洞分析

由于被攻击合约(0xF8527Dc5)目前的逻辑合约并不开源,我们只能从trace和之前的逻辑合约中找线索。我们发现代码中fork了compound的代码,并与hundred Finance相同,引入了第三方运算库。

而在divUInt函数中,使用了a/b,计算上没有问题,但由于solidity不支持浮点数的运算,所以会向下取整。而攻击者(0x4b92cc34)每次调用redeemUnderlying函数都对输入的数量都进行严格控制,就会导致计算结果出现1.99999999999...这种情况,但默认向下取整,所以计算结果是1。

在第三步中,攻击合约(0xc40119c7)少取了一点sAMM代币,那么计算出的结果就变成了1。所以攻击者(0x4b92cc34)每次质押后提取到的本金都会翻倍。

三、安全建议

本次事件发生原因是由于被攻击合约(0xF8527Dc5)中引入了计算库,而在redeemUnderlying函数中计算攻击者(0x4b92cc34)需要转入的fsAMM代币数量都会出现向下取整的情况,导致攻击者(0x4b92cc34)本身需要付出的代价减半,重复套利。

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

(1)solidity不支持浮点数运算,在开发整数运算时推荐先乘后除,或使用合适的精度。

(2)项目上线前,需要向第三方专业的审计团队寻求技术帮助。

About Us

SharkTeam的愿景是全面保护Web3世界的安全。团队由来自世界各地的经验丰富的安全专业人士和高级研究人员组成,精通区块链和智能合约的底层理论,提供包括智能合约审计、链上分析、应急响应等服务。已与区块链生态系统各个领域的关键参与者,如Polkadot、Moonbeam、polygon、OKC、Huobi Global、imToken、ChainIDE等建立长期合作关系。

官网:https://www.sharkteam.org

Twitter:https://twitter.com/sharkteamorg

Discord:https://discord.gg/jGH9xXCjDZ

Telegram:https://t.me/sharkteamorg

郑重声明:本文版权归原作者所有,转载文章仅为传播信息之目的,不构成任何投资建议,如有侵权行为,请第一时间联络我们修改或删除,多谢。

推荐文章

Layer2 格局剧变:Base 生态有哪些关键亮点?

在激烈竞争的 L2 赛道中,原本稳坐钓鱼台的 Arbitrum 和 Optimism 似乎面临着前...

加密泡泡啊
424 1年前

XRP 涨至 7.5 美元?分析师告诉 XRP 大军为纯粹的烟火做好准备!

加密货币分析师 EGRAG 表示,XRP 即将迎来关键时刻,价格可能大幅上涨,这取决于能否突破关键...

加密泡泡啊
430 1年前

以太坊ETF通过后 将推动山寨币和整个加密生态大爆发

比特币ETF通过后市场动荡,以太坊ETF交易前景分析 比特币ETF通过后,市场出现了先跌后涨的走势...

加密泡泡啊
440 1年前

ZRO为啥这么能涨?

ZRO概述 ZRO代币,全称为LayerZero,是LayerZero协议的本地代币,旨在作为治理...

加密泡泡啊
386 1年前

今晚ETH迎来暴涨时代 op、arb、metis等以太坊二层项目能否跑出百倍币?

北京时间7月23日晚上美股开盘后 ETH 的ETF开始交易。ETH的里程碑啊,新的时代开启。突破前...

BNBCCC
396 1年前

Mt Gox 转移 28 亿美元比特币 加密货币下跌 ETH ETF 提前发行

2014 年倒闭的臭名昭著的比特币交易所 Mt Gox 已向债权人转移了大量比特币 (BTC),作...

加密圈探长
400 1年前