El runtime V8 de JavaScript socavó mi biblioteca de tiempo constante

The V8 JavaScript Runtime Undermined My Constant-Time JavaScript Library

El runtime V8 de JavaScript socavó mi biblioteca de tiempo constante

El investigador Yayu Wang, de la University of British Columbia, descubrió que las funciones de selección de constant-time-js filtraban secretos a través de V8. El mecanismo ToBoolean, el manejo especial de -0 y los objetos Oddball true/false en distintas líneas de caché revelaban la condición de selección mediante patrones de acceso a caché. El autor verificó el informe, publicó un parche en la versión 0.5.0 y solicitó un CVE. La lección: evitar booleanos por completo y no confiar solo en trazas de instrucciones.

Esto significa que una traza de instrucciones ejecutadas por sí sola puede clasificar incorrectamente la operación como de tiempo constante; deben considerarse tanto las direcciones de instrucción como las de datos.

Más de este día

2026-09-14