Vulnerabilidades de seguridad derivadas del PRNG débil de Dart/Flutter

2024-12-13

La investigación de Zellic descubrió múltiples vulnerabilidades de seguridad causadas por un generador de números pseudoaleatorios (PRNG) débil en Dart/Flutter. Un fallo en la inicialización de la función `Random()` dentro del SDK de Dart resultó en una entropía insuficiente en las claves generadas, haciéndolas susceptibles a ataques de fuerza bruta. Esto permitió a los atacantes acceder fácilmente al Dart Tooling Daemon, permitiéndoles leer o escribir archivos del espacio de trabajo e incluso ejecutar código arbitrario. Además, los proyectos Proton Wallet y SelfPrivacy también se vieron afectados por este PRNG débil, experimentando vulnerabilidades de cifrado y problemas de contraseñas predecibles, respectivamente. Si bien la vulnerabilidad se ha corregido, se insta a los desarrolladores a tener precaución al usar la función `Random()` y utilizar `Random.secure()` cuando se necesiten números aleatorios criptográficamente seguros.

Leer más