Vulnerability Details : CVE-2020-26241
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.
Products affected by CVE-2020-26241
- cpe:2.3:a:ethereum:go_ethereum:*:*:*:*:*:*:*:*
Exploit prediction scoring system (EPSS) score for CVE-2020-26241
0.07%
Probability of exploitation activity in the next 30 days
EPSS Score History
~ 30 %
Percentile, the proportion of vulnerabilities that are scored at or less
CVSS scores for CVE-2020-26241
Base Score | Base Severity | CVSS Vector | Exploitability Score | Impact Score | Score Source | First Seen |
---|---|---|---|---|---|---|
5.5
|
MEDIUM | AV:N/AC:L/Au:S/C:N/I:P/A:P |
8.0
|
4.9
|
NIST | |
7.1
|
HIGH | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L |
2.8
|
4.2
|
NIST | |
6.5
|
MEDIUM | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N |
2.8
|
3.6
|
GitHub, Inc. |
CWE ids for CVE-2020-26241
-
The product performs a calculation that generates incorrect or unintended results that are later used in security-critical decisions or resource management.Assigned by: security-advisories@github.com (Primary)
References for CVE-2020-26241
-
https://github.com/ethereum/go-ethereum/security/advisories/GHSA-69v6-xc2j-r2jf
Shallow copy in the 0x4 precompile could lead to EVM memory corruption · Advisory · ethereum/go-ethereum · GitHubThird Party Advisory
-
https://blog.ethereum.org/2020/11/12/geth_security_release/
Geth security release | Ethereum Foundation BlogVendor Advisory
Jump to