木星链 木星链
Ctrl+D收藏木星链

TOK:千万美元被盗: DeFi 平台MonoX Finance被黑分析

作者:

时间:1900/1/1 0:00:00

2021年11?30?,据慢雾区消息,DeFi平台MonoXFinance遭遇攻击,本次攻击中约合1820万美元的?WETH和1050万美元的MATIC被盗,其他被盗Token包括WBTC、LINK、GHST、DUCK、MIM和IMX,损失共计约3100万美元。慢雾安全团队第?时间介?分析,并将简要分析结果分享如下。

攻击核心

本次攻击的核?在于利?swap合约中没有对池中传?和传出代币是否相同作检查,以此利?价格更新机制的缺陷,使得攻击者传?和传出代币相同时,价格被二次计算并覆盖,导致代币价格不断被推?,并以此代币换出池中的其他代币来获利。

相关信息

MonoX是?种新的DeFi协议,使?单?代币设计?于流动性池。这是通过将存?的代币与vCASH稳定币组合成?个虚拟交易对来实现的。其中的单?代币流动性池的第?个应?是?动做市商系统-Monoswap,它在2021年10?时推出。

攻击者地址1:

0xecbe385f78041895c311070f344b55bfaa953258

攻击者地址?2:

0x8f6a86f3ab015f4d03ddb13abb02710e6d7ab31b

攻击合约?1:

0xf079d7911c13369e7fd85607970036d2883afcfd

保险项目Ins3目前承保锁仓量(TVL)突破千万美元:据官方消息, 截止到2月20日,Ins3原创保险,承保锁仓量(TVL)突破千万美元。Ins3保险作为Heco和Conflux保险赛道的首发原创项目,未来将开发更多特色保险产品,完善保险生态体系。已上线“BAG下水险”,“LendHub本金保证险”“MDEX挖矿合约保证险”等特色保险产品。

Ins3保险可以全面覆盖区块链协议和去中心化组织 (DAO),为各种加密数字资产场景提供全方位的保障服务。[2021/2/20 17:34:31]

攻击合约2:

0x119914de3ae03256fd58b66cd6b8c6a12c70cfb2

攻击交易1:

https://etherscan.io/tx/0x9f14d093a2349de08f02fc0fb018dadb449351d0cdb7d0738ff69cc6fef5f299

攻击交易2:

https://polygonscan.com/tx/0x5a03b9c03eedcb9ec6e70c6841eaa4976a732d050a6218969e39483bb3004d5d

攻击细节

首先攻击者调用Monoswap.swapExactTokenForToken:

HUSD 2月审计报告:托管账户储备逾8千万美元 累计发行7.32亿美元:近期,美国会计师事务所Withum发布合规稳定币HUSD 2月的审计报告,报告显示,截至美东时间2020年2月28日,HUSD发行量为 80,888,699.55 HUSD,HUSD合规托管账户的储备金额为80,888,699.55美元,HUSD Token实际发行量与美元储备相符,严格与美元1:1锚定。截至今日,HUSD累计发行量已超过7.32亿美元,增长512.68%。作为合规稳定币,在确保合法合规、可靠安全以及高流动性的同时,HUSD将不断拓展数字资产交易、支付及其他金融领域的广泛应用。[2020/3/16]

0.1个WETH换出79.986094311542621010个MONO。

接着攻击者利用漏洞移除池子中其他用户的流动性,并为添加攻击合约的流动性以此来获取最大的利益。

这里移除流动性处的漏洞在Monoswap.sol中的471-510行,移除池中流动性时通过removeLiquidity函数调用_removeLiquidityHelper函数,而这两个函数都未做调用者和传入的to参数的身份验证,所以可直接移除任意用户在池中的流动性。

动态 | ETH创世账号关联地址出现超六千万美元大额转账:据 PeckShield 态势感知平台11月22日数据显示:昨晚21:11-23:31 ,ETH出现总计7笔价值超62,727,568.79USDT的大额转账。0x0a0fed开头的地址向0x6fe1b3、0xc01913开头的两个地址,依次转入共计454,547.6枚ETH,其中最大一笔158,494.07枚ETH的交易块高度为:6746339,交易哈希值为:0x69a03db2940b4e6610658856db056fddfbc20a1204c82ab80bcdbeb1e73e0f23。

据悉,0x0a0fed0开头地址为今年新注册的中转地址,和0x9d2bfc、0x2b241f、0x7d04d2等开头的多个创世地址有超大额资金来往。[2018/11/22]

移除0x7b9aa6的流动性,把1670.7572297649224个MONO和6.862171986812230290个vCASH转出给0x7b9aa6;

移除cowrie.eth的流动性,把152.9745213857155个MONO和0.628300423692773565个vCASH转出给cowrie.eth;

移除0xab5167的流动性,把99940.7413658327个MONO和410.478879590637971405个vCASH转出给0xab5167;

真格基金领投区块链视频项目LINO,金额为上千万美金:据悉,真格基金领投了硅谷区块链视频项目LINO,FBG资本、DFund等机构融资跟进,融资金额为千万美元。据了解,LINO旨在利用区块链技术,将视频行业去中心化,使视频原创作者直接获益,创新性引入通货膨胀系统,人类参与证明及内容价值证明算法,防止机器人以及不良内容欺诈现象发生。支持每秒几万笔转账,并可解决区块链底层拥堵情况。[2018/1/16]

为攻击合约1在MONO代币流动池创建流动性。

