欢迎登录贵币网

记住密码
找回密码

以太坊被曝再出新“漏洞”?

星球日报 10天前


据trustnodes 消息,距离以太坊君士坦丁堡硬分叉还有两周时间,以太坊被曝出再次发现新“漏洞”。

以太坊基金会(EF)的开发人员 Jason Carver 表示,一个名为Create2的新功能可以允许开发人员替换自毁的智能合约,从而更改规则,存在盗币风险。

Create2 是通过 EIP 1014 引入的新功能,被称为“ Skinny CREATE2 ”,旨在通过允许“确定性部署”来更好地促进以太坊上的脱链交易,在部署过程中,它允许开发人员更改代码并重新部署到同一地址。)

Carver说:

在君士坦丁堡之前,你可以构建一个无害的合约,一个交易可能有两种结果:合约产生,交易代币;合约自毁,浪费一些 Gas。然而在君士坦丁堡之后,选项现在可以变成了:合约产生,交易代币;合约自毁,浪费一些 Gas;合约替换,所有已被合约批准的ERC20代币可能会被盗…在君士坦丁堡之前,合约自毁(Selfdestruct)风险性并不大,因为自毁的合约只能消失。现在它可以带着代码返回再次创建,这些代码可以转移所有已批准的所有代币。

EF 的另一名开发人员 Martin Holst Swende 表示:

如果有人验证了来源,他就应该注意到Selfdestruct (没有适当的不活跃期),并避免与之交互(防止被盗)。


正在进行以太坊 1x 升级工作的 Alexey Akhunov 说:

我刚刚得出的结论是,EOA帐户(普通eth地址)回收与临时的重放保护(将EOA的nonce重置为0)相结合,将使CREATE2 进一步扩展到 EOA 帐户,使EOA账户面临更大风险……也许 CREATE2 应该被修改为永远不允许重复nonces,类似于其他的重放保护方案,比如将新创建的契约的nonce分配给TOTAL_TXS,这样至少可以消除超出预期功能的连锁效应。

在区块链硬分叉之时会存在重放攻击的风险,攻击者在其中一条链上发起的交易,去到另一条链上重新广播,可能也会得到确认,这就是“重放攻击”。“重放保护”是分叉后在两条链之间加了一重保护,比如在 A 链上进行一笔交易,那么 B 链上重复的交易会被判为无效。

Martin Holst Swende 上周在Twitter上进行了一项调查,有多少人会意识到君士坦丁堡硬分叉后代码更改,结果表明,76% 的人并不会意识到这个问题。这也意味着,除非是技术性很强的开发者,非开发人员可能知道这种自毁技巧的机会可能很小。

Carver也表示像此类攻击方式技术门槛太高,一般人也做不到。“有很多方法可以进行‘社会攻击’(social attacks),但大多数都需要教育,这肯定会落后于君士坦丁堡自身的升级。”

不过,摆在开发者面前的一个问题是,这些具有自毁功能的智能合约可能会诱使盗币犯罪,他们必须考虑将其全部删除、修改,即使他们想保持原样,也要教育用户,让每个人知道某些智能契约不是一成不变的,而是可以随意更改的,他们的钱可能会被盗。

君士坦丁堡硬分叉是否会因为上述原因而推迟?Parity 开发者 Afri Schoedon 表示并不会推迟。ChainSecurity首席运营官Matthias Egli 则表示,这不是一个“安全漏洞”,而是“一个极端案例”,一旦变更生效,以太坊的开发人员应该警惕。他补充说,在EIP 1283之外的其他四个EIP最初设定包含在君士坦丁堡之内,在2月27日的硬分叉之前会继续接受审计师的审计。

目前以太坊难度炸弹已经爆炸,etherchain数据显示,以太坊出块时间为20.4秒,三周后,将会到达 30-40 秒;日内挖矿收益也从 20000 个降至13000 个ETH(出块时间延长,出块少,所以收益下降),预计未来三周将再次下降2000-3000个 ETH。
声明:贵币网发布此文为传递更多信息,不代表赞同其观点或证实其描述。文章内容仅供参考,不构成投资建议。投资者据此操作,风险自担。本文版权归原作者所有,如有侵权请及时联系我们。
0
表情
全部评论60
  • 成为第一个评论的人

  • 比特币
  • 莱特币
  • 以太币
  • BTC
  • -.--
  • ----.--
  • LTC
  • -.--
  • ----.--
  • ETH
  • -.--
  • ----.--

    贵币内参

    《区块链内参》第54期

    《区块链内参》第54期

    更新时间:2018-12-03 21:38

    反复折腾最易冷,冬眠反而易逢春。

    贵币网倾力打造,由资深从业者、研究员、分析师撰写的研究简报、行业情报及内幕,每日晚22点出刊。