Description
Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes. From 2.1.0 until 3.3.15, 3.4.10, 3.5.4, and 3.6.0-rc2, when an operator has enabled --enable-helm for kustomize build, helmGlobals.configHome can point Helm's config and data directories at a repository-controlled location. Helm automatically loads a downloader plugin from `<configHome>/.data/plugins` without a separate plugin-install step and executes its program inside argocd-repo-server when a helmCharts repository URL uses the plugin's protocol. The command runs as the repo-server user and can read repository credentials and other process-accessible data. An attacker can commit the Kustomization and plugin to a Git repository that an Application builds or upload the files through POST /api/v1/applications/manifestsWithFiles, also exposed by argocd app diff --local --server-side-generate. The upload path requires only Application get permission on an existing Application, without Application update or sync permission or repository write access. Both delivery paths require prior operator enablement of --enable-helm; deployments that do not enable it are not affected. Kustomize 4.1.0 first passed helmGlobals.configHome through to Helm. This issue is fixed in versions 3.3.15, 3.4.10, 3.5.4, and 3.6.0-rc2.
Published: 2026-10-20
Score: 9.9 Critical
EPSS: n/a
KEV: No
Impact: Remote Command Execution
Action: Patch Immediately
AI Analysis

Impact

Argo CD allows a Kustomize-based Helm build to reference a Helm configuration directory that resides under repository control. When the operator enables the --enable-helm flag, Helm automatically loads a downloader plugin from the <configHome>/.data/plugins directory. The plugin is executed inside the argocd-repo-server process, which runs as the repo-server user. This flaw enables an attacker to execute arbitrary code with the privileges of the repo-server, including reading repository credentials and other data. The weakness is a classic case of arbitrary code execution in a trusted environment (CWE-829).

Affected Systems

The vulnerability affects Argo CD versions from 2.1.0 up to and including 3.3.15, 3.4.10, 3.5.4, and 3.6.0-rc2 when the operator has enabled --enable-helm for kustomize builds. Deployments that have not enabled this flag or use earlier versions are not impacted. The issue is specific to builds that pass helmGlobals.configHome through to Helm, a behavior introduced in kustomize 4.1.0.

Risk and Exploitability

The CVSS score of 9.9 signifies critical severity. The EPSS score is unavailable, but the lack of a KEV listing does not reduce the risk; the exploitation vector remains high because the attacker can commit malicious files via a Git repository or POST /api/v1/applications/manifestsWithFiles, requiring only Application get permission on an existing Application. Once the attacker’s files are present, the plugin runs automatically during the Helm build, giving the attacker remote command execution as the repo-server user without needing repository write access. This makes the vulnerability highly exploitable in environments that rely on kustomize and Helm within Argo CD and have the --enable-helm flag turned on.

Generated by OpenCVE AI on October 20, 2026 at 19:37 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade Argo CD to version 3.3.15, 3.4.10, 3.5.4, or 3.6.0-rc2 or later, where the bug is resolved.
  • If upgrading is not immediately possible, disable the --enable-helm flag for kustomize builds that do not require Helm support, or configure helmGlobals.configHome to a non‑repository location.
  • Restrict the Application get permission to trusted users only, and review repository access controls to reduce the likelihood that an attacker can upload malicious Kustomize or plugin files.

Generated by OpenCVE AI on October 20, 2026 at 19:37 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 20 Oct 2026 20:15:00 +0000

Type Values Removed Values Added
First Time appeared Argoproj
Argoproj argo-cd
Vendors & Products Argoproj
Argoproj argo-cd

Tue, 20 Oct 2026 18:30:00 +0000

Type Values Removed Values Added
Description Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes. From 2.1.0 until 3.3.15, 3.4.10, 3.5.4, and 3.6.0-rc2, when an operator has enabled --enable-helm for kustomize build, helmGlobals.configHome can point Helm's config and data directories at a repository-controlled location. Helm automatically loads a downloader plugin from `<configHome>/.data/plugins` without a separate plugin-install step and executes its program inside argocd-repo-server when a helmCharts repository URL uses the plugin's protocol. The command runs as the repo-server user and can read repository credentials and other process-accessible data. An attacker can commit the Kustomization and plugin to a Git repository that an Application builds or upload the files through POST /api/v1/applications/manifestsWithFiles, also exposed by argocd app diff --local --server-side-generate. The upload path requires only Application get permission on an existing Application, without Application update or sync permission or repository write access. Both delivery paths require prior operator enablement of --enable-helm; deployments that do not enable it are not affected. Kustomize 4.1.0 first passed helmGlobals.configHome through to Helm. This issue is fixed in versions 3.3.15, 3.4.10, 3.5.4, and 3.6.0-rc2.
Title Argo CD: A Kustomize Helm config home can run commands in the repo-server
Weaknesses CWE-829
References
Metrics cvssV3_1

{'score': 9.9, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H'}


Subscriptions

Argoproj Argo-cd
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-10-20T18:08:36.565Z

Reserved: 2026-10-20T16:03:14.862Z

Link: CVE-2026-113709

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Undergoing Analysis

Published: 2026-10-20T19:17:33.457

Modified: 2026-10-20T19:59:00.607

Link: CVE-2026-113709

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-20T20:00:14Z

Weaknesses
  • CWE-829

    Inclusion of Functionality from Untrusted Control Sphere