CVE-2020-25864 json
HashiCorp Consul Cross-site Scripting vulnerability
published 2021-04-20 5 y ago modified 2026-09-10 1 mo ago also BIT-consul-2020-25864 , EUVD-2022-3260 , GHSA-8xmx-h8rq-h94j , GO-2023-1851
- cvss
- 6.1
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 6.1%
- EPSS 6.1% chance of exploitation in 30 days, percentile 93%
- public exploits
- 0
- none known, plus a Nuclei check
Summary
HashiCorp Consul and Consul Enterprise up to version 1.9.4 key-value (KV) raw mode was vulnerable to cross-site scripting. Fixed in 1.9.5, 1.8.10 and 1.7.14.
Patch / fix
- go github.com/hashicorp/consul 1.7.14, 1.8.10, 1.9.5
- bitnami consul 1.7.14, 1.8.10, 1.9.5
- hashicorp consul 1.7.14, 1.8.10, 1.9.5
- consul Debian 11 1.8.7+dfsg1-2
debian advisories DEBIAN-CVE-2020-25864
- consul Alpine 3.18, Alpine 3.17, Alpine 3.16 +3 more 1.9.5-r0
alpine advisories ALPINE-CVE-2020-25864
Alpine secdb © Alpine Linux, from https://secdb.alpinelinux.org via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- consul Arch Linux 1.9.5-1
arch linux advisories AVG-1829
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-2020-25864 updated cvss 6.1
consul: specially crafted KV entry could be used to perform a XSS attack
-
Red Hat OpenShift Service Mesh 2.0 servicemesh, servicemesh-mixc, servicemesh-mixs, servicemesh-istioctl, servicemesh-prometheus, servicemesh-pilot-agent, +1 more Red Hat Advanced Cluster Management for Kubernetes 2 rhacm2/metrics-collector-rhel8, rhacm2/multicluster-observability-rhel8-operator Red Hat Fuse 7 consul-client consul-client Red Hat OpenShift Container Platform 4 openshift4/ose-prometheus, openshift4/cnf-tests-rhel8, redhat/redhat-operator-index, openshift4/compliance-rhel8-operator, openshift4/file-integrity-rhel8-operator, openshift4/ose-cluster-etcd-rhel8-operator, +3 more Red Hat OpenShift Virtualization 4 container-native-virtualization/hyperconverged-cluster-operator, container-native-virtualization/hostpath-provisioner-rhel8-operator, container-native-virtualization/hyperconverged-cluster-webhook-rhel8not 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
Exploit prediction
6.07% chance of exploitation in the next 30 days, higher than 93% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- Nuclei template HashiCorp Consul/Consul Enterprise <=1.9.4 - Cross-Site Scripting nuclei detection template
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| GitHub | 3.1 | 6.1 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N |
| NVD | 3.1 | 6.1 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N |
| NVD | 2.0 | 4.3 | AV:N/AC:M/Au:N/C:N/I:P/A:N |
| OSV | 3.1 | 6.1 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| go | github.com/hashicorp/consul | >=1.9.0, <1.9.5 >=1.8.0, <1.8.10 <1.7.14 |
1.9.5 1.8.10 1.7.14 |
| bitnami | consul | <1.7.14 >=1.8.0, <1.8.10 >=1.9.0, <1.9.5 |
1.7.14 1.8.10 1.9.5 |
Classification
- Weakness
-
- CWE-79 Improper Neutralization of Input During Web Page Generation
References
-
security.gentoo.org
/glsa/202208-09
vendor-advisory, web, third-party-advisory, advisory
-
hashicorp.com
/blog/category/consul
web, product, vendor-advisory, advisory
-
discuss.hashicorp.com
/t/hcsec-2021-07-consul-api-kv-endpoint-vulnerable-to-cross-site-scripting/23368
web, vendor-advisory, advisory
-
nvd.nist.gov
/vuln/detail/CVE-2020-25864
advisory, web
-
github.com
/hashicorp/consul
package
-
github.com
/advisories/GHSA-8xmx-h8rq-h94j
advisory
Sources
- CVE List CVE-2020-25864
- GitHub Advisory GHSA-8xmx-h8rq-h94j
- NVD CVE-2020-25864
- OSV BIT-consul-2020-25864
- OSV GO-2023-1851
Fencer Vulns 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.