Vulnerabilidad en zksolc de Solidity para ZKsync (CVE-2024-45056)
Gravedad CVSS v3.1:
MEDIA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
29/08/2024
Última modificación:
03/09/2024
Descripción
zksolc es un compilador de Solidity para ZKsync. Todas las versiones de LLVM desde 2015 convierten `(xor (shl 1, x), -1)` en `(rotl ~1, x)` si se ejecutan con optimizaciones habilitadas. Aquí, `~1` se genera como un número de 64 bits sin signo (`2^64-1`). Este número se extiende a 256 bits en el destino EraVM, mientras que debería haberse extendido a signo. Por lo tanto, en lugar de producir `roti 2^256 - 1, x`, el compilador produce `rotl 2^64 - 1, x`. El análisis ha demostrado que ningún contrato se vio afectado a la fecha de publicación de este aviso. Este problema se ha solucionado en la versión 1.5.3. Se recomienda a los usuarios que actualicen y vuelvan a implementar todos los contratos. No existen workarounds para esta vulnerabilidad.
Impacto
Puntuación base 3.x
5.90
Gravedad 3.x
MEDIA
Productos y versiones vulnerables
| CPE | Desde | Hasta |
|---|---|---|
| cpe:2.3:a:matter-labs:zksolc:*:*:*:*:*:*:*:* | 1.5.3 (excluyendo) |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página



