CVE-2023-50726 Users with `create` but not `override` privileges can perform local sync in argo-cd
Users with create but not override privileges can bypass source restrictions to sync local manifests in Argo CD.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2023-50726?
CVE-2023-50726 is a medium-severity missing authorization vulnerability in Argoproj Argo Cd, published on 13 Mar 2024. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes. "Local sync" is an Argo CD feature that allows developers to temporarily override an Application's manifests with locally-defined manifests. Use of the feature should generally be limited to highly-trusted users, since it allows the user to bypass any merge protections in git. An improper validation bug allows users who have `create` privileges but not `override` privileges to sync local manifests on app creation. All other restrictions, including AppProject restrictions are still enforced. The only restriction which is not enforced is that the manifests come from some approved git/Helm/OCI source. The bug was introduced in 1.2.0-rc1 when the local manifest sync feature was added. The bug has been patched in Argo CD versions 2.10.3, 2.9.8, and 2.8.12. Users are advised to upgrade. Users unable to upgrade may mitigate the risk of branch protection bypass by removing `applications, create` RBAC access. The only way to eliminate the issue without removing RBAC access is to upgrade to a patched version.
Which versions are affected by CVE-2023-50726?
11 open source packages ship an affected version, including github.com/argoproj/argo-cd/v2, argo-cd and github.com/argoproj/argo-cd. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
github.com/argoproj/argo-cd/v2 Go | From 2.0.0 | 2.8.12, 2.9.8, 2.10.3 |
github.com/argoproj/argo-cd/v2 Go | From 2.0.0-rc3 | 2.8.12 |
github.com/argoproj/argo-cd/v2 Go | From 2.0.0-rc3 | 2.8.12 |
github.com/argoproj/argo-cd/v2 Go | From 2.10.0 | 2.10.3 |
github.com/argoproj/argo-cd/v2 Go | From 2.10.0 | 2.10.3 |
github.com/argoproj/argo-cd/v2 Go | From 2.9.0 | 2.9.8 |
5 more packages
github.com/argoproj/argo-cd/v2 Go | From 2.9.0 | 2.9.8 |
argo-cd Bitnami | From 1.2.0 | 2.8.12, 2.9.8, 2.10.3 |
github.com/argoproj/argo-cd Go | From 1.2.0-rc1 | None |
github.com/argoproj/argo-cd Go | From 1.2.0-rc1 to 1.8.7 | None |
github.com/argoproj/argo-cd Go | From 1.2.0-rc1 to 1.8.7 | None |
Products include Argoproj Argo Cd.
How do I fix CVE-2023-50726?
Upgrade github.com/argoproj/argo-cd/v2 to a fixed version for your release line: 2.8.12, 2.9.8 or 2.10.3.
Upgrade, and check permissions on every request on the server, not only in the interface. More about Missing authorization.
Is CVE-2023-50726 being exploited?
There is no known exploitation of CVE-2023-50726 in the wild and no public exploit code.
Other vulnerabilities in Argoproj Argo Cd
- CVE-2025-55190 Argo CD: Project API Token Exposes Repository Credentials
- CVE-2022-29165 Argo CD will blindly trust JWT claims if anonymous access is enabled
- CVE-2023-40029 Cluster secret might leak in cluster details page in Argo CD
- CVE-2022-24768 Improper access control allows admin privilege escalation in Argo CD
- CVE-2024-21652 Argo CD vulnerable to Bypassing of Brute Force Protection via Application Crash and In-Memory Data Loss
Sources
Also known as BIT-argo-cd-2023-50726, GHSA-g623-jcgg-mhmm, GO-2024-2643.