Loading...
Skip to main content

CVE-2022-31035 — Vulnerability in github.com/argoproj/argo-cd/v2 —...

CRITICAL

Argo CD's external URLs for Deployments can include JavaScript

Published June 21, 2022Updated August 21, 2024Source: osv

Summary

### Impact All unpatched versions of Argo CD starting with v1.0.0 are vulnerable to a cross-site scripting (XSS) bug allowing a malicious user to inject a `javascript:` link in the UI. When clicked by a victim user, the script will execute with the victim's permissions (up to and including admin). The script would be capable of doing anything which is possible in the UI or via the API, such as creating, modifying, and deleting Kubernetes resources. ### Patches A patch for this vulnerability has been released in the following Argo CD versions: * v2.4.1 * v2.3.5 * v2.2.10 * v2.1.16 ### Workarounds There are no completely-safe workarounds besides upgrading. **Mitigations:** 1. Avoid clicking external links presented in the UI. Here is an example of an Application node with an external link: ![Application node in the Argo CD UI with an external link](https://user-images.githubusercontent.com/350466/171678146-026bbf20-2116-4b9f-8af8-7bb5b7ee8dff.png) The link's title is user-configurable. So even if you hover the link, and the tooltip looks safe, the link might be malicious. The only way to be certain that the link is safe is to inspect the page's source. 2. Carefully limit who has permissions to edit resource manifests (this is configured in [RBAC](https://argo-cd.readthedocs.io/en/stable/operator-manual/rbac/)). ### References * [Documentation for the external links feature](https://argo-cd.readthedocs.io/en/stable/user-guide/external-url/) ### Credits Disclosed by ADA Logics in a security audit of the Argo project sponsored by CNCF and facilitated by OSTIF. Thanks to Adam Korczynski and David Korczynski for their work on the audit. ### For more information * Open an issue in [the Argo CD issue tracker](https://github.com/argoproj/argo-cd/issues) or [discussions](https://github.com/argoproj/argo-cd/discussions) * Join us on [Slack](https://argoproj.github.io/community/join-slack) in channel #argo-cd

Advisory Timeline

  • First published June 21, 2022 (1574 days ago).
  • Last revised August 21, 2024 — 792 days after initial publication.

Remediation

Upgrade to the fixed version using your package manager.

Go
Update github.com/argoproj/argo-cd/v2 to 2.4.1 or later
go get github.com/argoproj/argo-cd/v2@v2.4.1
Go
Update github.com/argoproj/argo-cd/v2 to 2.2.10 or later
go get github.com/argoproj/argo-cd/v2@v2.2.10
Go
Update github.com/argoproj/argo-cd to 2.1.16 or later
go get github.com/argoproj/argo-cd@v2.1.16
Go
Update github.com/argoproj/argo-cd/v2 to 2.1.16 or later
go get github.com/argoproj/argo-cd/v2@v2.1.16
Go
Update github.com/argoproj/argo-cd/v2 to 2.3.5 or later
go get github.com/argoproj/argo-cd/v2@v2.3.5

After upgrading, run your dependency scanner again to confirm the vulnerability is resolved.

Affected Packages (5)

Affects 1 ecosystem: go (2).

PackageEcosystemAffectedFixed In
github.com/argoproj/argo-cd/v2
go
2.4.02.4.1
github.com/argoproj/argo-cd/v2
go
All versions2.2.10
github.com/argoproj/argo-cd
go
All versions2.1.16
github.com/argoproj/argo-cd/v2
go
All versions2.1.16
github.com/argoproj/argo-cd/v2
go
All versions2.3.5

Vulnerability Classification

Common Weakness Enumeration (CWE) identifiers for this vulnerability type.

  • CWE-79
    Cross-site Scripting (XSS)MITRE

CVSS Score Breakdown

What the CVSS (Common Vulnerability Scoring System) 9.0 score means for each attack dimension.

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
Required
Scope
Changed
Confidentiality
High
Integrity
High
Availability
High

CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H

Frequently Asked Questions

What is CVE-2022-31035?
Argo CD's external URLs for Deployments can include JavaScript This vulnerability has been assigned a severity rating of CRITICAL (CVSS score: 9.0/10).
How do I check if my project is affected by CVE-2022-31035?
CVE-2022-31035 affects github.com/argoproj/argo-cd/v2 and github.com/argoproj/argo-cd. Use GeekWala's free vulnerability scanner to check your dependencies against CVE-2022-31035 and 200,000+ other known vulnerabilities.

Severity & Exploitability

CVSS Score
9.0

Exploitation is straightforward and causes maximum impact. Patch immediately.

Also Known As

GHSA-h4w9-6x78-8vrj
GO-2022-0498

Related CVEs

Check if you're affected

Scan your dependencies to see if this vulnerability affects your projects.

Scan Your Dependencies