GHSA-cgx4-3g64-rvr7
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessLure victim into malicious Go project
-
DeliveryVictim configures attacker-controlled GOMODPROXY
-
ExploitBogus toolchain go.sum bypasses checksum
-
ExecutionTampered Go toolchain downloaded and executed
-
ImpactArbitrary code execution on developer host
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A08:2025 - Software or Data Integrity Failures
ASVS 5.0
V15 - Secure Coding and Architecture Integrity verification
|
| Exploitation Conditions | Exploitation requires two attacker-controlled preconditions that the victim must opt into: (1) the victim operates inside a malicious Go project whose go.sum contains a forged golang.org/toolchain checksum entry, and (2) the victim chooses to use an attacker-operated GOMODPROXY/GOPROXY module proxy. Limiting factors are significant: the attack is local (AV:L) and requires user interaction (UI:R) - the developer must run go tooling within the crafted project while pointed at the malicious proxy - so a trusted-input/social-engineering foothold is needed and default configurations using the public proxy with correct sums are not affected. Impact is bounded to hosts running vulnerable cmd/go versions (1.27.0 before 1.27.2, and before 1.26.9); patched toolchains force golang.org/toolchain to fetch the canonical checksum from the network. |
| Impact | Signals are consistent and point to a real-but-conditional risk rather than a mass-exploitation emergency. The CVSS 3.1 vector (AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H, 7.8 HIGH) correctly reflects a local attack requiring user interaction: although PR:N indicates no authentication to the go tool, UI:R captures the key gate - the victim must choose to operate inside a malicious Go project AND opt into an attacker-controlled GOMODPROXY. This is effectively a supply-chain / social-engineering integrity bypass (CWE-354, improper validation of integrity check), not a remotely reachable service flaw. EPSS is very low (0.13%, 2nd percentile) and there is no CISA KEV listing and no public exploit identified at time of analysis, so there is no evidence of widespread or automatable exploitation; the attack requires a deliberately crafted project plus a chosen malicious proxy, making opportunistic mass exploitation implausible. No SSVC decision was provided in the input. The signals do not conflict: a HIGH CVSS driven by full C/I/A impact coexists cleanly with low EPSS because the local, interaction-gated, attacker-must-be-trusted-already preconditions sharply narrow real-world applicability. Prioritize patching on developer and CI hosts as hygiene, but this is not a drop-everything internet-facing issue. |
| Exploit ScenarioDerived | An attacker publishes or convinces a developer to clone a malicious Go module whose go.sum contains a bogus golang.org/toolchain checksum entry, and persuades the victim to configure GOMODPROXY/GOPROXY to an attacker-controlled proxy. When the victim runs go commands, the forged go.sum entry is accepted and the toolchain is fetched from the malicious proxy, bypassing the intended canonical checksum and allowing a tampered Go toolchain to execute on the victim's machine. No public exploit is identified at time of analysis; the attack hinges on social-engineering the victim into the malicious project and proxy. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv2 – Oct 15, 2026
Checksum verification bypass in the Go toolchain (cmd/go) versions 1.27.0 before 1.27.2 and before 1.26.9 allows a malicious Go project with a forged golang.org/toolchain go.sum entry, combined with a user-selected attacker-controlled GOMODPROXY, to substitute a tampered toolchain that cmd/go would otherwise reject. Exploitation requires local access and user interaction (CVSS 7.8, AV:L/UI:R) and two attacker-controlled preconditions the victim must opt into: operating inside the crafted project and using the malicious proxy. No public exploit code identified at time of analysis, and EPSS is 0.13% (2nd percentile), indicating low predicted exploitation likelihood.
Earlier versions of this analysis (1)
The Go toolchain's cmd/go command can be tricked into bypassing checksum-database verification for the golang.org/toolchain module, allowing a malicious GOMODPROXY to substitute an arbitrary toolchain module. Exploitation requires the victim to open a malicious Go project containing a bogus golang.org/toolchain go.sum entry and to elect to use an attacker-controlled module proxy; both are opt-in trust decisions by the developer, so this is a supply-chain integrity weakness rather than a remotely triggerable flaw. No public exploit code has been identified at time of analysis, and the issue is fixed in Go 1.27.2 and Go 1.26.9.
RemediationAI
Vendor-released patches are available: upgrade to Go 1.27.2 or Go 1.26.9, which force golang.org/toolchain to always fetch the canonical checksum from the network. If upgrading is not immediately possible, set the environment variable GOTOOLCHAIN=local to prevent automatic toolchain downloads based on go.mod directives; this blocks the attack vector but has the trade-off of disabling automatic use of newer toolchains specified by projects. Additionally, ensure GOPROXY and GOSUMDB point to trusted servers (the defaults https://proxy.golang.org and sum.golang.org are safe); avoid using untrusted or attacker-operated proxies. Do not run go build or go test in untrusted Go projects without a patched toolchain. Review go.sum files for unexpected golang.org/toolchain entries, though this is not a reliable workaround because a malicious project can include a forged entry. Consult the Go advisory at https://go.dev/issue/81857 and the vulnerability entry at https://pkg.go.dev/vuln/GO-2026-6602 for full details. No vendor-released patch is missing; the fix is available.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in go, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The vulnerability is an instance of CWE-354 (Improper Validation of Integrity Check Value) in Go's cmd/go toolchain acquisition logic. Go supports automatic toolchain downloads via the pseudo-module golang.org/toolchain, where the selected version is recorded in go.mod and its checksum should be verified against go.sum and the checksum database (sum.golang.org). A crafted go.sum file can contain a bogus checksum entry for golang.org/toolchain, and when combined with a malicious GOPROXY/GOMODPROXY selected by the user, cmd/go could trust the forged checksum instead of fetching the canonical value from the network. The fix ensures that golang.org/toolchain always contacts the network to obtain the canonical checksum, bypassing any local go.sum entry. Affected components are cmd/go in Go toolchain versions 1.27.0-0 through before 1.27.2, and versions before 1.26.9, as documented in EUVD-2026-95418 and Go advisory GO-2026-6602.
Know when Go gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Local supply-chain integrity bypass needing no auth to the go tool (PR:N) but requiring the victim to run tooling in a malicious project via a chosen malicious proxy (UI:R); toolchain tampering yields full C/I/A.
Primary rating from Vendor (CNA).
CVSS VectorVendor
Lifecycle Timeline
3Description PRE-NVD
Executive ViewAI
Development and CI/CD teams relying on the Go toolchain face a supply-chain integrity risk that could allow tampered builds if specific opt-in conditions are met. The issue demands attention from engineering and security leadership because compromised builds can propagate untrusted code into products, though exploitation requires local access, user interaction, and attacker-controlled preconditions, and no public exploit identified at time of analysis. Patching developer and build environments to Go 1.27.2 or 1.26.9 should be prioritized to maintain software supply-chain trust.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Denial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour
The net/http package in Go through 1.6 does not attempt to address RFC 3875 section 4.1.18 namespace conflicts and there
Critical certificate validation bypass in Go crypto/tls during session resumption. If ClientCAs or RootCAs fields are mu
net/url in Go before 1.11.13 and 1.12.x before 1.12.8 mishandles malformed hosts in URLs, leading to an authorization by
Casdoor through 4.4.0 exposes its instance-wide built-in JWT signing private key unmasked through the /api/get-certs and
Host header injection in Nezha 2.2.3's OAuth2 redirect endpoint (/api/v1/oauth2/{provider}) allows an unauthenticated re
Session cross-wiring in SUSE NeuVector before 5.6.1 allows an unauthenticated remote attacker to obtain another user's a
Unauthenticated path traversal in Uber Kraken through 0.1.29 allows remote attackers to read files outside the configure
The "go get" implementation in Go 1.9.4, when the -insecure command-line option is used, does not validate the import pa
Denial of service in Temporal Server allows an authenticated caller holding at least namespace read permission to crash
Account takeover in Klever-Go's KleverUpdateAccountPermission built-in (all versions prior to 1.7.20) allows an attacker
Maliciously crafted on-chain account names processed by Klever-Go prior to 1.7.20 are spliced into Elasticsearch _bulk r
EUVD-2026-95418
NVD
CVE.org
EPSS
VulDB
Exploit-DB