Skip to main content

Go Toolchain CVE-2026-111943

| EUVDEUVD-2026-106926 MEDIUM
2026-10-20
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain cert chaining to distrusted intermediate
  2. Delivery
    Gain MITM network position
  3. Exploit
    Present forged certificate to Go TLS client
  4. Execution
    Chain validated by unpatched crypto/x509
  5. Impact
    Intercept or tamper TLS traffic

Vulnerability Assessment

Exploitation Conditions

Applies to applications built with affected Go versions (prior to 1.27.3 and 1.26.10) that rely on crypto/x509 Verify / crypto/tls to validate X.509 certificate chains. Concrete prerequisite for abuse: an attacker must possess a certificate that chains through one of the specific distrusted intermediate CA certificates and must hold a man-in-the-middle position to present it to the Go client. LIMITING FACTORS: exploitation is bounded to the narrow, specific set of intermediates in question (not all CAs); it requires both a mis-issued/attacker-held certificate from that CA lineage and network interception capability; applications using a custom verifier or pinning may be unaffected; the fix is purely a client-side trust filter, so only updating the Go toolchain and rebuilding mitigates it.

Impact

This is a defensive trust-store change rather than a code-execution flaw: Go 1.27.3 and 1.26.10 make crypto/x509 Verify filter out certificate chains that pass through a small set of intermediate CA certificates distrusted 'due to specific security concerns around their operation.' No CVSS vector, CWE, EPSS, KEV, or POC data is provided, so a quantitative severity signal is entirely absent. By SSVC-style reasoning, exploitation status is 'no public exploit identified at time of analysis' and the Go issue is labeled a Security release-blocker tracked on an URGENT internal track (b/575512169), which signals vendor-assessed importance but NOT confirmed in-the-wild abuse. The real-world risk is conditional: the danger is not in Go itself but in the possibility that the distrusted intermediates could issue or have issued certificates usable to impersonate TLS endpoints, which Go-based clients would previously have accepted. Because successful abuse requires both a certificate chaining to one of the specific intermediates AND a man-in-the-middle position, this is a targeted-prerequisite issue rather than a mass-exploitable one. CONFLICT/GAP TO NOTE: no CVSS was published, so any severity here is inferred; the specific CA and intermediates are not named in the provided data, so the precise exposure cannot be independently confirmed - verify against the Go release notes and go.dev/issue/82345.

Exploit ScenarioDerived

An attacker who controls (or coerces) one of the distrusted intermediate CAs obtains a mis-issued certificate for a target domain, then positions themselves as a man-in-the-middle (e.g., on a shared or compromised network) against a Go application that uses crypto/tls/crypto/x509 to validate server certificates. On unpatched Go (prior to 1.27.3/1.26.10) the chain validates and the client trusts the forged endpoint, enabling interception or tampering of the TLS session. No public exploit code is identified at time of analysis.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 20, 2026

Certificate chain validation in Go Toolchain 1.26.x before 1.26.10 and 1.27.x before 1.27.3 can return chains that include a small set of intermediate CA certificates the Go security team has decided to distrust, so an unauthenticated remote attacker who can intercept TLS traffic and present a certificate chaining through one of those intermediates could impersonate a trusted endpoint. This is a defensive trust-store and verification change in crypto/x509 Verify rather than a code-execution flaw; the assessed vector is CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N, and no public exploit, KEV entry, EPSS score, or CWE is provided. Upgrade to Go 1.27.3 or 1.26.10 and rebuild to apply the chain filter.

RemediationAI

Vendor-released patch: Go 1.27.3 and Go 1.26.10. Upgrade the Go toolchain to one of those versions, rebuild every affected binary, and redeploy so the crypto/x509 chain filter is compiled into the application; source-level fixes alone do not protect already-built binaries. If an immediate rebuild is not possible, implement an application-level certificate verifier, such as a tls.Config VerifyConnection or VerifyPeerCertificate callback, that rejects chains containing the specific distrusted intermediates identified in Go issue 82345, or enforce certificate pinning or an allowlist of expected issuers; the trade-off is added maintenance burden, possible breakage of legitimate chains, and bypass risk if any code path skips the custom verifier. Reducing man-in-the-middle exposure through network segmentation and TLS interception controls lowers practical risk but does not repair the client-side trust decision. Advisory and tracking references are https://seclists.org/oss-sec/2026/q4/261 and https://go.dev/issue/82345.

Affected VersionsENISA

crypto/x509 1.27.0-0 <1.27.3
crypto/x509 0 <1.26.10

Affected Packages

cargo rustls-webpki fix: 0.103.16, 0.104.0-alpha.8
cargo webpki-root-certs fix: 0.26.11, 1.0.10
cargo webpki-roots fix: 0.26.11, 1.0.10
go stdlib fix: 1.26.10, 1.27.3
euvd crypto_x509 fix: 1.26.10, 1.27.3

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 5 packages in cargo, go, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The affected component is Go's crypto/x509 package, specifically the Verify path used by applications and by crypto/tls for default server certificate validation. X.509 chain building starts from a leaf certificate, follows issuer links through intermediate CA certificates, and terminates at a trusted root; if an intermediate in that path is not explicitly rejected, Verify can return a chain the application may treat as trusted. Go 1.27.3 and 1.26.10 add a filter that removes chains containing a specific small set of intermediate CAs that the Go security team distrusts due to operational security concerns. The root cause is therefore a trust-store policy and chain-validation gap, not memory corruption or a parsing flaw, and no CWE is assigned in the supplied data. Abuse requires an attacker to hold a certificate that chains through one of the named intermediates and to be positioned to intercept traffic, which matches the high-complexity, network-vector assessment. Applications using custom verification, certificate pinning, or non-default trust stores may not be affected in the same way.

Know when the next one hits your stack

  • 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

vuln.today AI 7.4 HIGH

Network-facing TLS trust flaw (AV:N, PR:N, UI:N) but requires a certificate from the specific CA plus a MITM position (AC:H); interception breaks confidentiality and integrity (C:H/I:H), no availability impact.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N
4.0 AV:N/AC:H/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N

Description PRE-NVD

Disclosed via oss-security. NVD scoring and full description are pending.

Threat Intelligence Overview

EPSS Score
0.1%
Top 97% exploitable
Prevalence
High
Go stdlib underpins vast cloud/container tooling; crypto/x509 used by most Go TLS clients
Exploit
POC
Public exploit code exists
Social Media
5
Sightings
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC Yes
EPSS 0.1%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

Priority Score

20
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: 0
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy