Unsafe pyyaml load usage in PyAnyAPI
An exploitable vulnerability exists in the YAML parsing functionality in the YAMLParser method in Interfaces.py in PyAnyAPI before 0.6.1. A YAML parser can execute arbitrary Python commands resulting in command execution because load is used where safe_load should have been used. An attacker can insert Python into loaded YAML to trigger this vulnerability.
Software afectado
Haz clic en una tecnología para ver todas sus vulnerabilidades.
| Plataforma | Paquete | Versiones vulnerables | Corregida en |
|---|---|---|---|
| Python (PyPI) | pyanyapi | < 0.6.1 | 0.6.1 |
Referencias
- https://pypi.python.org/pypi/pyanyapi/0.6.1
- https://github.com/Stranger6667/pyanyapi/releases/tag/0.6.1
- https://github.com/Stranger6667/pyanyapi/issues/41
- https://joel-malwarebenchmark.github.io/blog/2017/11/08/cve-2017-16616-yamlparser-in-pyanyapi/
- https://github.com/advisories/GHSA-vg8g-jpm9-jh8r
- https://nvd.nist.gov/vuln/detail/CVE-2017-16616
- https://github.com/Stranger6667/pyanyapi/commit/810db626c18ebc261d5f4299d0f0eac38d5eb3cf
- https://github.com/Stranger6667/pyanyapi
- https://github.com/pypa/advisory-database/tree/main/vulns/pyanyapi/PYSEC-2017-23.yaml
- https://joel-malwarebenchmark.github.io/blog/2017/11/08/cve-2017-16616-yamlparser-in-pyanyapi
- Vector CVSS
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H- Debilidad (CWE)
CWE-502- Plataforma
- Python (PyPI)
- Paquete
pyanyapi- Publicada
- 08.11.2017
- Actualizado
- 11.10.2026 11:20
Fuentes y licencias
OSV / GitHub Advisory Database - PYSEC-2017-23 - PyPA Advisory Database; CC BY 4.0
OSV / GitHub Advisory Database - GHSA-vg8g-jpm9-jh8r - CC BY 4.0
Historial de vulnerabilidades: pyanyapi
Todas las vulnerabilidades publicadas de este paquete (Python (PyPI)), de la más reciente a la más antigua. Muestra si es un fallo aislado o un paquete que hay que vigilar.
Esta es la única vulnerabilidad conocida de este paquete.
Identifica las vulnerabilidades de tu aplicación
Con la integración de DockRay y el inventario de software activado, DockRay compara las versiones notificadas de los componentes con las vulnerabilidades conocidas y avisa de las coincidencias confirmadas. La cobertura depende de la tecnología compatible y de los avisos disponibles.