CLIENT SECURITY
Geth (go-ethereum) is an Ethereum execution client. The tables below map its published security issues to versions, from three sources: the 17 advisories published on the ethereum/go-ethereum GitHub repository, the 26 ids for go-ethereum in the GitHub advisory database, and the 12 entries in the Geth team's own vulnerabilities.json file. The three sources disagree on severity and coverage; the merged table shows both severity labels side by side.
On this page Version lookup Method Key findings Merged table All releases Fix ladder If you run a node Limitations
Enter a Geth version such as 1.16.8, v1.13.15 or a client string like Geth/v1.16.8-stable/linux-amd64/go1.22.1.
The lookup reads the version number only. A suffix such as -stable or -unstable is ignored, and so is the rest of a client string after the version. For a client string with a node name, such as Geth/mynode/v1.16.8-stable/linux-amd64/go1.22.1, the name is skipped.
We pulled the 17 advisories from the GitHub Security Advisory API for the ethereum/go-ethereum repository, the 26 ids from the GitHub advisory database for ecosystem go and package github.com/ethereum/go-ethereum, and the 12 entries from the Geth site's vulnerabilities.json file. All three were fetched 2026-11-08. A second fetch on 2026-11-08 at 03:34 UTC gave the same records, and the release dates come from the Geth releases list on GitHub. Ranges, severities and patched versions are shown verbatim from each record. The per-release table applies the affected version range of each of the 17 repository advisories (for example ">= 1.10.0, < 1.10.8") to each release. The lookup uses the ranges of the 26 GitHub advisory database ids instead.
One row per GitHub advisory database id, plus the one vulnerabilities.json entry that appears in neither GitHub source (GETH-2021-01). "Repository range" and "maintainer severity" come from the ethereum/go-ethereum repository advisory record; "database range" and "database severity" come from the GitHub advisory database record. Seven ids show a different severity in the database than in the repository record. Six ids list no patched version in the GitHub database.
| GHSA id | CVE | Repository range | Maintainer severity | Database range | Database severity | First patched | GETH uid | GETH severity | GETH introduced | GETH fixed | What it was |
|---|---|---|---|---|---|---|---|---|---|---|---|
| GHSA-m6j8-rg6r-7mv8 | CVE-2026-26315 | <= 1.16.8 | medium | <= 1.16.8 | medium | 1.16.9 | — | — | — | — | Improper ECIES Public Key Validation in RLPx Handshake |
| GHSA-2gjw-fg97-vg3r | CVE-2026-26314 | <= 1.16.8 | high | <= 1.16.8 | high | 1.16.9 | — | — | — | — | DoS via malicious p2p message |
| GHSA-689v-6xwf-5jf3 | CVE-2026-26313 | < 1.17.0 | medium | < 1.17.0 | medium | 1.17.0 | — | — | — | — | DoS via malicious p2p message |
| GHSA-mq3p-rrmp-79jg | CVE-2026-22868 | <= 1.16.7 | medium | <= 1.16.7 | high | 1.16.8 | — | — | — | — | DoS via malicious p2p message |
| GHSA-mr7q-c9w9-wh4h | CVE-2026-22862 | <= 1.16.7 | high | <= 1.16.7 | high | 1.16.8 | — | — | — | — | DoS via malicious p2p message |
| GHSA-q26p-9cq4-7fc2 | CVE-2025-24883 | >= 1.14.0, < 1.14.13 | high | >= 1.14.0, < 1.14.13 | medium | 1.14.13 | — | — | — | — | DoS via malicious p2p message |
| GHSA-4xc9-8hmq-j652 | CVE-2024-32972 | < 1.13.15 | high | < 1.13.15 | high | 1.13.15 | GETH-2024-01 | High | v1.10.0 | v1.13.15 | DoS via malicious p2p message |
| GHSA-v9jh-j8px-98vq | CVE-2023-42319 | not in repository advisories | — | <= 1.13.4 | high | no patched version listed | — | — | — | — | go-ethereum vulnerable to denial of service via crafted GraphQL query |
| GHSA-ppjg-v974-84cm | CVE-2023-40591 | >= 1.10.0, < 1.12.1 | high | < 1.12.1-stable | high | 1.12.1-stable | GETH-2023-01 | High | v1.10.0 | v1.12.1 | DoS via malicious p2p message |
| GHSA-rqmg-hrg4-fm69 | CVE-2022-37450 | not in repository advisories | — | <= 1.10.21 | medium | no patched version listed | — | — | — | — | Go Ethereum allows attackers to use manipulation of time-difference values to achieve replacement of main-chain blocks |
| GHSA-wjxw-gh3m-7pm5 | CVE-2022-29177 | < 1.10.17 | low | < 1.10.17 | medium | 1.10.17 | GETH-2022-01 | Low | v1.10.0 | v1.10.17 | DoS via malicious p2p message |
| GHSA-p5gc-957x-gfw9 | CVE-2018-12018 | not in repository advisories | — | < 1.8.11 | high | 1.8.11 | — | — | — | — | Go Ethereum LES protocol implementation vulnerable to Denial of Service |
| GHSA-vrcc-g6vj-mh5w | CVE-2021-42219 | not in repository advisories | — | <= 1.10.9 | high | no patched version listed | — | — | — | — | Denial of service in go-ethereum |
| GHSA-pvx3-gm3c-gmpr | CVE-2022-23327 | not in repository advisories | — | <= 1.10.12 | high | no patched version listed | — | — | — | — | Denial of Service in Go-Ethereum |
| GHSA-vmf7-hmh6-vv57 | CVE-2022-23328 | not in repository advisories | — | <= 1.10.16 | high | no patched version listed | — | — | — | — | Denial of Service in Go-Ethereum |
| GHSA-5m8f-chrv-7rw5 | CVE-2021-43668 | not in repository advisories | — | <= 1.10.9 | medium | no patched version listed | — | — | — | — | Denial of Service in Go-Ethereum |
| GHSA-59hh-656j-3p7v | CVE-2021-41173 | < 1.10.9 | medium | < 1.10.9 | medium | 1.10.9 | GETH-2021-03 | Medium | v1.10.0 | v1.10.9 | DoS via malicious snap/1 request |
| GHSA-9856-9gg9-qcmq | CVE-2021-39137 | >= 1.10.0, < 1.10.8 | high | >= 1.10.0, < 1.10.8 | medium | 1.10.8 | GETH-2021-02 | High | v1.10.0 | v1.10.8 | RETURNDATA corruption via datacopy |
| GHSA-9h4h-8w5p-f28w | CVE-2018-19184 | not in repository advisories | — | < 1.8.14 | high | 1.8.14 | — | — | — | — | Go Ethereum Denial of Service |
| GHSA-xw37-57qp-9mm4 | CVE-2020-26265 | >= v1.9.4, < 1.9.20 | high | >= 1.9.4, < 1.9.20 | medium | 1.9.20 | GETH-2020-06 | High | v1.9.4 | v1.9.20 | Consensus flaw during block processing |
| GHSA-r33q-22hv-j29q | CVE-2020-26264 | < 1.9.25 | medium | < 1.9.25 | medium | 1.9.25 | GETH-2020-05 | Medium | v1.8.0 | v1.9.25 | LES Server DoS via GetProofsV2 |
| GHSA-m6gx-rhvj-fh52 | — | < 1.9.24 | critical | < 1.9.24 | critical | 1.9.24 | GETH-2020-02 | Critical | v0.0.0 | v1.9.24 | Denial of service due to Go CVE-2020-28362 |
| GHSA-jm5c-rv3w-w83m | CVE-2020-26242 | >= 1.9.16, < 1.9.18 | high | >= 1.9.16, < 1.9.18 | medium | 1.9.18 | GETH-2020-04 | Critical | v1.9.16 | v1.9.18 | Denial of service via `MulMod` |
| GHSA-69v6-xc2j-r2jf | CVE-2020-26241 | >= 1.9.7, < 1.9.17 | high | >= 1.9.7, < 1.9.17 | medium | 1.9.17 | GETH-2020-03 | Critical | v1.9.7 | v1.9.17 | Shallow copy in the 0x4 precompile could lead to EVM memory corruption |
| GHSA-v592-xf75-856p | CVE-2020-26240 | < 1.9.24 | medium | < 1.9.24 | medium | 1.9.24 | GETH-2020-01 | Medium | v1.6.0 | v1.9.24 | Ethash DAG generation bug can cause miners to create invalid PoW |
| GHSA-qr2j-wrhx-4829 | CVE-2018-16733 | not in repository advisories | — | < 1.8.14 | high | 1.8.14 | — | — | — | — | Go Ethereum Improper Input Validation |
| — | — | not in either GitHub source | — | not in either GitHub source | — | — | GETH-2021-01 | High | v1.10.1 | v1.10.6 | The client is not ready for the 'London' technical upgrade, and will deviate from the canonical chain when the London upgrade occurs (at block '12965000' around August 4, 2021. |
Notes on individual ids. GHSA-v9jh-j8px-98vq (CVE-2023-42319, GraphQL DoS): the record adds this note (the inner quotation mark is not closed in the record): NOTE: the vendor's position is that the "graphql endpoint [is not] designed to withstand attacks by hostile clients, nor handle huge amounts of clients/traffic.
The record lists no patched version. Six ids (GHSA-v9jh, GHSA-rqmg, GHSA-vrcc, GHSA-pvx3, GHSA-vmf7 and GHSA-5m8f) have no patched version in the GitHub database. Their ranges end at an upper bound such as <= 1.10.21. This means that the database lists no fix. It does not mean that current versions are affected. This page does not call these issues confirmed. GHSA-m6gx-rhvj-fh52 (denial of service due to Go CVE-2020-28362): whether a build is exposed depends on the Go version that built Geth, because the bug is in Go. Both GitHub records rate it critical. The GitHub database record has no CVE id. The repository record and vulnerabilities.json (GETH-2020-02) give CVE-2020-28362. GETH-2021-01 (not ready for London upgrade) appears only in vulnerabilities.json. GitHub has no advisory record for it.
The Geth disclosures page says: "As of version 1.9.25 , Geth has a built-in command to check whether it is affected by any publicly disclosed vulnerability, using the command geth version-check ." That command fetches the vulnerabilities.json file. The file stops at GETH-2024-01 (published 2024-05-06). It does not list the six repository advisories published after it, one in 2025 (GHSA-q26p) and five in 2026. So geth version-check alone does not report them.
125 stable releases from v1.9.0 to v1.17.10, checked against the 17 repository advisory ranges. "First in line" marks the first release (x.y.0) of each minor line. The fix ladder below names the newest release of each line. The table starts at v1.9.0. Older releases are not listed here; the lookup above accepts them. The nine global-only ids are not counted in this table.
| Release | Published | Repository advisories in range (of 17) |
|---|---|---|
v1.9.0 first in line | 2019-07-10 | 1 critical 3 high 6 medium 1 low |
v1.9.1 | 2019-07-24 | 1 critical 3 high 6 medium 1 low |
v1.9.2 | 2019-08-13 | 1 critical 3 high 6 medium 1 low |
v1.9.3 | 2019-09-03 | 1 critical 3 high 6 medium 1 low |
v1.9.4 | 2019-09-19 | 1 critical 4 high 6 medium 1 low |
v1.9.5 | 2019-09-20 | 1 critical 4 high 6 medium 1 low |
v1.9.6 | 2019-10-03 | 1 critical 4 high 6 medium 1 low |
v1.9.7 | 2019-11-07 | 1 critical 5 high 6 medium 1 low |
v1.9.8 | 2019-11-26 | 1 critical 5 high 6 medium 1 low |
v1.9.9 | 2019-12-06 | 1 critical 5 high 6 medium 1 low |
v1.9.10 | 2020-01-20 | 1 critical 5 high 6 medium 1 low |
v1.9.11 | 2020-02-18 | 1 critical 5 high 6 medium 1 low |
v1.9.12 | 2020-03-16 | 1 critical 5 high 6 medium 1 low |
v1.9.13 | 2020-04-16 | 1 critical 5 high 6 medium 1 low |
v1.9.14 | 2020-05-13 | 1 critical 5 high 6 medium 1 low |
v1.9.15 | 2020-06-08 | 1 critical 5 high 6 medium 1 low |
v1.9.16 | 2020-07-10 | 1 critical 6 high 6 medium 1 low |
v1.9.17 | 2020-07-20 | 1 critical 5 high 6 medium 1 low |
v1.9.18 | 2020-07-27 | 1 critical 4 high 6 medium 1 low |
v1.9.19 | 2020-08-11 | 1 critical 4 high 6 medium 1 low |
v1.9.20 | 2020-08-25 | 1 critical 3 high 6 medium 1 low |
v1.9.21 | 2020-09-09 | 1 critical 3 high 6 medium 1 low |
v1.9.22 | 2020-09-28 | 1 critical 3 high 6 medium 1 low |
v1.9.23 | 2020-10-15 | 1 critical 3 high 6 medium 1 low |
v1.9.24 | 2020-11-12 | 3 high 5 medium 1 low |
v1.9.25 | 2020-12-11 | 3 high 4 medium 1 low |
v1.10.0 first in line | 2021-03-03 | 5 high 4 medium 1 low |
v1.10.1 | 2021-03-08 | 5 high 4 medium 1 low |
v1.10.2 | 2021-04-08 | 5 high 4 medium 1 low |
v1.10.3 | 2021-05-05 | 5 high 4 medium 1 low |
v1.10.4 | 2021-06-17 | 5 high 4 medium 1 low |
v1.10.5 | 2021-07-14 | 5 high 4 medium 1 low |
v1.10.6 | 2021-07-22 | 5 high 4 medium 1 low |
v1.10.7 | 2021-08-12 | 5 high 4 medium 1 low |
v1.10.8 | 2021-08-24 | 4 high 4 medium 1 low |
v1.10.9 | 2021-09-29 | 4 high 3 medium 1 low |
v1.10.10 | 2021-10-15 | 4 high 3 medium 1 low |
v1.10.11 | 2021-10-20 | 4 high 3 medium 1 low |
v1.10.12 | 2021-11-08 | 4 high 3 medium 1 low |
v1.10.13 | 2021-11-24 | 4 high 3 medium 1 low |
v1.10.14 | 2021-12-23 | 4 high 3 medium 1 low |
v1.10.15 | 2022-01-05 | 4 high 3 medium 1 low |
v1.10.16 | 2022-02-16 | 4 high 3 medium 1 low |
v1.10.17 | 2022-03-29 | 4 high 3 medium |
v1.10.18 | 2022-05-25 | 4 high 3 medium |
v1.10.19 | 2022-06-15 | 4 high 3 medium |
v1.10.20 | 2022-06-29 | 4 high 3 medium |
v1.10.21 | 2022-07-27 | 4 high 3 medium |
v1.10.22 | 2022-08-22 | 4 high 3 medium |
v1.10.23 | 2022-08-24 | 4 high 3 medium |
v1.10.24 | 2022-09-14 | 4 high 3 medium |
v1.10.25 | 2022-09-15 | 4 high 3 medium |
v1.10.26 | 2022-11-03 | 4 high 3 medium |
v1.11.0 first in line | 2023-02-15 | 4 high 3 medium |
v1.11.1 | 2023-02-16 | 4 high 3 medium |
v1.11.2 | 2023-02-22 | 4 high 3 medium |
v1.11.3 | 2023-03-07 | 4 high 3 medium |
v1.11.4 | 2023-03-10 | 4 high 3 medium |
v1.11.5 | 2023-03-21 | 4 high 3 medium |
v1.11.6 | 2023-04-20 | 4 high 3 medium |
v1.12.0 first in line | 2023-05-25 | 4 high 3 medium |
v1.12.1 | 2023-08-10 | 3 high 3 medium |
v1.12.2 | 2023-08-12 | 3 high 3 medium |
v1.13.0 first in line | 2023-09-12 | 3 high 3 medium |
v1.13.1 | 2023-09-17 | 3 high 3 medium |
v1.13.2 | 2023-09-28 | 3 high 3 medium |
v1.13.3 | 2023-10-12 | 3 high 3 medium |
v1.13.4 | 2023-10-17 | 3 high 3 medium |
v1.13.5 | 2023-11-14 | 3 high 3 medium |
v1.13.6 | 2023-12-18 | 3 high 3 medium |
v1.13.7 | 2023-12-19 | 3 high 3 medium |
v1.13.8 | 2023-12-22 | 3 high 3 medium |
v1.13.9 | 2024-01-10 | 3 high 3 medium |
v1.13.10 | 2024-01-11 | 3 high 3 medium |
v1.13.11 | 2024-01-24 | 3 high 3 medium |
v1.13.12 | 2024-02-09 | 3 high 3 medium |
v1.13.13 | 2024-02-21 | 3 high 3 medium |
v1.13.14 | 2024-02-27 | 3 high 3 medium |
v1.13.15 | 2024-04-17 | 2 high 3 medium |
v1.14.0 first in line | 2024-04-24 | 3 high 3 medium |
v1.14.2 | 2024-05-08 | 3 high 3 medium |
v1.14.3 | 2024-05-09 | 3 high 3 medium |
v1.14.4 | 2024-06-05 | 3 high 3 medium |
v1.14.5 | 2024-06-06 | 3 high 3 medium |
v1.14.6 | 2024-07-02 | 3 high 3 medium |
v1.14.7 | 2024-07-11 | 3 high 3 medium |
v1.14.8 | 2024-08-12 | 3 high 3 medium |
v1.14.9 | 2024-09-18 | 3 high 3 medium |
v1.14.10 | 2024-09-27 | 3 high 3 medium |
v1.14.11 | 2024-10-01 | 3 high 3 medium |
v1.14.12 | 2024-11-19 | 3 high 3 medium |
v1.14.13 | 2025-01-30 | 2 high 3 medium |
v1.15.0 first in line | 2025-02-06 | 2 high 3 medium |
v1.15.1 | 2025-02-13 | 2 high 3 medium |
v1.15.2 | 2025-02-17 | 2 high 3 medium |
v1.15.3 | 2025-02-25 | 2 high 3 medium |
v1.15.4 | 2025-03-01 | 2 high 3 medium |
v1.15.5 | 2025-03-05 | 2 high 3 medium |
v1.15.6 | 2025-03-25 | 2 high 3 medium |
v1.15.7 | 2025-03-31 | 2 high 3 medium |
v1.15.8 | 2025-04-11 | 2 high 3 medium |
v1.15.9 | 2025-04-21 | 2 high 3 medium |
v1.15.10 | 2025-04-25 | 2 high 3 medium |
v1.15.11 | 2025-05-05 | 2 high 3 medium |
v1.16.0 first in line | 2025-06-26 | 2 high 3 medium |
v1.16.1 | 2025-07-02 | 2 high 3 medium |
v1.16.2 | 2025-08-04 | 2 high 3 medium |
v1.16.3 | 2025-09-02 | 2 high 3 medium |
v1.16.4 | 2025-09-26 | 2 high 3 medium |
v1.16.5 | 2025-10-16 | 2 high 3 medium |
v1.16.6 | 2025-11-03 | 2 high 3 medium |
v1.16.7 | 2025-11-04 | 2 high 3 medium |
v1.16.8 | 2026-01-13 | 1 high 2 medium |
v1.16.9 | 2026-02-17 | 1 medium |
v1.17.0 first in line | 2026-02-17 | 0 in range |
v1.17.1 | 2026-03-03 | 0 in range |
v1.17.2 | 2026-03-30 | 0 in range |
v1.17.3 | 2026-05-11 | 0 in range |
v1.17.4 | 2026-06-22 | 0 in range |
v1.17.5 | 2026-07-27 | 0 in range |
v1.17.6 | 2026-09-23 | 0 in range |
v1.17.7 | 2026-09-30 | 0 in range |
v1.17.8 | 2026-10-08 | 0 in range |
v1.17.9 | 2026-10-21 | 0 in range |
v1.17.10 | 2026-10-23 | 0 in range |
No release of the lines v1.9.x to v1.16.x is clear of the 17 repository advisories. The newest release of each of these lines is still in the range of at least one advisory. The first clear release is v1.17.0.
| Minor line | Last vulnerable release | First release clear of all 17 | Repository advisories affecting this line |
|---|---|---|---|
| v1.9.x | v1.9.25 | none in this line | 14 |
| v1.10.x | v1.10.26 | none in this line | 10 |
| v1.11.x | v1.11.6 | none in this line | 7 |
| v1.12.x | v1.12.2 | none in this line | 7 |
| v1.13.x | v1.13.15 | none in this line | 6 |
| v1.14.x | v1.14.13 | none in this line | 6 |
| v1.15.x | v1.15.11 | none in this line | 5 |
| v1.16.x | v1.16.9 | none in this line | 5 |
| v1.17.x | none | v1.17.0 | 0 |
The Geth SECURITY.md file says: "We recommend using the most recently released version." On 2026-11-08 that was v1.17.10 (published 2026-10-23). If a specific fork, tooling pin or chain requirement forces an older line, there is no release in that line that clears all 17 repository advisories; check the merged table for what still applies. Four of the five repository advisories published in 2026 have the title "DoS via malicious p2p message". The fifth concerns ECIES public key validation in the RLPx handshake.
This page reflects the three sources as fetched on 2026-11-08. The Geth disclosure policy says: "If we silently fix a vulnerability and include the fix in release X , then, After 4-8 weeks, we will disclose that X contained a security-fix. After an additional 4-8 weeks, we will publish the details about the vulnerability." So a current release can contain a fix that no advisory lists yet. The per-release table counts, for each release, the repository advisories whose range includes that exact release. The three sources can give different ranges for the same issue. For GHSA-4xc9-8hmq-j652, vulnerabilities.json (GETH-2024-01) says introduced v1.10.0 and fixed v1.13.15, while the GitHub records say < 1.13.15 with no lower bound. The lookup and the tables use the GitHub ranges and show the vulnerabilities.json range in its own columns.
Related: Solidity compiler bugs by version, Vyper compiler bugs by version, OpenZeppelin Contracts vulnerabilities by version.