据消息,去中心化交易平台DODO的wCRES/USDTV2资金池被黑客攻击,转走价值近98万美元的wCRES和近114万美元的USDT。DODO表示,团队已下线相关资金池建池入口,该攻击仅影响DODOV2众筹池,除V2众筹池之外,其他资金池均安全;团队正在与安全公司合作调查,并努力挽回部分资金。更多后续消息请关注DODO官方社群公告。慢雾安全团队在第一时间跟进并分析,下面将细节分析给大家参考。攻击细节分析
彭博社:香港加密货币政策或得到北京的默许支持:2月21日消息,彭博社发文称,中央人民政府驻香港特别行政区联络办公室的官员代表是香港加密??货币聚会的常客,他们会检查事态发展并要求提供报告,在某些情况下还会通过电话跟进。彭博社称大陆政府可能会支持该地区对于零售加密交易形式合法化的磋商程序。
金色财经此前报道,香港证监会就有关监管虚拟资产交易平台的建议展开咨询,本次咨询将于3月31日结束,以配合在6月1日可以正式生效新的发牌制度。(彭博社)[2023/2/21 12:19:25]
通过查看本次攻击交易,我们可以发现整个攻击过程非常短。攻击者先将FDO和FUSDT转入wCRES/USDT资金池中,然后通过资金池合约的flashLoan函数借出wCRES和USDT代币,并对资金池合约进行初始化操作。
MetaMask已集成到俄罗斯最大银行Sber旗下区块链平台:12月1日消息,俄罗斯最大银行Sber(前身为Sberbank)宣布已经添加并集成了加密货币钱包MetaMask,旨在与以太坊区块链交互,该行公告称本次集成能让用户使用放置在Sber区块链平台上的代币和智能合约进行操作。Sber银行区块链实验室负责人Alexander Nam透露,该行区块链实验室正在与外部开发人员和合作伙伴公司密切合作,并将在其基础设施上运行DeFi应用程序。(Cointelegraph)[2022/12/1 21:16:09]
苏州金融监管局谢善鸿:数字人民币试点将迎来长三角一体化时代:金色财经报道,目前,苏州已集聚人民银行长三角数字货币研究院、长三角金融科技有限公司、长三角数字金融数据中心三大平台,被定位为全国数字人民币生态体系云服务输出中心。国内知名金融机构也在苏州设立了多家数字金融专营机构。
谢善鸿认为,数字人民币试点将迎来长三角一体化时代,数字经济时代下,传统金融行业加速数字技术应用和数字化转型,数字金融是金融行业发展大方向、大趋势。苏州要抢抓发展机遇,全力争取,系统谋划,打造自身金融发展特色。(上海证券报)[2022/11/29 21:09:42]
为何存入FDO和FUSDT代币却能成功借出wCRES和USDT,并且初始化资金池合约呢?是因为资金池的闪电贷功能有漏洞吗?接下来我们对flashLoan函数进行详细分析:
HashKey Capital获得新加坡监管机构的许可:金色财经报道,加密金融公司HashKey Capital今天宣布,它已获得新加坡金融管理局的资本市场服务许可证批准。HashKey Capital Singapore将在该国提供基金管理服务。HashKey Group于2018年成立其风险投资部门,并称迄今为止管理的资金超过 10 亿美元。HashKey Capital还于9月获得香港的许可,可以管理完全由数字资产组成的投资组合。(the block)[2022/11/4 12:16:48]
通过分析具体代码我们可以发现,在进行闪电贷时会先通过_transferBaseOut和_transferQuoteOut函数将资金转出,然后通过DVMFlashLoanCall函数进行具体外部逻辑调用,最后再对合约的资金进行检查。可以发现这是正常闪电贷功能,那么问题只能出在闪电贷时对外部逻辑的执行上。通过分析闪电贷的外部逻辑调用,可以发现攻击者调用了wCRES/USDT资金池合约的init函数,并传入了FDO地址和FUSDT地址对资金池合约进行了初始化操作。
到这里我们就可以发现资金池合约可以被重新初始化。为了一探究竟,接下来我们对初始化函数进行具体的分析:
通过具体的代码我们可以发现,资金池合约的初始化函数并没有任何鉴权以及防止重复调用初始化的逻辑,这将导致任何人都可以对资金池合约的初始化函数进行调用并重新初始化合约。至此,我们可以得出本次攻击的完整攻击流程。攻击流程
1、攻击者先创建FDO和FUSDT两个代币合约,然后向wCRES/USDT资金池存入FDO和FUSDT代币。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
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。