SDT:狸猫换太子 —— DODO 被黑分析

据消息,去中心化交易平台DODO的wCRES/USDTV2资金池被黑客攻击,转走价值近98万美元的wCRES和近114万美元的USDT。DODO表示,团队已下线相关资金池建池入口,该攻击仅影响DODOV2众筹池,除V2众筹池之外,其他资金池均安全;团队正在与安全公司合作调查,并努力挽回部分资金。更多后续消息请关注DODO官方社群公告。

慢雾安全团队在第一时间跟进并分析,下面将细节分析给大家参考。

攻击细节分析

通过查看本次攻击交易,我们可以发现整个攻击过程非常简单。攻击者先将FDO和FUSDT转入wCRES/USDT资金池中,然后通过资金池合约的flashLoan函数借出wCRES和USDT代币,并对资金池合约进行初始化操作。

为何存入FDO和FUSDT代币却能成功借出wCRES和USDT,并且初始化资金池合约呢?是因为资金池的闪电贷功能有漏洞吗?

Optimism自Bedrock升级以来每笔交易中L1数据费节省约56.6%:6月9日消息,Dune数据显示,Optimism自昨日6月7日凌晨Bedrock升级完成以来,总计为用户节省了约13.3万美元的费用,目前平均每笔交易费用为0.16美元,在每笔交易中L1数据费(Optimism的用户必须支付将交易提交给以太坊的费用)节省约56.6%。[2023/6/9 21:26:22]

接下来我们对flashLoan函数进行详细分析:

通过分析具体代码我们可以发现,在进行闪电贷时会先通过_transferBaseOut和_transferQuoteOut函数将资金转出,然后通过DVMFlashLoanCall函数进行具体外部逻辑调用,最后再对合约的资金进行检查。可以发现这是正常闪电贷功能,那么问题只能出在闪电贷时对外部逻辑的执行上。

通过分析闪电贷的外部逻辑调用,可以发现攻击者调用了wCRES/USDT资金池合约的init函数,并传入了FDO地址和FUSDT地址对资金池合约进行了初始化操作。

意大利银行副行长:对于支付,零售CBDC、稳定币等都是不错的选择:金色财经报道,意大利银行副行长Piero?Cipollone在2023年世界银行全球支付周的会议上表示,十年后支付生态系统会是什么样子?这很难说,但这肯定取决于我们。理想情况下,我们的目标是建立一个家庭和企业可以轻松地在支付解决方案之间切换的经济体,可以使用CBDC或其他形式的私人发行的数字货币进行数字支付.

对于国内支付,许多解决方案正在涌现,以降低成本并增强包容性。零售CBDC、稳定币、代币化存款、快速支付都是不错的选择。它们构成了一个尚未达到平衡的生态系统。很可能每个司法管辖区都会根据其具体需要对这种均衡进行不同配置。

我的猜测是所有这些解决方案将共存,每个解决方案都有特定的用例。在这种情况下,中央银行需要确保适当的监管到位,在安全的环境中促进竞争和创新,造福于家庭和企业。[2023/5/23 15:19:37]

到这里我们就可以发现资金池合约居然可以被重新初始化。为了一探究竟,接下来我们对初始化函数进行具体的分析:

加密货币交易公司Legend Trading推出支付网关Legend Pay:金色财经报道,加密货币交易公司Legend Trading推出法币-加密货币的支付网关Legend Pay。

Legend Pay用户可以使用多种法定货币购买加密货币,包括美元、英镑、欧元、瑞士法郎、澳元、加元、日元等。它支持各种主要的当地支付方式,如ACH、Swift、SEPA、FPS、Visa和Mastercard,并与当地银行合作伙伴和支付处理商合作,扩大其支付选项。[2023/4/13 14:01:32]

通过具体的代码我们可以发现,资金池合约的初始化函数并没有任何鉴权以及防止重复调用初始化的逻辑,这将导致任何人都可以对资金池合约的初始化函数进行调用并重新初始化合约。至此,我们可以得出本次攻击的完整攻击流程。

攻击流程

1、攻击者先创建FDO和FUSDT两个代币合约,然后向wCRES/USDT资金池存入FDO和FUSDT代币。

Bitcoin Archive:美国将推迟加密货币报税规则:金色财经报道,Bitcoin Archive发推特表示,因IRS无法定义“加密货币经纪人”,美国将推迟加密货币报税规则。[2022/12/25 22:06:01]

2、接下来攻击者调用wCRES/USDT资金池合约的flashLoan函数进行闪电贷,借出资金池中的wCRES与USDT代币。

3、由于wCRES/USDT资金池合约的init函数没有任何鉴权以及防止重复调用初始化的逻辑,攻击者通过闪电贷的外部逻辑执行功能调用了wCRES/USDT资金池合约的初始化函数,将资金池合约的代币对由wCRES/USDT替换为FDO/FUSDT。

4、由于资金池代币对被替换为FDO/FUSDT且攻击者在攻击开始时就将FDO和FUSDT代币存入了资金池合约,因最终通过了闪电贷资金归还的余额检查而获利。

总结

本次攻击发生的主要原因在于资金池合约初始化函数没有任何鉴权以及防止重复调用初始化的限制,导致攻击者利用闪电贷将真币借出,然后通过重新对合约初始化将资金池代币对替换为攻击者创建的假币,从而绕过闪电贷资金归还检查将真币收入囊中。

参考攻击交易:

https://cn.etherscan.com/tx/0x395675b56370a9f5fe8b32badfa80043f5291443bd6c8273900476880fb5221e

往期回顾

铸币疑云——PaidNetwork被盗细节分析

慢雾招募令:寻区块链安全弄潮儿

可避天灾,难免人祸——Furucombo被黑分析

王者开局偶遇猪队友——简析AlphaFinance&Cream被黑

BitMart入驻慢雾区,发布「安全漏洞与威胁情报赏金计划」

慢雾导航

慢雾科技官网

https://www.slowmist.com/

慢雾区官网

https://slowmist.io/

慢雾GitHub

https://github.com/slowmist

Telegram

https://t.me/slowmistteam

Twitter

https://twitter.com/@slowmist_team

Medium

https://medium.com/@slowmist

币乎

https://bihu.com/people/586104

知识星球

https://t.zsxq.com/Q3zNvvF

火星号

http://t.cn/AiRkv4Gz

链闻号

https://www.chainnews.com/u/958260692213.htm

免责声明:作为区块链信息平台,本站所发布文章仅代表作者个人观点,与链闻ChainNews立场无关。文章内的信息、意见等均仅供参考,并非作为或被视为实际投资建议。

本文来源于非小号媒体平台:

慢雾科技

现已在非小号资讯平台发布68篇作品,

非小号开放平台欢迎币圈作者入驻

入驻指南:

/apply_guide/

本文网址:

/news/9754467.html

免责声明:

1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险

2.本文版权归属原作所有,仅代表作者本人观点,不代表非小号的观点或立场

上一篇:

盘点零知识证明代表性项目:如何影响和塑造区块链生态系统?

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金星链

[0:0ms0-1:58ms