Symlink following allows leaking out-of-bounds YAML files from Argo CD repo-server
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Information disclosure
- Confidentiality · integrity · availability
- Low · None · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA, GitHub and Red Hat. Impact type from CWE-61 and the CVSS impact.
Summary
Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes. All versions of Argo CD starting with v1.3.0 are vulnerable to a symlink following bug allowing a malicious user with repository write access to leak sensitive YAML files from Argo CD's repo-server. A malicious Argo CD user with write access for a repository which is (or may be) used in a Helm-type Application may commit a symlink which points to an out-of-bounds file. If the target file is a valid YAML file, the attacker can read the contents of that file. Sensitive files which could be leaked include manifest files from other Applications' source repositories (potentially decrypted files, if you are using a decryption plugin) or any YAML-formatted secrets which have been mounted as files on the repo-server. Patches for this vulnerability has been released in the following Argo CD versions: v2.4.1, v2.3.5, v2.2.10 and v2.1.16. If you are using a version >=v2.3.0 and do not have any Helm-type Applications you may disable the Helm config management tool as a workaround.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| argoproj | argo-cd | 1.3.0 to before 2.1.16; 2.2.0 to before 2.2.10; 2.3.0 to before 2.3.5; 2.4.0 to before 2.4.1 | 2.1.16, 2.2.10, 2.3.5, 2.4.1 | Patch available | CNA |
| — | github.com/argoproj/argo-cd (Go) | 1.3.0 to before 2.1.16 | 2.1.16 | Patch available | GHSA-q4w5-4gq2-98vm |
| — | github.com/argoproj/argo-cd/v2 (Go) | before 2.1.16 | 2.1.16 | Patch available | GHSA-q4w5-4gq2-98vm |
| — | github.com/argoproj/argo-cd/v2 (Go) | 2.2.0 to before 2.2.10 | 2.2.10 | Patch available | GHSA-q4w5-4gq2-98vm |
| — | github.com/argoproj/argo-cd/v2 (Go) | 2.3.0 to before 2.3.5 | 2.3.5 | Patch available | GHSA-q4w5-4gq2-98vm |
| — | github.com/argoproj/argo-cd/v2 (Go) | 2.4.0 to before 2.4.1 | 2.4.1 | Patch available | GHSA-q4w5-4gq2-98vm |
- argo-cd Vendorargoproj Affected 1.3.0 to before 2.1.16; 2.2.0 to before 2.2.10; 2.3.0 to before 2.3.5; 2.4.0 to before 2.4.1 Fixed in 2.1.16, 2.2.10, 2.3.5, 2.4.1 Patch available CNA
- github.com/argoproj/argo-cd (Go) Vendor— Affected 1.3.0 to before 2.1.16 Fixed in 2.1.16 Patch available GHSA-q4w5-4gq2-98vm
- github.com/argoproj/argo-cd/v2 (Go) Vendor— Affected before 2.1.16 Fixed in 2.1.16 Patch available GHSA-q4w5-4gq2-98vm
- github.com/argoproj/argo-cd/v2 (Go) Vendor— Affected 2.2.0 to before 2.2.10 Fixed in 2.2.10 Patch available GHSA-q4w5-4gq2-98vm
- github.com/argoproj/argo-cd/v2 (Go) Vendor— Affected 2.3.0 to before 2.3.5 Fixed in 2.3.5 Patch available GHSA-q4w5-4gq2-98vm
- github.com/argoproj/argo-cd/v2 (Go) Vendor— Affected 2.4.0 to before 2.4.1 Fixed in 2.4.1 Patch available GHSA-q4w5-4gq2-98vm
CPE configurations NVD · 4
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:argoproj:argo_cd:*:*:*:*:*:*:*:* | 1.3.0 to before 2.1.6 | Vulnerable | argoproj |
| cpe:2.3:a:argoproj:argo_cd:2.2.9:*:*:*:*:*:*:* | 2.2.9 | Vulnerable | argoproj |
| cpe:2.3:a:argoproj:argo_cd:2.3.4:*:*:*:*:*:*:* | 2.3.4 | Vulnerable | argoproj |
| cpe:2.3:a:argoproj:argo_cd:2.4.0:*:*:*:*:*:*:* | 2.4.0 | Vulnerable | argoproj |
- cpe:2.3:a:argoproj:argo_cd:*:*:*:*:*:*:*:* Versions 1.3.0 to before 2.1.6 Vulnerable ·argoproj
- cpe:2.3:a:argoproj:argo_cd:2.2.9:*:*:*:*:*:*:* Versions 2.2.9 Vulnerable ·argoproj
- cpe:2.3:a:argoproj:argo_cd:2.3.4:*:*:*:*:*:*:* Versions 2.3.4 Vulnerable ·argoproj
- cpe:2.3:a:argoproj:argo_cd:2.4.0:*:*:*:*:*:*:* Versions 2.4.0 Vulnerable ·argoproj
Remediation
- Fix · CNA argo-cd (argoproj) Fixed in 2.1.16, 2.2.10, 2.3.5, 2.4.1
- Fix · GHSA-q4w5-4gq2-98vm github.com/argoproj/argo-cd (Go) Fixed in 2.1.16 Advisory →
- Fix · GHSA-q4w5-4gq2-98vm github.com/argoproj/argo-cd/v2 (Go) Fixed in 2.1.16 Advisory →
- Fix · GHSA-q4w5-4gq2-98vm github.com/argoproj/argo-cd/v2 (Go) Fixed in 2.2.10 Advisory →
- Fix · GHSA-q4w5-4gq2-98vm github.com/argoproj/argo-cd/v2 (Go) Fixed in 2.3.5 Advisory →
- Fix · GHSA-q4w5-4gq2-98vm github.com/argoproj/argo-cd/v2 (Go) Fixed in 2.4.1 Advisory →
Red Hat 4 advisories
- RHSA-2022:5153 Released 2022-06-27 · Red Hat rating ImportantRed Hat OpenShift GitOps security update
- Red Hat OpenShift GitOps 1.4 openshift-gitops-1/argocd-rhel8
- RHSA-2022:5187 Released 2022-06-24 · Red Hat rating ImportantRed Hat OpenShift GitOps security update
- Red Hat OpenShift GitOps 1.3 openshift-gitops-1/argocd-rhel8
- RHSA-2022:5192 Released 2022-06-24 · Red Hat rating ImportantRed Hat OpenShift GitOps security update
- Red Hat OpenShift GitOps 1.3 openshift-gitops-1/argocd-rhel8
Show 1 more Red Hat advisories
- RHSA-2022:5152 Released 2022-06-22 · Red Hat rating ImportantRed Hat OpenShift GitOps security update
- Red Hat OpenShift GitOps 1.5 openshift-gitops-1/argocd-rhel8
Vendor assessments
Red Hat
Red Hat rating: Moderate. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat OpenShift GitOps 1.3 | Fixed | RHSA-2022:5187, RHSA-2022:5192 |
| Red Hat OpenShift GitOps 1.4 | Fixed | RHSA-2022:5153 |
| Red Hat OpenShift GitOps 1.5 | Fixed | RHSA-2022:5152 |
Not affected: 3 products
- Red Hat OpenShift GitOps 1.3
- Red Hat OpenShift GitOps 1.4
- Red Hat OpenShift GitOps 1.5
Timeline
- 2026-10-02 Threatist record created from CVE-2022-31036
- 2026-10-03 Alias added: GHSA-q4w5-4gq2-98vm
References
More argoproj Argo Cd vulnerabilities
- TI-2024-14377 Argo CD vulnerable to Bypassing of Brute Force Protection via Application Crash and In-Memory Data Loss CVSS 3.1CRITICAL 9.8
- TI-2024-14383 Argo CD vulnerable to Bypassing of Rate Limit and Brute Force Protection Using Cache Overflow CVSS 3.1CRITICAL 9.1
- TI-2026-31086 ArgoCD ServerSideDiff is vulnerable to Kubernetes Secret Extraction CVSS 3.1CRITICAL 9.6
- TI-2023-20919 Cluster secret might leak in cluster details page in Argo CD CVSS 3.1CRITICAL 9.9
- TI-2024-21088 ArgoCD Vulnerable to Use of Risky or Missing Cryptographic Algorithms in Redis Cache CVSS 3.1CRITICAL 9.1
- TI-2026-33475 Argo CD: Stored XSS in application link annotations enables developer-to-admin privilege escalation CVSS 3.1HIGH 8.7
Sources
- CVE-2022-31036 · CVE Program
- CVE-2022-31036 · NVD
- FIRST EPSS
- GHSA-q4w5-4gq2-98vm · GitHub Advisory Database · CC BY 4.0
- CVE-2022-31036 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences