Vulnerabilidad en Vyper (CVE-2024-32647)
Gravedad CVSS v3.1:
MEDIA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
25/04/2024
Última modificación:
02/01/2025
Descripción
Vyper es un lenguaje de contrato inteligente pitónico para la máquina virtual Ethereum. En las versiones 0.3.10 y anteriores, el uso de la función incorporada `create_from_blueprint` puede resultar en una vulnerabilidad de doble evaluación cuando `raw_args=True` y el argumento `args` tienen efectos secundarios. Se puede ver que la función `_build_create_IR` del incorporado `create_from_blueprint` no almacena en caché el argumento `args` mencionado en la pila. Como tal, se puede evaluar varias veces (en lugar de recuperar el valor de la pila). No se encontraron contratos de producción vulnerables. Además, la doble evaluación de los efectos secundarios debería poder descubrirse fácilmente en las pruebas de los clientes. Como tal, el impacto es bajo. Al momento de la publicación, no existen versiones fijas.
Impacto
Puntuación base 3.x
5.30
Gravedad 3.x
MEDIA
Productos y versiones vulnerables
CPE | Desde | Hasta |
---|---|---|
cpe:2.3:a:vyperlang:vyper:*:*:*:*:*:python:*:* | 0.4.0 (excluyendo) |
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/vyperlang/vyper/blob/cedf7087e68e67c7bfbd47ae95dcb16b81ad2e02/vyper/builtins/functions.py#L1847
- https://github.com/vyperlang/vyper/security/advisories/GHSA-3whq-64q2-qfj6
- https://github.com/vyperlang/vyper/blob/cedf7087e68e67c7bfbd47ae95dcb16b81ad2e02/vyper/builtins/functions.py#L1847
- https://github.com/vyperlang/vyper/security/advisories/GHSA-3whq-64q2-qfj6