CVE

Vulnerabilidad en Vyper (CVE-2023-46247)

Severidad:
ALTA
Type:
No Disponible / Otro tipo
Fecha de publicación:
13/12/2023
Última modificación:
19/12/2023

Descripción

Vyper es un lenguaje de contrato inteligente pitónico para la máquina virtual Ethereum (EVM). Los contratos que contienen matrices grandes podrían subasignar la cantidad de ranuras que necesitan en 1. Antes de v0.3.8, el cálculo para determinar cuántas ranuras necesitaba una variable de almacenamiento usaba `math.ceil(type_.size_in_bytes / 32)`. El paso de punto flotante intermedio puede producir un error de redondeo si hay suficientes bits configurados en la mantisa IEEE-754. En términos generales, si `type_.size_in_bytes` es grande (> 2**46) y ligeramente menor que una potencia de 2, el cálculo puede sobrestimar cuántas ranuras se necesitan por 1. Si `type_.size_in_bytes` es ligeramente mayor que una potencia de 2, el cálculo puede subestimar cuántas ranuras se necesitan por 1. Este problema se solucionó en la versión 0.3.8.

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:a:vyperlang:vyper:*:*:*:*:*:python:*:* 0.3.8 (excluyendo)