Impact
Go’s crypto/x509 certificate verification routine was found to allow the use of certain compromised intermediate certificates in environments where the system root store is not updated. The vulnerability is a Trust Anchor Compromise weakness (CWE‑295). The description states that when Verify is called with a chain that includes one of the known untrusted intermediates, the library returns an error. Based on the description, it is inferred that older code paths or misconfigured systems may still accept such chains, potentially allowing attackers to forge TLS connections. It is also inferred that an attacker could perform a man‑in‑the‑middle attack by presenting a certificate chain with a revoked or compromised intermediate, thereby gaining access to confidential data or injecting malicious content.
Affected Systems
The issue affects the Go standard library’s crypto/x509 package on all platforms that use Go’s default root certificate store. The particular vendor identified is the Go standard library; affected versions are those prior to the commit that added the denylist (the exact version numbers are not listed, but any Go release before the patch is vulnerable). Identified involved Red Hat distributions were mentioned in the CPE list, implying that those systems using the affected Go runtime are also impacted.
Risk and Exploitability
The CVSS base score is 6.8, indicating a medium severity vulnerability. The EPSS score is < 1%, indicating a very low but nonzero likelihood of exploitation. The vulnerability is not in the CISA KEV catalog, which suggests that public exploitation is not yet observed. The likely attack vector is network‑based, requiring the ability to present a forged certificate chain during TLS handshakes. Based on the description, it is inferred that the denylist mitigates many cases; however, the narrow circumstances where system trust stores are stale mean the risk persists for environments that fail to update their certificates or run legacy Go versions.
OpenCVE Enrichment