木星链 木星链
Ctrl+D收藏木星链
首页 > Coinw > 正文

NFT:移花接木:Revest Finance 被黑分析

作者:

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

By:九九@慢雾安全团队

2022 年 03 月 27 日,据慢雾区消息,Revest Finance 的 Revest 合约遭到黑客攻击,黑客盗取了近 770 万枚 ECO、579 枚 LYXe、近 7.15 亿枚 BLOCKS 以及超 35 万枚 RENA。慢雾安全团队第一时间介入分析,并将结果分享如下:

相关信息

Revest Finance 提出了一种新协议,用于将可替代的 ERC-20 代币作为不可替代的代币化金融工具进行打包、转移和存储,利用 ERC-1155 非可替代代币(NFT)标准来简化访问和商业通用性。使用该产品,资产的所有权可以以不影响资产价值的方式进行交易,从而形成一个新的商业模式。通过有针对性的用例发现该协议的机制、治理和货币化。

以下是本次攻击涉及的相关地址:

攻击者地址:

https://etherscan.io/address/0xef967ece5322c0d7d26dab41778acb55ce5bd58b

攻击合约:

https://etherscan.io/address/0xb480ac726528d1c195cd3bb32f19c92e8d928519

梅拉尼娅·特朗普将于7月4日之前发行一款NFT系列:金色财经报道,前美国第一夫人梅拉尼娅·特朗普 (Melania Trump) 将于 7 月 4 日之前发行一款NFT系列。该系列共有3000种数字收藏品,每件售价50美元,潜在买家可以使用多种数字钱包或信用卡。[2023/6/30 22:09:33]

被攻击合约:

https://etherscan.io/address/0x2320a28f52334d62622cc2eafa15de55f9987ed9#code

攻击交易:

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

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

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

欧洲议会通过欧盟数字钱包立法:金色财经报道,欧盟关于数字身份框架的提案以418票赞成、103票反对、24票弃权通过了欧洲议会全体投票。欧盟范围内的框架将使公民能够获得公共服务,并且他们将拥有自己的钱包。该立法包括保护用户隐私的零知识证明技术。ZK-proof 通过验证位置而不泄露不必要的数据来保护隐私。[2023/3/16 13:08:37]

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

攻击核心点

在被攻击的 Revest 合约中,用户调用 mintAddressLock 函数来将一定数量的 ERC-20 代币存入 Revest Smart Vault 时,就会创建 FNFT。该 NFT 代表了用户拥有的代币资产数额,后续可以调用 withdrawFNFT 函数将代币赎回。

攻击核心点就在于攻击者利用 ERC1155 标准铸造 NFT 时会调用接受者地址的 onERC1155Received 函数,因此攻击者利用该点回调重入了 Revest 合约中的 depositAdditionalToFNFT 函数,该函数会铸造一个新的 NFT,接着会调用 tokenVault 合约的 handleMultipleDeposits 函数记录新的 NFT 的信息,而 handleMultipleDeposits 函数中缺少了对该新铸造的 NFT 是否存在的判断,故此攻击者利用重入修改了已经铸造过的 NFT 的信息,而用户铸造 NFT 打入 ERC20 资产代币的流程是在重入操作之前的,故此用户无需打入 ERC20 代币就成功铸造了代表自己具有 360001 枚 ERC20 代币资产的 NFT。

数据:最近一周,以太坊网络新增约230万枚NFT资产:金色财经报道,NFTScan数据显示,最近一周,以太坊网络新增2326926枚NFT资产,平均每天新增铸造33.2418万枚NFT资产。[2022/10/3 18:37:53]

具体细节分析

此处拿获取 RENA 代币的攻击进行分析,其他几个攻击手法一致,不做过多赘述。

1. 攻击者首先从 uniswap 池子中闪电贷借出 2 枚 RENA 代币

2. 接着调用 Revest 合约中的 mintAddressLock 函数,传入 quantities 为 2,该函数进行加锁操作后会调用 doMint 函数来铸造 NFT

在 doMint 函数中,会调用 tokenVault 合约的 createFNFT 函数记录所铸造的 NFT 函数信息,接着用户给 tokenVault 合约转账相应的 ERC20 代币,最后调用 FNFTHandler 合约中的 mint 函数来发放 NFT

黑客组织Anonymous对Yuga Labs及BAYC提出多项指控:9月28日消息,黑客组织Anonymous近日在一段针对YugaLabs及BAYC的视频中指控,YugaLab涉嫌在BAYC艺术中使用深奥的象征主义支持许多争议性主题,如纳粹主义、种族主义、猿猴化和恋童癖。该组织呼吁知名人士和品牌发声并表明立场。

据悉,今年6月24日,YugaLabs联合创始人GregSolano已在MediumPost中否认了类似指控,并表示针对其团队的种族主义指控毫无根据。(cointelegraph)[2022/9/28 22:35:44]

所铸造的 NFT 的 fnftId 为 1027, 所记录的该 NFT 相关信息如下:

因为 depositAmount 为 0,故此 NFT 代表用户拥有的 ERC20 代币资产为 0,故无需转相关资产代币给合约