紧接着攻击者调??55?次Monoswap.swapExactTokenForToken以此来不断堆?MONO的价格。

这里攻击的核心是在Monoswap.sol中的swapExactTokenForToken函数,攻击者传入MONO代币使得tokenIn和tokenOut是相同的代币。

OKEx集团已获巨人集团、千合资本数千万美元投资:全球领先的数字资产服务商OKEx已于2017年年初完成新一轮融资,融资金额为数千万美元。投资方包括史玉柱先生创立的巨人网络集团、王亚伟先生创立的千合资本、艺龙旅行网创始人唐越先生、美图公司董事长蔡文胜先生创立的隆岭资本,早期投资方策源创投等进行了跟投。

OKEx是一家国际化的专注于区块链技术和数字资产的研发、应用的公司,总部位于伯立兹,公司旗下有专注于纯数字资产交易服务的产品okex.com,提供世界各种法币交易、币币交易、合约交易等产品和服务。OKEx还有专注于美元、日元、韩元、欧元等交易数字资产的服务型产品okcoin.com。[2017/12/18]

跟到swapIn函数中:

可以发现在swapIn函数中,调用了函数getAmountOut来计算价格。接着跟到getAmountOut函数中发现是利用了_getNewPrice函数来计算tokenInPrice和tokenOutPrice。

跟到_getNewprice函数中,发现当计算tokenInPrice时候传入的txType参数为TxType.SELL,此时:

当计算tokenOutPrice时候传入的txType参数为TxType.BUY,此时:

如果传入和传出为同一种代币时,价格计算式中的四个变量都相同,所以很容易得出tokenOutPrice会比tokenInPrice要大。

由于tokenIn和tokenOut是同一个token,swapIn函数在计算完价格后会再次调用_updateTokenInfo函数,使得tokenOutPrice的更新会覆盖tokenInPrice的更新,所以导致这个token的价格上涨。

最后攻击者调用swapTokenForExactToken函数用MONO来换出池子中的其他代币。

swapTokenForExactToken函数中调用了swapOut函数,而swapOut函数中计算价格是调用的getAmountIn函数。

在该函数中由于tokenInPoolPrice是取的MONO代币在池中的价格,而此价格在之前已被推高,导致tokenInPrice变大,计算最后的amountIn变小,用更少的MONO换出了原来相同数量的WETH、WBTC、MONO、USDC、USDT、DUCK、MIM、IMX等池子中的代币。

攻击者最终把攻击获利转入地址

0x8f6a86f3ab015f4d03ddb13abb02710e6d7ab31b。

以上为以太坊主链上的攻击分析,此外,攻击者除了在以太坊主链上进行攻击外,还在Polygon上进行了同样的攻击,攻击手法与以太坊主链上相同,此处不做过多重复的分析。

据慢雾AML统计,MonoXFinance最终损失约3400万美元,包括约2.1K个WETH、1.9M个WMATIC、36.1个WBTC、143.4K个MONO、8.2M个USDC、9.1M个USDT、1.2K个LINK、3.1K个GHST、5.1M个DUCK、4.1K个MIM以及274.9个IMX。

总结

本次攻击是利用了swap合约里没有对池中传入和传出代币作检查,从而利用价格更新机制的问题,由于在swap合约中会对池中传入和传出的代币的价格调用同一个函数_upTokenInfo来进行更新,而当传入和传出的代币为同一种代币时,第二次调用_upTokenInfo函数时,通过价格计算后的更高的tokenOutPrice会覆盖掉价格更低的tokenInPrice,以此来不断推高池中该代币的价格,最后可以换出池中其他的所有代币来获利离场。

By:九九@慢雾安全团队

标签:TOKKENTOKENTOKEGanesha TokenRetire TokenVBT Token3X Long Cosmos Token

欧易交易所app下载热门资讯
DAO:如何分散化管理DAO金库资产

引言据OpenOrgs.info报道,全球最大DAO金库目前储有数十亿美元的资产。由于这些财产都主要集中于协议的原生治理Token中,所以也对管理提出了不小的要求,就比如:在最大限度降低市场影响.

1900/1/1 0:00:00
CRYPTO:美国监管机构发布2022年Crypto的“待办事项清单”

美国监管机构发布了一份指导2022年Crypto市场参与者行为的指南。该指南将重点是希望向客户提供Crypto产品的银行,监管机构此前曾在10月份向国会提出有关监管稳定币的建议.

1900/1/1 0:00:00
区块链:一文了解还有什么可以通证化?

数字计算机能够处理的一切对象,都必须先通过编码进行数字化。“数字化”不是很准确的中文翻译,一个外行如果将它翻译回英文的时候,可能会变成“numberization”.

1900/1/1 0:00:00
元宇宙:腾讯 买下一个“元宇宙”?

10月28日,马克·扎克伯格宣布脸书更名为“Meta”,并称要把旗下产品逐步整合打造一个「超越现实的元宇宙平台」,从而使“元宇宙”一跃成为人尽皆知的热词.

1900/1/1 0:00:00
区块链:麻省理工在 Web 3 中的布局

Web3.0是“即将到来”,还是“已经到来”,这要看你和谁在对话!在我看来,麻省理工学院毫无疑问是这些创新中心之一.

1900/1/1 0:00:00
NFT:GameFi专用公链冒头(下)

近期,区块链上的宠物养成类游戏AxieInfinity宣布,侧链Ronin的底层通证RON开始流动性挖矿.

1900/1/1 0:00:00