Flightctl: flightctl: package-global go-git https transport mutated per-repo -- cross-tenant tls-config bleed
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Red Hat | RHEM 1.2 for RHEL 10 | affected |
|
||||||
| Red Hat | RHEM 1.2 for RHEL 9 | affected |
|
||||||
| Red Hat | Red Hat Edge Manager 1.2 | affected |
|
||||||
| Red Hat | Red Hat Edge Manager 1.2 | affected |
|
||||||
| Red Hat | Red Hat Edge Manager 1.3 | affected |
|
||||||
| Red Hat | Red Hat Edge Manager 1.3 | affected |
|
||||||
| Red Hat | Red Hat Edge Manager 1.3 | affected |
|
||||||
| Red Hat | Red Hat Edge Manager 1.3 | affected |
|
||||||
| Red Hat | Red Hat Advanced Cluster Management for Kubernetes 2 | affected | — |
No data.
No data.
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Redhat | Advanced Cluster Management For Kubernetes |
|
||||||||
| Redhat | Redhat Package Manager |
|
Vendor Workaround
There is no application-level workaround that fully eliminates this race condition without a code change. The following deployment-level measures reduce exposure in multi-tenant environments: - Avoid mTLS client certificates for git repositories: If tenant Repository resources do not supply client TLS certificates (httpConfig.tls.clientCertificate), the most sensitive data (client private key material) is absent from the global transport and cannot leak. - Avoid skipServerVerification: Do not set httpConfig.skipServerVerification: true on any Repository resource. This prevents a tenant's InsecureSkipVerify=true from propagating to other tenants' clones, which would otherwise allow an on-path attacker to serve malicious configuration.
No CVSS v4.0
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.196% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| CPEs | cpe:/a:redhat:edge_manager:1.3::el10 cpe:/a:redhat:edge_manager:1.3::el9 |
|
| References |
|
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
| Type | Values Removed | Values Added |
|---|---|---|
| CPEs | cpe:/a:redhat:edge_manager:1.2::el10 cpe:/a:redhat:edge_manager:1.2::el9 |
|
| References |
|
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Redhat advanced Cluster Management For Kubernetes
Redhat redhat Package Manager |
|
| Vendors & Products |
Redhat advanced Cluster Management For Kubernetes
Redhat redhat Package Manager |
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| References |
| |
| Metrics |
threat_severity
|
threat_severity
|
| Type | Values Removed | Values Added |
|---|---|---|
| Description | A flaw was found in flightctl. The configureRepoHTTPSClient() function in the device-render worker builds a per-repository tls.Config (which may include InsecureSkipVerify, a custom CA bundle, or tenant-supplied mTLS client certificates) and installs it into go-git's process-global client.Protocols map via gitclient.InstallProtocol("https", ...). Because the worker renders devices for multiple organizations concurrently from a shared goroutine pool, whichever tenant's repository configuration is written last wins for all in-flight git.Clone calls. This race condition can cause one tenant's TLS settings, including InsecureSkipVerify or mTLS client credentials, to leak into another tenant's git operations. | |
| Title | Flightctl: flightctl: package-global go-git https transport mutated per-repo -- cross-tenant tls-config bleed | |
| First Time appeared |
Redhat
Redhat acm Redhat edge Manager |
|
| Weaknesses | CWE-413 | |
| CPEs | cpe:/a:redhat:acm:2 cpe:/a:redhat:edge_manager:1 |
|
| Vendors & Products |
Redhat
Redhat acm Redhat edge Manager |
|
| References |
| |
| Metrics |
cvssV3_1
|