3. 再次调用 Revest 合约中的 mintAddressLock 函数,传入 quantities 为 360000,与上面相同的步骤调用 doMint 进行铸造 NFT,所铸造的 NFT 的 fnftId 为 1028,记录的 NFT 信息如下:

ApeCoin资助BAYC新闻网站的提案获得社区批准:7月28日消息,ApeCoin 资助 24 小时 BAYC 新闻网站“Bored Ape Gazette”的提案(AIP-70)获得社区批准,第一年更新和运营 Bored Ape Gazette 网站的总成本预计为 150,000 美元。ApeCoin 基金会现在将根据 DAO 治理协议实施该提案。Bored Ape Gazette 将重点关注 Yuga Labs 的所有项目,同时包括 NFT 市场数据。该网站还将包括 ApeCoin 价格图表、监控治理投票的 DAO 跟踪器、APE 日历和显示所有 Yuga Labs 项目活动的实时销售代码。[2022/7/29 2:44:31]

因为 depositAmount 为 0,故仍然无需转账代币资产给 tokenVault,但是与之前不同的是,这一次铸造 NFT 的操作中,因为在调用 FNFTHandler 合约的 mint 函数时会调用 _doSafeTransferAcceptanceCheck 函数

该函数会调用攻击合约的 onERC1155Received 函数,故此攻击者利用攻击合约中的重写的 onERC1155Received 函数回调重入了 Revest 合约的 depositAdditionalToFNFT 函数

在 depositAdditionalToFNFT 函数需要传入指定的 fnftId(此处是 1027)、NFT 数量 quantity(此处是 1)与单个 NFT 中需要存款的资产数额 amount(此处是 1),该函数会 burn 掉传入的 fnftId 的指定数量的 NFT,接着用户转入指定数量的 ERC20 代币资产并 mint 新的 NFT,需要转账的数量是 quantity *? amount 为 1,最后调用 tokenVault 合约中的 handleMultipleDeposits?记录新的 NFT 的存款数量为上面传入指定 fnftId 的 NFT 的 depositAmount 值 + 传入的 amount 的值

而在 handleMultipleDeposits 函数 mint 新的 NFT 时没有判断该 NFT 的信息是否在 tokenVault 合约中存在,故此攻击者利用该问题直接修改了 1028 号 NFT 的信息,使得该 NFT 虽然在 doMint 操作时第一次记录的 depositAmount 为 0,但是在重入后却修改成了 1

4. 最后调用 withdrawFNFT 函数进行提取 NFT 中所代表的 ERC20 代币资产

该函数燃烧掉指定的 NFT 后,会调用 tokenVault 合约中的 withdrawToken 函数进行提款

因为 depositAmount 在回调后被修改了为了 1,故此最后提款的 RENA 数量计算出来约为 360000 枚

5. 攻击者归还闪电贷后获利离场

总结

本次攻击事件是由于在 tokenVault 合约中的 handleMultipleDeposits 函数中没有判断该新铸造的 NFT 是否存在,故此攻击者利用该点直接修改了已经铸造过的 NFT 的信息,并且在 Revest 合约中关键的函数没有做重入锁的限制,导致了被回调利用。慢雾安全团队建议在进行铸造 NFT 等敏感操作时需增加对 NFT 是否已经存在的判断,且在合约关键函数中必须添加重入锁的限制,避免再次出现此类问题。

标签:NFTULTPOSFNFnft币今日价格行情ULTI价格pos币排行FNF价格

Coinw热门资讯
比特币:2020年15大加密风险投资榜单发布 风投们都在关注什么?

近日,The Block Research发布2020年加密风投交易排行榜前十五名表单,合规比特币交易平台Bakkt在其3月16日进行的3亿美元的B轮融资中排名第一.

1900/1/1 0:00:00
DEF:DeFi质押投资策略入门

DeFi(去中心化金融)的核心特征之一是为任何可连接互联网的人提供金融服务。传统银行主要通过为借贷设定利率进行盈利,DeFi协议也是如此.

1900/1/1 0:00:00
区块链:虚拟代币交易打击正在加码:8家企业被约谈只是开始

  虚拟代币交易打击正在逐渐加码。12月18日,一则关于“深圳加快虚拟代币交易整顿,8家涉嫌发币企业被约谈”的消息,让本不平静的“币圈”再起波澜.

1900/1/1 0:00:00
ATT:a16z 合伙人:究竟是什么让「边玩边赚」游戏模式大获成功?

当(大部分)游戏中的真钱交易模式不起作用时,我们发现「边玩边赚」(play-to-earn)开始兴起.

1900/1/1 0:00:00
BSP:美国立法者:将加密资产从证券法中移除

4月9日,美国众议院的代表们重新引入了代币分类法案。该法案将把加密资产排除在证券之外。该法案最初由共和党众议员 Warren Davidson 和民主党众议员 Da.

1900/1/1 0:00:00
区块链:金色趋势丨信念决定方向 思维决定格局

看下BTC2011-2021年长期年线走势,整体沿趋势线一路向上,说明只要长期持有,都是牛市,关键是时间.

1900/1/1 0:00:00