CVE-2020-14343: Input Validation
A vulnerability was discovered in the PyYAML library in versions before 5.4, where it is susceptible to arbitrary code execution when it processes untrusted YAML files through the fullload method or with the FullLoader loader. Applications that use the library to process untrusted input may be vulnerable to this flaw. This flaw allows an attacker to execute arbitrary code on the system by abusing the python/object/new constructor. This flaw is due to an incomplete fix for CVE-2020-1747.
Other sources
A vulnerability was discovered in the PyYAML library, where it is susceptible to arbitrary code execution when it processes untrusted YAML files through the fullload method or with the FullLoader loader. Applications that use the library to process untrusted input may be vulnerable to this flaw. This flaw allows an attacker to execute arbitrary code on the system by abusing the python/object/new constructor. This flaw is due to an incomplete fix for CVE-2020-1747.
The fix made in PyYAML for CVE-2020-1747 was not sufficient to resolve the issue.
Reference: https://github.com/yaml/pyyaml/issues/420
— Red Hat
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
redhat/python-pyyamlto a version that resolves this vulnerability.Fixed in 0:5.4.1-1.el7 - Upgrade
Upgrade
redhat/PyYAMLto a version that resolves this vulnerability.Fixed in 5.4 - Upgrade
Upgrade
pip/PyYAMLto a version that resolves this vulnerability.Fixed in 5.4 - Upgrade
Upgrade
PyYAMLto a version that resolves this vulnerability.Fixed in 5.4 - Configuration
Use yaml.safe_load or the SafeLoader loader when parsing untrusted YAML input instead of full_load or FullLoader.
PyYAML YAML loader = safe_load or SafeLoader
Event History
Parent advisories
This vulnerability appears in the following advisories.
Frequently Asked Questions
What is CVE-2020-14343?
CVE-2020-14343 is a vulnerability in the PyYAML library that allows arbitrary code execution.
What is the severity of CVE-2020-14343?
The severity of CVE-2020-14343 is critical with a CVSS score of 9.8.
Which software versions are affected by CVE-2020-14343?
Versions before 5.4 of the PyYAML library, PyYAML package 5.4, python-pyyaml package up to 0:5.4.1-1.el7, and certain versions of Oracle Communications Cloud Native Core Network Function Cloud Native Environment are affected by CVE-2020-14343.
How can I fix CVE-2020-14343?
Update the PyYAML library or the affected software to version 5.4 or higher.
Where can I find more information about CVE-2020-14343?
You can find more information about CVE-2020-14343 on the NIST National Vulnerability Database (NVD), GitHub, and Red Hat Bugzilla.