CVE-2026-22862
Ethereum Geth vulnerability analysis and mitigation

Overview

CVE-2026-22862 is a Denial of Service (DoS) vulnerability in go-ethereum (geth), the Go implementation of the Ethereum execution layer protocol. A network-accessible attacker can send a specially crafted p2p message to force a vulnerable geth node to shutdown or crash. All versions up to and including 1.16.7 are affected; the vulnerability is fixed in version 1.16.8. It carries a CVSS v3.1 base score of 7.5 (High) and a CVSS v4.0 base score of 7.1 (High) (Github Advisory). The vulnerability was disclosed on January 13, 2026, and was reported to the Ethereum Foundation Bug Bounty Program by DELENE TCHIO ROMUALD (Github Advisory).

Technical details

The vulnerability is classified as CWE-20 (Improper Input Validation) and stems from insufficient validation of KZG (Kate-Zaverucha-Goldberg) cryptographic proofs in blob transactions received over the peer-to-peer network (Github Advisory). Examination of the patch commit reveals that the fix introduces a new ErrKZGVerificationError error type and modifies the transaction fetcher (eth/fetcher/tx_fetcher.go) to immediately terminate transaction processing and disconnect the offending peer when a KZG verification failure is detected, rather than allowing the malformed message to propagate and crash the node (Patch Commit). An attacker with network access and low privileges (e.g., a peer connection to the target node) can craft a blob transaction with an invalid KZG cell proof and deliver it via the p2p protocol, triggering the crash (Github Advisory). The fix also corrects a bounds check in crypto/ecies/ecies.go related to message length validation, suggesting multiple input validation issues were addressed in the same patch (Patch Commit).

Impact

Successful exploitation results in a complete availability impact on the targeted geth node — the node is forced to shutdown or crash, disrupting its participation in the Ethereum network. There is no confidentiality or integrity impact; the attack is purely a denial of service. For node operators running validators, RPC providers, or infrastructure dependent on continuous geth availability, exploitation could cause service outages, missed block proposals, or disruption of downstream applications relying on the node's JSON-RPC interface (Github Advisory).

Exploitability

A proof-of-concept (PoC) repository was published on GitHub shortly after disclosure (PoC Repository). The EPSS score is approximately 0.14%, indicating a low but non-zero probability of exploitation in the wild within 30 days (Github Advisory). No confirmed in-the-wild exploitation or threat actor attribution has been reported as of the available data. The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. Exploitation requires low privileges (a peer connection to the target node) and no user interaction, with low attack complexity, making it relatively straightforward for an attacker already connected to the Ethereum p2p network.

Exploitation steps

  1. Reconnaissance: Identify publicly reachable geth nodes running versions <= 1.16.7 using Ethereum network crawlers or tools like devp2p to enumerate peers and their client versions.
  2. Establish peer connection: Connect to the target geth node via the Ethereum DevP2P protocol (default port 30303) to establish a valid peer relationship, satisfying the low-privilege requirement.
  3. Craft malicious blob transaction: Construct a blob (EIP-4844) transaction with a deliberately invalid KZG cell proof — for example, by generating a valid blob and commitment, computing cell proofs, then mutating one proof byte (e.g., setting cellProof[0][0] = 0x01) as demonstrated in the patch's test code (Patch Commit).
  4. Deliver malicious transaction: Announce and deliver the crafted blob transaction to the target node via the p2p transaction propagation protocol (eth protocol NewPooledTransactionHashes / PooledTransactions messages).
  5. Trigger crash: The vulnerable node attempts KZG proof verification, fails to handle the error correctly, and crashes or shuts down, achieving denial of service.

Indicators of compromise

  • Network: Unexpected disconnection of geth node from the p2p network (port 30303); repeated inbound connections from unknown peers delivering blob transactions shortly before node crash.
  • Logs: Geth log entries showing KZG verification errors or panics in transaction processing; log lines referencing invalid blob proof or unhandled errors in eth/fetcher/tx_fetcher.go prior to shutdown; sudden absence of log output indicating process termination.
  • Process: Unexpected termination of the geth process without a graceful shutdown signal; process restart events if a supervisor (e.g., systemd) is configured to restart the service automatically.
  • File System: Core dump files generated by a geth process crash, if core dumps are enabled on the host system.

Mitigation and workarounds

The primary remediation is to upgrade go-ethereum (geth) to version 1.16.8 or later, which contains the fix merging the dos-fixes branch (Patch Commit, Github Advisory). As a temporary workaround while patching is underway, operators can implement network-level access controls (e.g., firewall rules or trusted peer lists via --netrestrict) to restrict p2p connections to known, trusted peers, reducing the attack surface. No configuration-only fix is available that fully mitigates the vulnerability without upgrading.

Community reactions

The vulnerability was reported through the Ethereum Foundation Bug Bounty Program, indicating responsible disclosure practices were followed (Github Advisory). Red Hat acknowledged the CVE in their security tracking system shortly after disclosure (Red Hat CVE). A security blog post specifically covering the DoS via malicious p2p message was published at infinitsec.net, and the vulnerability received coverage in a CISA weekly vulnerability summary for the week of January 12, 2026. Community discussion was noted on Bluesky and vulnerability aggregator platforms.

Additional resources


SourceThis report was generated using AI

Related Ethereum Geth vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-26314HIGH8.7
  • Ethereum Geth logoEthereum Geth
  • cpe:2.3:a:ethereum:go_ethereum
NoYesFeb 19, 2026
CVE-2026-22868HIGH7.1
  • Ethereum Geth logoEthereum Geth
  • cpe:2.3:a:ethereum:go_ethereum
NoYesJan 13, 2026
CVE-2026-22862HIGH7.1
  • Ethereum Geth logoEthereum Geth
  • cpe:2.3:a:ethereum:go_ethereum
NoYesJan 13, 2026
CVE-2026-26315MEDIUM6.9
  • Ethereum Geth logoEthereum Geth
  • cpe:2.3:a:ethereum:go_ethereum
NoYesFeb 19, 2026
CVE-2026-26313MEDIUM6.9
  • Ethereum Geth logoEthereum Geth
  • cpe:2.3:a:ethereum:go_ethereum
NoYesFeb 19, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management