原标题|千万美元被盗——DeFi平台MonoXFinance被黑分析
作者|九九@慢雾安全团队
2021年11?30?,据慢雾区消息,DeFi平台MonoXFinance遭遇攻击,本次攻击中约合1820万美元的?WETH和1050万美元的MATIC被盗,其他被盗Token包括WBTC、LINK、GHST、DUCK、MIM和IMX,损失共计约3100万美元。慢雾安全团队第?时间介?分析,并将简要分析结果分享如下。
攻击核心
本次攻击的核?在于利?swap合约中没有对池中传?和传出代币是否相同作检查,以此利?价格更新机制的缺陷,使得攻击者传?和传出代币相同时,价格被二次计算并覆盖,导致代币价格不断被推?,并以此代币换出池中的其他代币来获利。
相关信息
MonoX是?种新的DeFi协议,使?单?代币设计?于流动性池。这是通过将存?的代币与vCASH稳定币组合成?个虚拟交易对来实现的。其中的单?代币流动性池的第?个应?是?动做市商系统-Monoswap,它在2021年10?时推出。
BitValue Capital成立Web3香港创业加速器“223 Booster”:金色财经报道,全球投资机构BitValue Capital发起联合倡议并宣布设立Web3香港创业加速器“223 Booster”,旨在推动香港Web3相关技术的发展,为优质Web3项目提供全面支持。据悉,“223 Booster”将帮助创业团队在技术、生态发展和资本支持方面得到支持,同时还将邀请国际知名风险投资家、技术专家和Web3用户社区参与其建设和项目孵化,首批执行委员会成员将包括BitValue Capital、IOST、Spark Digital Capital、BSCS、852Web3等机构。BitValue Capital曾在去年八月推出1亿美元Web3增长基金,以鼓励创新区块链项目,该基金将专注于游戏工作室、元宇宙、GameFi、NFT、SocialFi、DAO和DeFi等领域的投资机会。(einnews)[2023/6/20 21:49:18]
攻击者地址1:
Meta正与AR创企Magic Leap洽谈多年期协议,以打造其元宇宙愿景:5月21日消息,Facebook母公司Meta正在与增强现实(AR)初创公司Magic Leap洽谈一项多年期协议,Meta将继续投入数十亿美元打造其元宇宙。
据知情人士透露,Meta正在探索Magic Leap在北美提供知识产权许可和合同制造的方式,以帮助其打造主流的AR产品。
Magic Leap生产定制组件,包括高科技镜片和相关软件,这些都是构建元宇宙可能需要的关键技术。然而,了解谈判情况的人士表示,预计双方的合作不会产生特定的联合Meta-Magic Leap头戴。两名前员工表示,Magic Leap“最大的资产”是其先进的“waveguides”技术,这种技术可以让用户眼前的薄玻璃在不同深度呈现出逼真的图像。[2023/5/21 15:16:53]
0xecbe385f78041895c311070f344b55bfaa953258
Animoca Brands联合创始人:《我的世界》NFT禁令非常“虚伪”:金色财经报道,Animoca Brands联合创始人Yat Siu在其社交媒体账户上发文表示,《我的世界》NFT禁令 将一小部分用户群排除在外非常“虚伪”,因为NFT更具包容性,不应该将基于NFT的游戏排除,而且NFT没有伤害到《我的世界》任何玩家。Yat Siu指出,Mojang Studios的做法纯粹基于一种意见,由他们的偏好所决定,没有引用证据,甚至没有正确指出 NFT 是什么,也没有与 NFT Worlds 沟通,NFT 所做的是给予社区更多的自由和权力,重新分配玩家经济,为游戏增加价值,在分散和重新分配游戏内部权力方面也是如此。[2022/7/23 2:32:55]
攻击者地址?2:
0x8f6a86f3ab015f4d03ddb13abb02710e6d7ab31b
算力&NFT交易平台F3.xyz发布1.2版本,将采用0.5%的交易手续费率:7月5日消息,7月4日,算力&NFT交易平台F3.xyz发布1.2版本,新版本将采用0.5%的交易手续费率。
据悉,F3.xyz运营接近20个Filecoin节点,算?在全球排名第四,平台希望依托自身算力来为NFT赋能,解决NFT缺乏深度价值支撑的痛点,用户持有NFT即可参与挖矿。[2022/7/5 1:51:42]
攻击合约?1:
0xf079d7911c13369e7fd85607970036d2883afcfd
攻击合约2:
0x119914de3ae03256fd58b66cd6b8c6a12c70cfb2
攻击交易1:
https://etherscan.io/tx/0x9f14d093a2349de08f02fc0fb018dadb449351d0cdb7d0738ff69cc6fef5f299
以太坊与Harmony间跨链桥Horizo??n遭到攻击,损失金额约1亿美元:6月24日消息,由Layer1公链Harmony开发的以太坊与Harmony间的资产跨链桥Horizo??n遭到攻击,损失金额约为1亿美元。Harmony表示,目前已与相关部门以及专家合作追查攻击者并追回被盗资产。此外,Harmony称无需信任的比特币跨链桥并未受到影响,目前已通知交易所并暂停了Horizo??n跨链桥。攻击者的地址为0x0d043128146654C7683Fbf30ac98D7B2285DeD00。[2022/6/24 1:28:09]
攻击交易2:
https://polygonscan.com/tx/0x5a03b9c03eedcb9ec6e70c6841eaa4976a732d050a6218969e39483bb3004d5d
攻击细节
1、首先攻击者调用Monoswap.swapExactTokenForToken:0.1个WETH换出79.986094311542621010个MONO。
2、接着攻击者利用漏洞移除池子中其他用户的流动性,并为添加攻击合约的流动性以此来获取最大的利益。
这里移除流动性处的漏洞在Monoswap.sol中的471-510行,移除池中流动性时通过removeLiquidity函数调用_removeLiquidityHelper函数,而这两个函数都未做调用者和传入的to参数的身份验证,所以可直接移除任意用户在池中的流动性。
移除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;为攻击合约1在MONO代币流动池创建流动性。
3、紧接着攻击者调??55?次?Monoswap.swapExactTokenForToken以此来不断堆?MONO的价格。
这里攻击的核心是在Monoswap.sol中的swapExactTokenForToken函数,攻击者传入MONO代币使得tokenIn和tokenOut是相同的代币。
跟到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的价格上涨。
4、最后攻击者调用swapTokenForExactToken函数用MONO来换出池子中的其他代币。
swapTokenForExactToken函数中调用了swapOut函数,而swapOut函数中计算价格是调用的getAmountIn函数。
在该函数中由于tokenInPoolPrice是取的MONO代币在池中的价格,而此价格在之前已被推高,导致tokenInPrice变大,计算最后的amountIn变小,用更少的MONO换出了原来相同数量的WETH、WBTC、MONO、USDC、USDT、DUCK、MIM、IMX等池子中的代币。
5、攻击者最终把攻击获利转入地址
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,以此来不断推高池中该代币的价格,最后可以换出池中其他的所有代币来获利离场。
标签:TOKETOKTOKENKENSwiftlance tokenMUXE TokenTransparent TokenSmart Reward Token
重点摘要DeFi的可组合性让开发者能够在开发中使用无须许可且抗操控的基础架构,从而专注于核心商业逻辑的开发。可以将多个DeFi应用有机地组合在一起,创造出前所未有的应用场景和金融产品.
1900/1/1 0:00:00很久都没有说有关defi的项目了,今天来说一个进步还比较快的项目。Bancor是一种为小市值代币提供流通性的系统,它内置可交易的一种或多种ERC20代币作为储备金.
1900/1/1 0:00:00就在今天,元宇宙公司RFOX宣布計劃歡迎CoinGecko,作為Marquee客戶進入其虛擬世界RFOXVALT.
1900/1/1 0:00:00作者?|?CyborgDoggie,顾问@RacingTime合作者:DailyShen@RacingTime编译:刘全凯已获得原作者授权转载译者注:U本位打金游戏CryptoMines的平台通.
1900/1/1 0:00:00原标题:《AxieInfinity:It''s(still)justthebeginning》作者:ThreebodyCapital翻译&编者按:MintVentures??飞翔的小拇趾.
1900/1/1 0:00:00律动研究院曾在《NTNFT:当钱包能记录你的一生》中介绍了无法转账的非同质化代币在链下及链上经历证明的各类用例.
1900/1/1 0:00:00