CVE-2020-26241
published 2020-11-25CVE-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…
PriorityP336high7.1CVSS 3.1
AVNACLPRLUINSUCNIHAL
EPSS
1.08%
60.9th percentile
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.
Affected
3 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| ethereum | go-ethereum | — | — |
| ethereum | go_ethereum | < 1.9.17 | 1.9.17 |
| github.com | ethereum_go-ethereum | >= 1.9.7 < 1.9.17 | 1.9.17 |
CVSS provenance
nvdv3.17.1HIGHCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L
nvdv2.05.5MEDIUMAV:N/AC:L/Au:S/C:N/I:P/A:P
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
OSV
Shallow copy bug in geth in github.com/ethereum/go-ethereum
osv·2024-08-21
CVE-2020-26241 Shallow copy bug in geth in github.com/ethereum/go-ethereum
Shallow copy bug in geth in github.com/ethereum/go-ethereum
Shallow copy bug in geth in github.com/ethereum/go-ethereum
GHSA
Shallow copy bug in geth
ghsa·2021-06-29
CVE-2020-26241 [MEDIUM] CWE-682 Shallow copy bug in geth
Shallow copy bug in geth
### Impact
This is a Consensus vulnerability, 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`,
- calls `0x00..04` with `R` as an argument,
- 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`.
### Patches
No standalone patches have been made.
### Workarounds
Upgrade to `1.9.17` or higher.
### References
https://blog.ethereum.org/2020/11/12/geth_security_release/
### For more information
If you have an
OSV
Shallow copy bug in geth
osv·2021-06-29
CVE-2020-26241 [MEDIUM] Shallow copy bug in geth
Shallow copy bug in geth
### Impact
This is a Consensus vulnerability, 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`,
- calls `0x00..04` with `R` as an argument,
- 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`.
### Patches
No standalone patches have been made.
### Workarounds
Upgrade to `1.9.17` or higher.
### References
https://blog.ethereum.org/2020/11/12/geth_security_release/
### For more information
If you have an
No detection rules found.
No public exploits indexed.
No writeups or analysis indexed.
2020-11-25
Published