First published: Mon Nov 18 2019(Updated: )
A vulnerability was discovered in the PyYAML library, where it is susceptible to arbitrary code execution when it processes untrusted YAML files through the full_load method or with the FullLoader loader. Applications that use the library to process untrusted input may be vulnerable to this flaw. An attacker could use this flaw to execute arbitrary code on the system by abusing the python/object/apply constructor.
Credit: cve@mitre.org cve@mitre.org
Affected Software | Affected Version | How to fix |
---|---|---|
Pyyaml Pyyaml | >=5.1<=5.1.2 | |
Fedoraproject Fedora | =30 | |
Fedoraproject Fedora | =31 | |
redhat/pyYAML | <5.2 | 5.2 |
pip/pyyaml | >=5.1<5.2 | 5.2 |
Use `yaml.safe_load` or the SafeLoader loader when you parse untrusted input.
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.
CVE-2019-20477 is a vulnerability in the PyYAML library that allows arbitrary code execution when processing untrusted YAML files.
PyYAML versions 5.1 through 5.1.2 are affected by CVE-2019-20477.
CVE-2019-20477 has a severity rating of 9.8 (Critical).
To fix CVE-2019-20477, upgrade to PyYAML version 5.2.
You can find more information about CVE-2019-20477 at the following references: [Link 1](https://access.redhat.com/security/cve/CVE-2017-18342), [Link 2](https://github.com/yaml/pyyaml/blob/master/CHANGES), [Link 3](https://bugzilla.redhat.com/show_bug.cgi/show_bug.cgi?id=1806010).