Vulnerabilidad en PLY (Python Lex-Yacc) (CVE-2025-56005)
Gravedad CVSS v3.1:
CRÍTICA
Tipo:
CWE-502
Deserialización de datos no confiables
Fecha de publicación:
20/01/2026
Última modificación:
06/02/2026
Descripción
Una característica indocumentada e insegura en la librería PLY (Python Lex-Yacc) 3.11 permite la ejecución remota de código (RCE) a través del parámetro 'picklefile' en la función 'yacc()'. Este parámetro acepta un archivo .pkl que se deserializa con 'pickle.load()' sin validación. Debido a que 'pickle' permite la ejecución de código incrustado a través de '__reduce__()', un atacante puede lograr la ejecución de código pasando un archivo pickle malicioso. El parámetro no se menciona en la documentación oficial ni en el repositorio de GitHub, sin embargo, está activo en la versión de PyPI. Esto introduce una puerta trasera sigilosa y un riesgo de persistencia. NOTA: Un tercero afirma que esta vulnerabilidad debería ser rechazada porque la prueba de concepto no demuestra la ejecución de código arbitrario y no se completa con éxito.
Impacto
Puntuación base 3.x
9.80
Gravedad 3.x
CRÍTICA
Productos y versiones vulnerables
| CPE | Desde | Hasta |
|---|---|---|
| cpe:2.3:a:dabeaz:ply:3.11:*:*:*:*:*:*:* |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página
Referencias a soluciones, herramientas e información
- https://github.com/bohmiiidd/Undocumented-RCE-in-PLY
- https://github.com/bohmiiidd/Undocumument_RCE_PLY-yacc-CVE-2025-56005
- https://github.com/tom025/ply_exploit_rejection
- https://github.com/tom025/ply_exploit_rejection/issues/1
- http://www.openwall.com/lists/oss-security/2026/01/23/4
- http://www.openwall.com/lists/oss-security/2026/01/23/5
- http://www.openwall.com/lists/oss-security/2026/01/28/5
- http://www.openwall.com/lists/oss-security/2026/01/29/1
- http://www.openwall.com/lists/oss-security/2026/01/29/2
- http://www.openwall.com/lists/oss-security/2026/01/30/1



