Argo CD's certificate verification is skipped for connections to OIDC providers
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 2.2.11, 2.3.6, 2.4.5
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: no
- Technical impact: total
Summary
Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes. Argo CD starting with version 0.4.0 and prior to 2.2.11, 2.3.6, and 2.4.5 is vulnerable to an improper certificate validation bug which could cause Argo CD to trust a malicious (or otherwise untrustworthy) OpenID Connect (OIDC) provider. A patch for this vulnerability has been released in Argo CD versions 2.4.5, 2.3.6, and 2.2.11. There are no complete workarounds, but a partial workaround is available. Those who use an external OIDC provider (not the bundled Dex instance), can mitigate the issue by setting the `oidc.config.rootCA` field in the `argocd-cm` ConfigMap. This mitigation only forces certificate validation when the API server handles login flows. It does not force certificate verification when verifying tokens on API calls.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: no · Technical impact: total
- Record last updated
Affected versions
- argoproj argo-cd
From 0.4.0 · fixed in 2.2.11; From 2.3.0 · fixed in 2.3.6; From 2.4.0 · fixed in 2.4.5
- github.com/argoproj/argo-cdGo
From 0.4.0
- github.com/argoproj/argo-cd/v2Go
fixed in 2.2.11; From 2.3.0 · fixed in 2.3.6; From 2.4.0 · fixed in 2.4.5
- github.com/argoproj/argo-cdGo
From 0.4.0 · fixed in 2.2.11
- github.com/argoproj/argo-cdGo
From 2.3.0 · fixed in 2.3.6
- github.com/argoproj/argo-cdGo
From 2.4.0 · fixed in 2.4.5