CVE-2026-113672

LOWCVSS 9.9 · CRITICAL

Immediate actions

  • Track advisory updates for patch or workaround availability

Recommended action window: Monitor and triage in normal cycle

NVD description

Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes. From 0.9.0 until 3.3.15, 3.4.10, 3.5.4, and 3.6.0-rc2, the repo-server evaluates .jsonnet files with an importer that does not confine import, importstr, or importbin to the repository root. Absolute paths, parent-directory traversal, and repository symlinks can open any file readable by the repo-server, including /proc/self/environ, projected service-account tokens, mounted private keys, and repository credentials. Although generated Secrets are redacted, placing imported contents in a ConfigMap returns the data to the caller. Using importstr on a non-terminating device such as /dev/zero can exhaust repo-server memory. An attacker can commit a .jsonnet file to a Git repository used by an Application or upload the file through POST /api/v1/applications/manifestsWithFiles, also exposed by argocd app diff --local --server-side-generate. Directory applications evaluate every .jsonnet file in the application directory. The upload path requires only Application get permission on an existing directory Application, without Application update or sync permission or repository write access. This issue is fixed in versions 3.3.15, 3.4.10, 3.5.4, and 3.6.0-rc2.

0.0/ 10 priority

Sources & remediation

Weakness type (CWE)
CWE-22

Priority

LOW

Exploitation

NONE

PoC

NONE

Patch

NONE

Momentum

NONE

Deep dive

Full discourse1 post
  • Upwind Security MDR@UpwindMDR

    🚨Critical - Argo CD repo-server Jsonnet Import Sandbox Escape (CVE-2026-113672) Argo CD repo-server evaluates .jsonnet via its importer but doesn’t confine import/importstr/importbin to the repo root, allowing absolute paths, ../ traversal, or symlink escapes to read arbitrary files and return contents in rendered manifests (e.g., ConfigMap). Secrets like SA tokens, env vars, mounted keys, and repo creds can leak; importstr on /dev/zero can also OOM the repo-server (DoS). 👉Affected: http://github.com/argoproj/argo-cd, http://github.com/argoproj/argo-cd/v2, http://github.com/argoproj/argo-cd/v3 (versions TBD)

    02021412
    345 followersView on X

Explore more