go-micro: Disabled TLS certificate verification by default
Summary
go-micro is a Go framework for distributed systems. Its shared TLS helper sets InsecureSkipVerify to true by default, so TLS certificate verification is disabled for gRPC, HTTP, RabbitMQ broker, Consul and etcd connections. A network attacker in a man-in-the-middle position can present any certificate, intercept or modify traffic, and capture authentication tokens and credentials. The vulnerable default applies only to affected go-micro versions in services that use this helper.
Affected
- go-micro versions before 6.0.0 (according to the CVE record, affected 0 to < 6.0.0)
- The v5.30.0 source shows the insecure default in internal/util/tls/tls.go
- Only applications that build on go-micro are affected
Fixed in
- Upgrade to go-micro 6.0.0 or later (the CVE record names 6.0.0 as the fixed version; later v6 releases exist)
- Unverified: whether 6.0.0 changes the default to secure, and the exact fix commit. Check the vendor references directly.
Workaround
- For v5 deployments: set the environment variable MICRO_TLS_SECURE=true so certificate verification is enabled (documented by the vendor; coverage of all code paths is not confirmed)
- Restrict network access between services, brokers and registries to reduce on-path exposure
- Use proper CA-signed certificates or mutual TLS where possible
Exploitation
- CISA SSVC: exploitation none, automatable no, technical impact partial
- No evidence of exploitation in the wild or public proof of concept found
- EPSS 0.00194 (low predicted exploitation probability)
- An attacker must be able to position themselves on the network path
Our recommendation
- Check go.mod and go.sum for go-micro.dev or github.com/micro/go-micro to determine whether you are affected
- Plan an upgrade to go-micro 6.0.0 or later and test the changes
- Until patched, set MICRO_TLS_SECURE=true on v5 deployments and restrict network paths between services
- Monitor the NVD and GitHub security advisories for updates, since the NVD status is still Awaiting Analysis
- Priority: medium for typical SMEs without go-micro, high for services that use it on untrusted networks
Public exploits
PoC-in-GitHub, Metasploit and Exploit-DB list nothing for this CVE.
Research sources
- VulnCheck advisory www.vulncheck.com
- go-micro TLS helper source (v5.30.0) github.com
- go-micro fix commit github.com
- go-micro issue #2963 github.com
- go-micro repository github.com
- VulDB CVE entry vuldb.com
- Vulners (EPSS, CVSS 3.1) vulners.com
- go-micro v5 TLS documentation pkg.go.dev
Researched and written up in English and German by an AI (Claude by Anthropic) based on NVD, CISA, EPSS and the sources listed. The vendor information is authoritative. Researched on 31 Oct 2026, 07:34.
Original description (NVD)
go-micro before 6.0.0 contains an improper certificate validation vulnerability that allows network attackers to impersonate services because the shared TLS helper sets InsecureSkipVerify to true by default. Man-in-the-middle attackers can present any certificate to intercept or modify gRPC transport, HTTP and RabbitMQ broker, and Consul or etcd registry traffic, including authentication tokens and credentials.
NVD references (5)
- https://github.com/micro/go-micro
- https://github.com/micro/go-micro/blob/v5.30.0/internal/util/tls/tls.go#L43-L67
- https://github.com/micro/go-micro/commit/c7657f73f45cf839e643db10f28703eeab7299c3
- https://github.com/micro/go-micro/issues/2963
- https://www.vulncheck.com/advisories/go-micro-before-6.0.0-disabled-tls-certificate-verification-via-tls-conf…
Sources
The tracker combines official, freely usable data sources – updated continuously:
- NVD (NIST) – CVEs, rating (CVSS), affected products
- CISA KEV – vulnerabilities confirmed by CISA as actively exploited
- CISA Vulnrichment – CISA assessment (SSVC) in the official CVE record
- FIRST EPSS – probability of exploitation
- Microsoft MSRC – Patch Tuesday: vulnerabilities, severity, updates
- PoC-in-GitHub – public proof-of-concept repositories
- Metasploit (Rapid7) – modules of the Metasploit Framework
- Exploit-DB (OffSec) – archive of public exploits (links only)
- Patch days: official vendor pages (linked per vendor) (Vendor patch days)
This product uses data from the NVD API but is not endorsed or certified by the NVD. EPSS data © FIRST.org.
Affected? We can help.
We check whether your systems are affected, install updates and close the gap – continuously with the System Health Checker if you wish.
