Skip to content
Fencer Intel
critical 9.0

CVE-2022-31035 json

External URLs for Deployments can include javascript in argo-cd

published 4y ago modified 4mo ago also GHSA-h4w9-6x78-8vrj , GO-2022-0498 , EUVD-2022-6061

cvss
9.0
version 3.1, CNA
cisa kev
Not listed
not in CISA's catalog
epss
1.0%
EPSS 1.0% chance of exploitation in 30 days, percentile 62%
public exploits
0
none known

Summary

Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes. All 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. A patch 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. There are no completely-safe workarounds besides upgrading.

Patch / fix

  • go github.com/argoproj/argo-cd 2.1.16
  • go github.com/argoproj/argo-cd/v2 2.1.16, 2.2.10, 2.3.5, 2.4.1
  • argoproj argo_cd 2.1.16

Is CVE-2022-31035 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.

Check with Fencer

Vendor advisories

What the vendors themselves say about their products: affected, fixed or not affected, and what to do.

red hat product security vex CVE-2022-31035 updated cvss 8.8

argocd: cross-site scripting (XSS) allow a malicious user to inject a javascript link in the UI

  • Red Hat OpenShift GitOps 1.3 openshift-gitops-1/argocd-rhel8 v1.3.11-4, openshift-gitops-1/argocd-rhel8 v1.3.12-1
    fixed: vendor fix RHSA-2022:5187
  • Red Hat OpenShift GitOps 1.4 openshift-gitops-1/argocd-rhel8 v1.4.9-3
    fixed: vendor fix RHSA-2022:5153
  • Red Hat OpenShift GitOps 1.5 openshift-gitops-1/argocd-rhel8 v1.5.3-2
    fixed: vendor fix RHSA-2022:5152
  • Red Hat OpenShift GitOps 1.3 openshift-gitops-1/dex-rhel8 v1.3.11-4, openshift-gitops-1/dex-rhel8 v1.3.12-1, openshift-gitops-1/gitops-rhel8 v1.3.11-4, openshift-gitops-1/gitops-rhel8 v1.3.12-1, openshift-gitops-1/kam-delivery-rhel8 v1.3.11-4, openshift-gitops-1/kam-delivery-rhel8 v1.3.12-1, +6 more Red Hat OpenShift GitOps 1.4 openshift-gitops-1/dex-rhel8 v1.4.9-3, openshift-gitops-1/gitops-rhel8 v1.4.9-3, openshift-gitops-1/kam-delivery-rhel8 v1.4.9-3, openshift-gitops-1/applicationset-rhel8 v1.4.9-3, openshift-gitops-1/gitops-rhel8-operator v1.4.9-3, openshift-gitops-1/gitops-operator-bundle v1.4.9-3 Red Hat OpenShift GitOps 1.5 openshift-gitops-1/dex-rhel8 v1.5.3-2, openshift-gitops-1/gitops-rhel8 v1.5.3-2, openshift-gitops-1/kam-delivery-rhel8 v1.5.3-2, openshift-gitops-1/applicationset-rhel8 v1.5.3-2, openshift-gitops-1/gitops-rhel8-operator v1.5.3-2, openshift-gitops-1/gitops-operator-bundle v1.5.3-2
    not affected: vulnerable code not present

Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf

CISA SSVC

Exploitation
none
Automatable
no
Technical impact
total
Assessed
last yr.

Exploit prediction

0.99% chance of exploitation in the next 30 days, higher than 62% of all scored CVEs (FIRST EPSS, 2026-11-09).

CVSS scores

assigned by version score vector
CNA 3.1 9.0 CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H
NVD 3.1 5.4 CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
NVD 2.0 3.5 AV:N/AC:M/Au:S/C:N/I:P/A:N
GitHub 3.1 9.0 CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H

Affected packages

ecosystem package affected fixed in
go github.com/argoproj/argo-cd
>=1.0.0, <2.1.16
>=1.0.0
2.1.16
go github.com/argoproj/argo-cd/v2
<2.1.16
>=2.2.0, <2.2.10
>=2.3.0, <2.3.5
>=2.4.0, <2.4.1
2.1.16
2.2.10
2.3.5
2.4.1

Affected products

  • argoproj argo-cd

Classification

Weakness
  • CWE-79 Improper Neutralization of Input During Web Page Generation

References

Sources

Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.