LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 币圈百科 > BlockSec:以太坊分叉因Geth旧版本在处理预编译合约调用时未考虑异常值的处理

BlockSec:以太坊分叉因Geth旧版本在处理预编译合约调用时未考虑异常值的处理

2021-08-28 区块律动BlockBeat 来源:区块链网络
律动 BlockBeats 消息,8 月 27 日,BlockSec 团队发文称,北京时间 2021 年 8 月 27 日 20 点 50 分左右(区块高度 13107518),以太坊突然出现分叉。BlockSec 通过分析 Geth 的代码版本修改和这笔造成分叉的交易(0x1cb6fb36633d270edefc04d048145b4298e67b8aa82a9e5ec4aa1435dd770ce4)厘清了以太坊分叉的根本原因:Geth 旧版本在处理预编译合约调用时,并未考虑特殊情况(corner case)下参数值的处理,从而引发重叠拷贝(overlapping copy),导致返回值异常。该漏洞(CVE-2021-39137)已提交 Geth 官方,目前尚未披露细节,但攻击者已经利用漏洞实施了攻击。 BlockSec 总结称,通过对整个攻击流程的梳理和 Geth 源代码的分析,BlockSec 认为根本原因在于 Geth 旧版本在处理预编译合约的调用时并未考虑异常值的处理,导致攻击者利用该漏洞实施了重叠拷贝,影响了返回值,最终导致分叉的出现。由于 Geth 是 BSC、HECO、Polygon 等公链的基础,因此该漏洞影响范围甚广。目前各公链也先后推出了升级和补丁,BlockSec 也呼吁各相关节点尽早升级打上补丁,以确保基础设施的安全。

[原文链接]

—-

编译者/作者:区块律动BlockBeat

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

知识
LOADING...
LOADING...