CVE-2020-14330 json
Improper Output Neutralization and Improper Encoding or Escaping of Output for Logs in ansible
published 2020-09-11 6 y ago modified 2026-06-17 4 mo ago also GHSA-785x-qw4v-6872 , PYSEC-2020-3 , EUVD-2020-0025
- cvss
- 5.0
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.6%
- EPSS 0.6% chance of exploitation in 30 days, percentile 47%
- public exploits
- 0
- none known
Summary
An Improper Output Neutralization for Logs flaw was found in Ansible when using the uri module, where sensitive data is exposed to content and json output. This flaw allows an attacker to access the logs or outputs of performed tasks to read keys used in playbooks from other users within the uri module. The highest threat from this vulnerability is to data confidentiality.
Patch / fix
- pypi ansible 2.10.0
- redhat ansible_engine 2.9.12
- ansible Debian 14, Debian 13, Debian 12 2.9.13+dfsg-1
debian advisories DEBIAN-CVE-2020-14330
- ansible ansible engine 2.8 2.8.15-1.el7ae
- ansible ansible engine 2.8 2.8.15-1.el8ae
red hat advisories RHSA-2020:3600
- ansible openSUSE Leap 15.5, Manager Proxy Module 4.3, Manager Client Tools 15 2.9.27-150000.1.17.2
- grafana Manager Client Tools 15 9.5.18-150000.1.63.2
- spacecmd openSUSE Leap 15.5, Manager Client Tools 15 4.3.27-150000.3.116.2
- mgr-daemon Manager Client Tools 15 4.3.9-150000.1.47.2
- spacewalk-koan Manager Client Tools 15 4.3.6-150000.3.33.2
- dracut-saltboot openSUSE Leap 15.5, Manager Client Tools for SLE Micro 5, Manager Client Tools 15 0.1.1710765237.46af599-150000.1.53.2
- POS_Image-JeOS7 openSUSE Leap 15.5, Manager Client Tools 15 0.1.1710765237.46af599-150000.1.21.2
- uyuni-common-libs Manager Client Tools 15 4.3.10-150000.1.39.2
suse advisories SUSE-SU-2024:1509-1SUSE-SU-2020:3309-1
- ansible-14 openSUSE Tumbleweed 14.6.0-1.1
- ansible-13 openSUSE Tumbleweed 13.7.0-1.1
- ansible-12 openSUSE Tumbleweed 12.2.0-1.1
- ansible-11 openSUSE Tumbleweed 11.11.0-1.1
- ansible-10 openSUSE Tumbleweed 10.6.0-1.1
- ansible-9 openSUSE Tumbleweed 9.8.0-1.1
- ansible Package Hub 15 SP3, openSUSE Leap 15.3 2.9.21-bp153.2.3.1
opensuse advisories openSUSE-SU-2026:12447-1openSUSE-SU-2026:10944-1openSUSE-SU-2025:15753-1openSUSE-SU-2025:15605-1openSUSE-SU-2024:14536-1openSUSE-SU-2024:14244-1
- ansible Alpine 3.10 2.8.15-r0
- ansible Alpine 3.12, Alpine 3.11 2.9.13-r0
- ansible-base Alpine 3.15, Alpine 3.14, Alpine 3.13 2.9.13-r0
alpine advisories ALPINE-CVE-2020-14330
Alpine secdb © Alpine Linux, from https://secdb.alpinelinux.org via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- github.com/ansible/ansible@e0f25a2 commit
- github.com/ansible/ansible#69653 pull request
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-14330 updated cvss 5.0
Ansible: masked keys for uri module are exposed into content and json output
-
Red Hat Ansible Tower 3 ansible Red Hat Ceph Storage 2 ansible Red Hat Ceph Storage 3 ansible Red Hat OpenStack Platform 10 (Newton) ansible Red Hat OpenStack Platform 13 (Queens) ansible Red Hat Storage 3 ansibleaffected: workaround, no fix planned “There is no mitigation for this issue.”
-
Red Hat Ansible Engine 2.8 for RHEL 7 Server ansible 2.8.15-1.el7ae Red Hat Ansible Engine 2.8 for RHEL 8 ansible 2.8.15-1.el8aefixed: vendor fix “There is no mitigation for this issue.” RHSA-2020:3600
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
0.57% chance of exploitation in the next 30 days, higher than 47% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/ansible/ansible/issues/68400 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 5.0 | CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:H/I:N/A:N |
| NVD | 3.1 | 5.5 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N |
| NVD | 2.0 | 2.1 | AV:L/AC:L/Au:N/C:P/I:N/A:N |
| GitHub | 3.1 | 5.5 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | ansible | <2.10.0 |
2.10.0 |
Affected products
- Red Hat Ansible
Classification
References
-
github.com
/ansible/ansible/pull/69653
web
-
github.com
/ansible/ansible/commit/e0f25a2b1f9e6c21f751ba0ed2dc2eee2152983e
web
-
github.com
/ansible/ansible/issues/68400
web, exploit, issue-tracking, third-party-advisory, report
-
debian.org
/security/2021/dsa-4950
vendor-advisory, web, third-party-advisory
-
bugzilla.redhat.com
/show_bug.cgi?id=CVE-2020-14330
web, issue-tracking, vendor-advisory, report
-
nvd.nist.gov
/vuln/detail/CVE-2020-14330
advisory
-
github.com
/advisories/GHSA-785x-qw4v-6872
advisory
-
github.com
/ansible/ansible
package
-
github.com
/pypa/advisory-database/tree/main/vulns/ansible/PYSEC-2020-3.yaml
web
Sources
- CVE List CVE-2020-14330
- GitHub Advisory GHSA-785x-qw4v-6872
- NVD CVE-2020-14330
- OSV PYSEC-2020-3
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.