GitHub ha bloqueado las claves SSH de los usuarios de clientes Git que utilizan la biblioteca JavaScript keypair para generar claves. Por ejemplo, las claves del cliente Git GitKraken se han visto afectadas. La vulnerabilidad provoca la formación de claves RSA predecibles debido a un error que reduce significativamente la calidad de la Entropía durante la generación de secuencias aleatorias para las claves. El problema se ha corregido en las versiones keypair 1.0.4 y GitKraken 8.0.1.
La causa de la vulnerabilidad fue el uso de la llamada «b.putByte(String.fromCharCode(next & 0xFF))» en el proceso de formación de la clave, donde el método putByte llamaba nuevamente al método fromCharCode. La doble llamada a fromCharCode («String.fromCharCode( String.fromCharCode(next & 0xFF) )») provocaba que gran parte del búfer de entropía se llenara de ceros, es decir, la clave se generaba a partir de datos «aleatorios» compuestos en un 97% por ceros.
Fuente: opennet.ru
