ERC1155的重入攻击又“现身”:Revest Finance被攻击事件简析

2022年3月27日,成都链安链必应-区块链安全态势感知平台舆情监测显示,DeFi协议Revest Finance遭到黑客攻击,损失约12万美元。

据悉,Revest Finance是针对DeFi领域的staking的解决方案,用户通过Revest Finance参与任何DeFi的staking,都可以直接创建生成一个NFT(该NFT包含了这个staking仓位的当前以及未来价值)。

在攻击发生之后,项目方官方发推表示他们以太坊合约遭受了攻击,目前已采取措施确保所有链中的剩余资金安全。

成都链安技术团队对此事件进行了相关简析。

地址列表

Token合约:

0x56de8BC61346321D4F2211e3aC3c0A7F00dB9b76

被攻击合约:

0x2320a28f52334d62622cc2eafa15de55f9987ed9

0xb480Ac726528D1c195cD3bb32F19C92E8d928519

攻击者:

0xef967ECE5322c0D7d26Dab41778ACb55CE5Bd58B

交易截图

首先攻击者通过uniswapV2call 2次调用受攻击的目标合约中的mintAddressLock函数。

该mintAddressLock函数用于查询并向目标铸造NFT,并且nextid(FNFTHandler.fnftsCreated)会在铸造NFT后进行更新。

攻击者第一次调用mintAddressLock函数铸造了2个ID为1027的Token为后续攻击做准备,随后再次调用mintAddressLock铸造了3600个ID为1028的Token,在mint函数完成前攻击者重入了depositAdditionalToFNFT函数【ERC1155 onERC1155Received 重入】,由于NFT nextId(FNFTHandler.fnftsCreated)在mint函数铸造NFT完成并通知后进行更新,此时的nextId仍然为1028,并且合约并未验证1028的Token数量是否为0,因此攻击者再次成功地铸造了1个ID 为1031的Token,完成了攻击。

此次攻击中的铸币相关函数未严格按照检查-生效-交互模式设计,且未考虑到ERC1155 token转账重入的可能性。

建议在合约设计时严格按照检查-生效-交互模式设计,并在ERC1155 token相关DeFi项目中加入防重入的功能。

截止目前为止,攻击者仍然未将资产进行转移,成都链安将持续进行监控。

攻击者地址:

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

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

金智博客

DOGE疫情下谁来拯救旅游业?解锁西安“文旅元宇宙”新玩法

元宇宙火了,但它到底是什么?有哪些落地场景?用户在哪里?商业模式是什么?带着这些疑问,巴比特今天起开设《超级体验官》栏目,通过沉浸式体验,发掘元宇宙赛道的无尽潜力。 2021年11月18日,张家界元宇宙研究中心挂牌成立,这被认为是全国首个设立元宇宙研究中心的景区。

XMRDeFiance Capital创始人Arthur:押注 DeFi 项目的秘诀

亚洲最大的专注于DeFi的基金DeFiance Capital的创始人Arthur Cheong(Arthur0x),在Bankless播客中分享了他如何在短短3年内将6位数的投资组合变成9位数。 他解释了他在协议中所关注的基本要素,以及他究竟用哪些指标来进行估值,他还分享了哪些代币目前被低估了。

SHIB倍受web3组织青睐 如何获得你的 .XYZ 域名?

因此,我们如何押注 .com、.in、.eu 和 .gov 等已建立的域名?非 .com 域名似乎在区块链领域中更受欢迎。例如,.xyz 域是区块链组织最常用的域名之一。 根据域名统计,.xyz 域名的受欢迎程度近年来呈爆炸式增长。下图描绘了 2021 年注册 .xyz 域名数量的增长情况。

[0:0ms0-5:807ms