CVE-2020-26241
Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
25/11/2020
Last modified:
03/12/2020
Description
Go Ethereum, or "Geth", is the official Golang implementation of the Ethereum protocol. This is a Consensus vulnerability in Geth before version 1.9.17 which can be used to cause a chain-split where vulnerable nodes reject the canonical chain. Geth's pre-compiled dataCopy (at 0x00...04) contract did a shallow copy on invocation. An attacker could deploy a contract that writes X to an EVM memory region R, then calls 0x00..04 with R as an argument, then overwrites R to Y, and finally invokes the RETURNDATACOPY opcode. When this contract is invoked, a consensus-compliant node would push X on the EVM stack, whereas Geth would push Y. This is fixed in version 1.9.17.
Impact
Base Score 3.x
7.10
Severity 3.x
HIGH
Base Score 2.0
5.50
Severity 2.0
MEDIUM
Vulnerable products and versions
| CPE | From | Up to |
|---|---|---|
| cpe:2.3:a:ethereum:go_ethereum:*:*:*:*:*:*:*:* | 1.9.17 (excluding) |
To consult the complete list of CPE names with products and versions, see this page



