GHSA-fwr2-64vr-xv9m

Argo CD cluster secret might leak in cluster details page

At a glance

Published
Updated
CVE
CVE-2023-40029
Aliases
BIT-argo-cd-2023-40029, GO-2023-2049
CVSS_V3
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:L

Description

### Impact Argo CD Cluster secrets might be managed declaratively using Argo CD / kubectl apply. As a result, the full secret body is stored in`kubectl.kubernetes.io/last-applied-configuration` annotation. https://github.com/argoproj/argo-cd/pull/7139 introduced the ability to manage cluster labels and annotations. Since clusters are stored as secrets it also exposes the `kubectl.kubernetes.io/last-applied-configuration` annotation which includes full secret body. In order to view the cluster annotations via the Argo CD API, the user must have `clusters, get` RBAC access. **Note:** In many cases, cluster secrets do not contain any actually-secret information. But sometimes, as in bearer-token auth, the contents might be very sensitive. ### Patches The bug has been patched in the following versions: * 2.8.3 * 2.7.14 * 2.6.15 ### Workarounds Update/Deploy cluster secret with `server-side-apply` flag which does not use or rely on `kubectl.kubernetes.io/last-applied-configuration` annotation. Note: annotation for existing secrets will require manual removal. ### For more information * Open an issue in [the Argo CD issue tracker](https://github.com/argoproj/argo-cd/issues) or [discussions](https://github.com/argoproj/argo-cd/discussions) * Join us on [Slack](https://argoproj.github.io/community/join-slack) in channel #argo-cd

Affected packages

PackageVersions
Go · github.com/argoproj/argo-cd/v2introduced 2.2.0, fixed 2.6.15
Go · github.com/argoproj/argo-cd/v2introduced 2.7.0, fixed 2.7.14
Go · github.com/argoproj/argo-cd/v2introduced 2.8.0, fixed 2.8.3

References

Sources

SourceLicence
OSV.devCC-BY 4.0 — GitHub Advisory Database