A GitHub blokkolta az SSH-kulcsokat azoknál a Git-klienseknél, amelyek a kulcsok generálásához a keypair JavaScript könyvtárat használták. Például blokkolásra kerültek a GitKraken Git-klient kulcsai. A sérülékenység miatt a generált RSA-kulcsok előrejelezhetők, mivel a véletlenszerű számok generálásához szükséges entropy minősége jelentősen csökkent. A probléma a keypair 1.0.4-es változatában és a GitKraken 8.0.1-es verziójában került megoldásra.
A sérülékenység megjelenésének oka a kulcs kialakítási folyamatában a „b.putByte(String.fromCharCode(next & 0xFF))” hívás volt, miközben a putByte metódusban ismételt hívás történt az fromCharCode metódusra. A fromCharCode dupla hívása („String.fromCharCode( String.fromCharCode(next & 0xFF) )”) azt eredményezte, hogy a buffer nagy része nullákkal lett kitöltve, vagyis a kulcs „véletlen” adatok alapján lett generálva, amelyek 97%-ban nullákból álltak.
Forrás: opennet.ru
