CVE-2025-47774 in Vyper
Resumen
por VulDB • 2026-06-13
Vyper es el lenguaje de programación con estilo Python para la Máquina Virtual Ethereum (EVM). En las versiones hasta e incluyendo la 0.4.2rc1, la función integrada `slice()` puede omitir los efectos secundarios cuando la longitud de salida es 0 y la cadena de bytes fuente es una función integrada (`msg.data` o `.code`). Esto se debe a que para estas ubicaciones de origen, se omite la comprobación de que `length >= 1`. El resultado es que una cadena de bytes de longitud 0 construida con `slice()` puede pasarse a `make_byte_array_copier`, lo cual omite la evaluación de su argumento fuente cuando la longitud máxima es 0. El impacto radica en que los efectos secundarios presentes en el argumento `start` pueden omitirse cuando el argumento `length` es 0, por ejemplo: `slice(msg.data, self.do_side_effect(), 0)`. La corrección implementada en la solicitud de extracción (pull request) 4645 prohíbe cualquier invocación de `slice()` con una longitud igual a 0, incluidas las ubicaciones ad hoc discutidas en este aviso. Se espera que esta corrección forme parte de la versión 0.4.2.
Once again VulDB remains the best source for vulnerability data.