ETH:Fairyproof:在 EIP-4626 中的安全注意事项

在 DeFi 应用程序 Fei Protocol 的联合创始人 Joey Santoro 的领导下,最近提出了一个 EIP,用于为代币化保险库创建新的代币标准。它是 EIP-4626。

尽管它刚刚在 2021 年 12 月提出,但很快就获得了以太坊社区的极大关注和大力支持,并据报道已被包括 Tribe DAO 和 Rari Capital DAO 在内的一些 DAO 采用。

该 EIP 旨在解决代币化保险库现有实现中的一个痛点,即“代币化保险库缺乏标准化,导致实现细节多样化”。这个痛点使得标记化保险库的集成“在聚合器或插件层对于需要符合许多标准的协议很困难,并迫使每个协议实现自己的适配器,这些适配器容易出错并浪费开发资源”。

该 EIP 基于 ERC-20,这是以太坊 DeFi 应用程序中广泛采用的标准,存在相当大的安全问题或风险,需要智能合约开发人员了解。

EthereumFair宣布将于3月20日进行米兰升级:3月16日·消息,据EthereumFair推特消息,EthereumFair主网将于3月20日进行米兰升级,这次升级包括每300万区块奖励减半,取消叔块奖励,当前区块奖励修改为1个ETHF,修改DAG高度,使得更多矿机可以参与,总量限制为2.1亿枚。EthereumFair是ETH转POS后全球第一个分叉,保留POW。[2023/3/16 13:08:46]

作为一家区块链安全公司,Fairyproof 的研究团队对 ERC-20 实施的问题或风险是否也可能引入 ERC-4626 非常感兴趣。我们研究了这个 EIP,探索了可能的安全检查点,并想分享一些关于这些检查点的想法。

此 EIP 要求代币化保险库必须实现 ERC-20 来表示股份,并添加新接口以将股份转换为代币或将代币转换为可查看函数和传输函数中的股份。而这些新增的功能引入了需要我们注意的安全注意事项。

南非FSCA专员澄清:FAIS法案不包含矿工和NFT:10月23日消息,南非金融市场行为监管局(FSCA)于10月20日在官网发布公告称,该国《2002年金融咨询和中介服务法案》(FAIS)已经更新,涵盖加密资产的定义,并将加密资产归类为金融产品。不过FCSA专员Unathi Kamlana澄清,“FCSA有意提及加密资产而非加密货币,是因为监管机构认为它们并不符合货币要求。非同质化代币(NFT)不包括在声明中,因为它们更像传统的艺术投资,但我们将继续监测NFT市场。”

此前报道,南非监管机构表示,加密货币金融公司必须在2023年获得运营牌照。(Techcabal)[2022/10/23 16:35:50]

以下是基于此 EIP 实施标记化保管库时的安全注意事项列表:

恶意功能的实施

Ethereum Fair(ETF)空投测试合约在以太坊网络完成部署:金色财经消息,据Ethereum Fair官方消息,目前已经完成以太坊网络上的空投合约部署,当分叉完成后此合约将同步至Ethereum Fair网络上,符合条件用户可以进行空投领取的相关操作。[2022/9/5 13:09:46]

考虑一个符合此 EIP 定义的接口但不符合规范的保险库实现。这种情况经常发生在使用代理机制的 rug-pulls 中,并且代理接口似乎符合令牌标准,但实际上,真正的实现是恶意合约。

因此,审计人员或用户需要在采取进一步行动之前仔细检查其实际实施情况。

支持 EOA 账户

EIP 指出“如果实施者打算直接支持 EOA 账户访问,他们应该考虑添加额外的存款/铸币/提款/赎回函数调用,以适应滑点损失或意外的存款/提款限制”。

安全公司Fairyproof:DAO的安全形势发展经历了三个阶段:5月13日消息,安全公司Fairyproof发布DAO综合安全研究报告。在报告中,Fairyproof 的研究团队对过去几年 DAO 的安全形势和状况的发展进行了综合性研究。在过去的几年里,尽管 DAO 的发展已取得了巨大的进步,目前的DAO 几乎在所有方面都比 2016 年要成熟得多,但安全问题似乎并没有减退,DAO 仍然面临着很多安全挑战。根据安全漏洞类型,Fairyproof认为 DAO 的安全形势发展经历了三个阶段。第一阶段:智能合约中的安全问题;第二阶段:执行机制中的安全问题;第三阶段:治理中的安全问题。相比其他安全问题,治理攻击是一种专门针对区块链应用的新型攻击, 它比对智能合约的攻击更加复杂。[2022/5/13 3:13:37]

