Vulnerabilidad en Python Pyramid (CVE-2023-40587)
Gravedad CVSS v3.1:
MEDIA
Tipo:
CWE-22
Limitación incorrecta de nombre de ruta a un directorio restringido (Path Traversal)
Fecha de publicación:
25/08/2023
Última modificación:
16/02/2024
Descripción
Pyramid es un framework web de Python de código abierto. Una vulnerabilidad de Path Traversal en las versiones 2.0.0 y 2.0.1 de Pyramid afecta a los usuarios de Python 3.11 que utilizan una vista estática de Pyramid con una ruta completa del sistema de archivos y tienen un archivo `index.html` que se encuentra exactamente un directorio encima de la ubicación de la ruta del sistema de archivos de la vista estática. No existe ningún otro Path Traversal y el único archivo que podría revelarse accidentalmente es `index.html`. La versión 2.0.2 de Pyramid rechaza cualquier ruta que contenga un byte nulo por precaución. Si bien es válido en nombres de directorios/archivos, consideraríamos un error utilizar bytes nulos al nombrar archivos/directorios. En segundo lugar, Python 3.11 y 3.12 han solucionado el problema subyacente en `os.path.normpath` para que ya no se trunque en el primer `0x00` encontrado, devolviendo el comportamiento a Python anterior a 3.11, una versión aún no publicada. Las correcciones estarán disponibles en: Python 3.12.0rc2 y 3.11.5. Algunos workarounds están disponibles. Utilice una versión de Python 3 que no se vea afectada, cambie temporalmente a la serie Python 3.10 o espere hasta que se lance Python 3.11.5 y actualice a la última versión de la serie Python 3.11.
Impacto
Puntuación base 3.x
5.30
Gravedad 3.x
MEDIA
Productos y versiones vulnerables
CPE | Desde | Hasta |
---|---|---|
cpe:2.3:a:agendaless:pyramid:*:*:*:*:*:python:*:* | 2.0 (incluyendo) | 2.0.2 (excluyendo) |
cpe:2.3:o:fedoraproject:fedora:38:*:*:*:*:*:*:* | ||
cpe:2.3:o:fedoraproject:fedora:39:*:*:*:*:*:*:* |
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/Pylons/pyramid/commit/347d7750da6f45c7436dd0c31468885cc9343c85
- https://github.com/Pylons/pyramid/security/advisories/GHSA-j8g2-6fc7-q8f8
- https://github.com/python/cpython/issues/106242
- https://github.com/python/cpython/pull/106816
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/LYSDTQ7NP5GHPQ7HBE47MBJQK7YEIYMF/
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/OQIPHQTM3XE5NIEXCTQFV2J2RK2YUSMT/