Miggo Logo

CVE-2023-40029: Argo CD cluster secret might leak in cluster details page

9.9

CVSS Score
3.1

Basic Information

EPSS Score
0.70932%
Published
9/11/2023
Updated
11/5/2023
KEV Status
No
Technology
TechnologyGo

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:L
Package NameEcosystemVulnerable VersionsFirst Patched Version
github.com/argoproj/argo-cd/v2go>= 2.2.0, < 2.6.152.6.15
github.com/argoproj/argo-cd/v2go>= 2.7.0, < 2.7.142.7.14
github.com/argoproj/argo-cd/v2go>= 2.8.0, < 2.8.32.8.3

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stems from improper handling of Kubernetes last-applied-configuration annotations in cluster secrets. The clusterToSecret function lacked validation to prevent storage of this annotation, while SecretToCluster failed to strip it when exposing cluster details. The security patches (44e52c4, 4b2e5b0) explicitly add annotation validation in clusterToSecret and annotation stripping in SecretToCluster, confirming these were the vulnerable points. These functions directly handle secret/cluster conversion and annotation management, making them the clear vulnerability sources.

Vulnerable functions

Only Mi**o us*rs **n s** t*is s**tion

WAF Protection Rules

WAF Rule

### Imp**t *r*o ** *lust*r s**r*ts mi**t ** m*n**** ***l*r*tiv*ly usin* *r*o ** / ku***tl *pply. *s * r*sult, t** *ull s**r*t *o*y is stor** in`ku***tl.ku**rn*t*s.io/l*st-*ppli**-*on*i*ur*tion` *nnot*tion. *ttps://*it*u*.*om/*r*oproj/*r*o-**/pull/

Reasoning

T** vuln*r**ility st*ms *rom improp*r **n*lin* o* Ku**rn*t*s l*st-*ppli**-*on*i*ur*tion *nnot*tions in *lust*r s**r*ts. T** *lust*rToS**r*t *un*tion l**k** v*li**tion to pr*v*nt stor*** o* t*is *nnot*tion, w*il* S**r*tTo*lust*r **il** to strip it w**