除了滑点损失和意外的存款/取款限制外,还有另一种常见的情况:代币在转账时被烧毁。一些 DeFi 应用程序使用这种机制来减少其代币的流通供应量并抬高代币的价格。

动态 | FairWin合约内价值300万美元的ETH被转移清空:根据Etherscan的数据,以太坊上资金盘游戏FairWin的智能合约钱包已被清空,此前有价值300万美元的ETH。链上数据显示,这些ETH被转移至多个以太坊地址。目前并不清楚这是黑客所为还是用户提出ETH。(The Block)[2019/10/1]

我们建议 ERC-4626 保险库不允许将此类代币存入保险库。

使用接口作为预言机

EIP 声明“预览方法返回的值尽可能接近精确。出于这个原因,它们可以通过改变链上条件来操纵,并且并不总是可以安全地用作价格预言机。”?,并且“将转换方法实施为使用时间加权平均价格在资产和股票之间转换是正确的。”?

加密空间中预言机最流行的用例是使用它们来获取代币的价格,但智能合约需要的任何信息都可能依赖于预言机。因此,返回信息的预览方法也可以用作预言机。尽管这似乎没有重要的用例,但就目前而言,这个列出的潜在问题需要我们注意。减轻链上信息被操纵风险的一种流行方法是使用 Uniswap 引入的时间加权平均算法。

舍入问题

Vault 实施者需要仔细处理计算 Vault 份额或代币数量以及将份额转换为资产或将资产转换为份额的接口的舍入方向。

规范建议,在计算向用户发行的股份的标的代币数量时,他/她为他/她返回的一定数量的股份提供或发送给他/她的标的代币的数量,它应该向下舍入。

在计算用户必须提供以接收特定数量的基础代币的数量或用户必须提供以接收特定数量的股份的基础代币数量时,它应该四舍五入。

在计算 converTo 函数中的股份数量或基础令牌时,规范要求保险库实施者向下舍入以确保所有 ERC-4626 保险库实施的一致性。

这些建议和要求确保始终有足够数量的底层代币用于转移。这是审计人员在审计基于此 EIP 的保险库实施时需要注意的事项。

- 代币兼容性问题

该 EIP 特别提到了 ERC-20 代币标准。它是实现可替代代币的最广泛采用的代币标准。然而,在我们过去的审计经验中,我们也审计了一些基于替代以太坊代币标准(如 EIP-777)实施的可替代代币。

这些替代代币标准与 ERC-20 代币兼容,但存在一些差异。

让我们以 EIP-777 令牌标准为例。令牌标准允许实现者使用注册表来查找接口。如果注册表有错误,任何依赖它的东西都会产生不利影响。此功能引入的一个常见问题是重入风险 。

因此,可能存在两种我们需要注意的场景。

第一种情况是基于 ERC-20 兼容但替代标准实施的保险库。第二个是 ERC-4626 值,它与与 ERC-20 兼容但基于替代令牌标准实施的令牌交互。

在这两种情况下,替代代币标准都可能带来问题或风险。并且应仔细审查和审核基于替代标准的实施。

结束语:

在本文中,我们列出了在审核基于 ERC-4626 的保险库时的一些可能的安全注意事项。其中一些考虑因素已在 EIP 中提及,其他考虑因素是根据我们的审计经验列出的。

我们希望我们的初步建议能给实施者、用户和审计员一些关于如何安全和安全地处理 ERC-4626 保险库的粗略想法。

参考:

EIP-4626:代币化保险库标准,https?://eips.ethereum.org/EIPS/eip-4626 2021 年 12 月 22 日

去中心化自治组织,https://ethereum.org/en/dao/

部落,https://docs.fei.money/governance/tribe

瑞瑞资本,http: //rari.capital/

ERC-20 代币标准,https://ethereum.org/en/developers/docs/standards/tokens/erc-20/

Uniswap,https: //uniswap.org/

EIP-777:代币标准,https ://eips.ethereum.org/EIPS/eip-777

Samreen NF, Alalfi M H. 以太坊智能合约中的重入漏洞识别[C]//2020 IEEE 面向区块链的软件工程国际研讨会(IWBOSE)。IEEE,2020:22-29。

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

地球链

[0:15ms0-0:809ms