安全研究人员警告现有合约面临风险后,以太坊推迟Glamsterdam Hoodi测试网激活
要点速览
- •在ChainSecurity的分析引发对拟议Gas规则的担忧后,以太坊开发者取消了原定于10月26日进行的Glamsterdam Hoodi测试网激活。
- •在EIP-8037和EIP-8038下,被撤销的状态变更可获得Gas返还,这可能使合约拥有足够的Gas完成失败处理例程,将本意暂时的错误转变为永久的链上记录。
- •ChainSecurity估计,根据这些提案,创建新存储槽的成本可能从目前的22,100 Gas升至110,020 Gas,可能导致本属有效的操作超出现有Gas预算。
- •Hoodi测试、计划中提升至2亿的Gas上限以及主网激活均未确定新日期,有待将在未来全核心开发者会议上处理的调查。
- •Glamsterdam已于10月6日完成Sepolia测试网激活,其中包括选择区块构建者的新系统以及旨在支持更大区块的变更。

安全研究人员警告现有合约面临风险后,以太坊推迟Glamsterdam Hoodi测试网激活
在ChainSecurity展示了拟议的Gas规则如何可能导致智能合约永久记录失败操作后,开发者取消了周一的激活计划。
在安全研究人员发现拟议的Gas计算变更可能改变现有智能合约处理失败交易的方式——在某些情况下使错误被永久记录在链上——之后,以太坊开发者推迟了Hoodi测试网络上的Glamsterdam升级。
该升级原定于10月26日周一17:42:48 UTC激活。推迟决定是在周四的全核心开发者执行会议上做出的,开发者同意首先调查拟议变更与以太坊主网络上已在运行的合约之间的交互情况。Hoodi测试或其计划将Gas上限提升至2亿的新日期均未公布,主网升级的时间安排仍未确认。
Hoodi是以太坊的公共测试网络之一——即将到来的升级在涉及真实资金之前,会在这些环境中以与主网相同的客户端软件运行。发现这类意外的交互情况,正是这一演练环节在变更触及主网之前所要捕捉的问题。
研究人员发现了什么
担忧的核心在于EIP-8037,它改变了以太坊在状态数据库中创建新记录时的收费方式。该提案旨在随着网络处理的交易数量增加,限制该数据库的增长。
安全公司ChainSecurity于10月13日发布了对这些提案的分析,显示该变更与EIP-8038相结合,可能改变合约在被调用的另一个合约耗尽Gas——即用于向网络运营商支付计算费用的资源——时的响应方式。
一些智能合约的设计目的是捕捉失败的操作并继续处理。它们可能记录某次尝试失败、禁用后续尝试或转到另一个步骤。开发者有时依赖剩余Gas过低以致这些操作无法完成,从而使整个交易回滚。
Glamsterdam改变了这一计算方式。根据拟议规则,用于创建某些记录的Gas可以在这些变更被撤销时返还。这可能使合约拥有足够的Gas来完成一个此前会因Gas耗尽而回滚的失败处理例程——这意味着开发者本意是暂时性的错误可能反而变成永久性的。由于已部署的合约通常无法事后重写,此类行为变更必须在协议本身中解决,而不是在应用代码中。
ChainSecurity还指出了相反方向的风险。它计算出,一旦单独的配额用尽,创建一个新的存储槽——合约链上数据的基本单元——可能需要110,020 Gas,而现行规则下为22,100。因此,在现有Gas预算内运行的合约可能在执行本属有效的操作时失败。
这些发现涉及现有软件在拟议规则下的行为方式。ChainSecurity已演示了相关机制,但尚未公开证实任何主要的生产协议存在可利用的漏洞。以太坊主网尚未确定Glamsterdam的激活日期,这些发现也不表明现有合约目前正通过这些拟议变更受到利用。
Glamsterdam的现状
Glamsterdam为以太坊带来了多项变更,包括选择区块构建者的新系统,以及旨在让网络能够处理更大区块的改进。该升级已于10月6日完成Sepolia测试网激活。Hoodi原本是下一个公开演练,同时计划将测试网的Gas上限提升至2亿——这一步骤目前也已被推迟。
由于尚未确定替代日期,升级时间表现在取决于已商定的对提案与部署合约交互情况的调查。任何修订后的Hoodi激活或主网时间安排,都将在未来的全核心开发者会议上确定——这正是本周推迟决定达成的同一场合。
本文基于CoinDesk首次发布的报道:Ethereum delays Glamsterdam test after security devs flag risk to existing contracts。ChainSecurity的完整分析可在此处查阅。