Shallow copy bug in geth
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- None · High · Low
- Fix status
- Fixed
Attack profile from CVSS 3.1 · NVD. Fix status from CNA and GitHub.
Summary
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.
Why it matters now
SSVC decision points
Not available: CISA has not published SSVC decision points for this record.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| ethereum | go-ethereum | 1.9.7 to before 1.9.17 | 1.9.17 | Patch available | CNA |
| — | github.com/ethereum/go-ethereum (Go) | 1.9.7 to before 1.9.17 | 1.9.17 | Patch available | GHSA-69v6-xc2j-r2jf |
- go-ethereum Vendorethereum Affected 1.9.7 to before 1.9.17 Fixed in 1.9.17 Patch available CNA
- github.com/ethereum/go-ethereum (Go) Vendor— Affected 1.9.7 to before 1.9.17 Fixed in 1.9.17 Patch available GHSA-69v6-xc2j-r2jf
Remediation
- Fix · CNA go-ethereum (ethereum) Fixed in 1.9.17
- Fix · GHSA-69v6-xc2j-r2jf github.com/ethereum/go-ethereum (Go) Fixed in 1.9.17 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2020-26241
- 2026-10-03 Alias added: GHSA-69v6-xc2j-r2jf
References
Advisory 3
More ethereum Go Ethereum vulnerabilities
- TI-2023-22561 Geth (aka go-ethereum) through 1.13.4, when --http --graphql is used, allows remote… CVSS 3.1HIGH 7.5
- TI-2026-21270 Go Ethereum affected by DoS via malicious p2p message CVSS 4.0HIGH 8.7
- TI-2023-21389 Denial of service via malicious p2p message in go-ethereum CVSS 3.1HIGH 7.5
- TI-2018-08612 The GetBlockHeadersMsg handler in the LES protocol implementation in Go Ethereum (aka… CVSS 3.0HIGH 7.5
- TI-2026-21271 Go Ethereum Improperly Validates the ECIES Public Key in RLPx Handshake CVSS 4.0MEDIUM 6.9
- TI-2026-21269 Go Ethereum affected by DoS via malicious p2p message CVSS 4.0MEDIUM 6.9
Sources
- CVE-2020-26241 · CVE Program
- CVE-2020-26241 · NVD
- FIRST EPSS
- GHSA-69v6-xc2j-r2jf · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences