// For flags

CVE-2023-50726

Users with `create` but not `override` privileges can perform local sync in argo-cd

Severity Score

6.4
*CVSS v3.1

Exploit Likelihood

*EPSS

Affected Versions

*CPE

Public Exploits

0
*Multiple Sources

Exploited in Wild

-
*KEV

Decision

Track
*SSVC
Descriptions

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.

Argo CD es una herramienta declarativa de entrega continua de GitOps para Kubernetes. La "sincronización local" es una característica de Argo CD que permite a los desarrolladores anular temporalmente los manifiestos de una aplicación con manifiestos definidos localmente. El uso de la función generalmente debe limitarse a usuarios de alta confianza, ya que permite al usuario evitar cualquier protección de combinación en git. Un error de validación inadecuado permite a los usuarios que tienen privilegios de "crear" pero no privilegios de "anular" sincronizar manifiestos locales al crear la aplicación. Todas las demás restricciones, incluidas las de AppProject, aún se aplican. La única restricción que no se aplica es que los manifiestos provengan de alguna fuente aprobada de git/Helm/OCI. El error se introdujo en 1.2.0-rc1 cuando se agregó la función de sincronización del manifiesto local. El error se ha solucionado en las versiones 2.10.3, 2.9.8 y 2.8.12 de Argo CD. Se recomienda a los usuarios que actualicen. Los usuarios que no puedan actualizar pueden mitigar el riesgo de eludir la protección de sucursal eliminando el acceso RBAC "aplicaciones, creación". La única forma de eliminar el problema sin eliminar el acceso a RBAC es actualizar a una versión parcheada.

A flaw was found in the Argo CD package. An improper validation bug allows users to sync local manifests on app creation, who have create privileges but not override privileges. All other restrictions, including AppProject restrictions, are still enforced. The only restriction that is not enforced is that the manifests come from some approved git/Helm/OCI source.

*Credits: N/A
CVSS Scores
Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Changed
Confidentiality
None
Integrity
Low
Availability
Low
* Common Vulnerability Scoring System
SSVC
  • Decision:Track
Exploitation
None
Automatable
No
Tech. Impact
Partial
* Organization's Worst-case Scenario
Timeline
  • 2023-12-11 CVE Reserved
  • 2024-03-13 CVE Published
  • 2024-03-14 EPSS Updated
  • 2024-08-02 CVE Updated
  • ---------- Exploited in Wild
  • ---------- KEV Due Date
  • ---------- First Exploit
CWE
  • CWE-269: Improper Privilege Management
CAPEC
Affected Vendors, Products, and Versions
Vendor Product Version Other Status
Vendor Product Version Other Status <-- --> Vendor Product Version Other Status
Argoproj
Search vendor "Argoproj"
Argo-cd
Search vendor "Argoproj" for product "Argo-cd"
>= 1.2.0 < 2.8.12
Search vendor "Argoproj" for product "Argo-cd" and version " >= 1.2.0 < 2.8.12"
en
Affected
Argoproj
Search vendor "Argoproj"
Argo-cd
Search vendor "Argoproj" for product "Argo-cd"
>= 2.9.0 < 2.9.8
Search vendor "Argoproj" for product "Argo-cd" and version " >= 2.9.0 < 2.9.8"
en
Affected
Argoproj
Search vendor "Argoproj"
Argo-cd
Search vendor "Argoproj" for product "Argo-cd"
>= 2.10.0 < 2.10.3
Search vendor "Argoproj" for product "Argo-cd" and version " >= 2.10.0 < 2.10.3"
en
Affected