go-micro before 6.0.0 Disabled TLS Certificate Verification via tls.Config Helper
Impact
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.
Source excerpt · VulnCheckAffected packages
Affected products
Vendor version evidence. Product records are separate from automatic dependency matching.
micro · go-micro
Other versions: unaffected
| Version / range | Source status |
|---|---|
| 0 to before 6.0.0 | affected |
Original source description
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.
References
- Source reference github.com/micro/go-micro/issues/2963
- Patch github.com/micro/go-micro/commit/c7657f73f45cf839e643db10f28703eeab7299c3
- Source reference github.com/micro/go-micro/blob/v5.30.0/internal/util/tls/tls.go
- Source reference github.com/micro/go-micro
- Security advisory www.vulncheck.com/advisories/go-micro-before-6.0.0-disabled-tls-certificate-verification-via-tls-config-helper