Członkowie zespołu Google Security opublikowali otwartą bibliotekę Paranoid, zaprojektowaną do identyfikowania niepewnych artefaktów kryptograficznych, takich jak klucze publiczne i podpisy cyfrowe, tworzone w podatnych systemach sprzętowych (HSM) i programowych. Kod jest napisany w języku Python i rozpowszechniany na licencji Apache 2.0.
Projekt może okazać się pomocny w pośredniej ocenie stosowania algorytmów i bibliotek, które mają znane luki i podatności wpływające na niezawodność generowanych kluczy i podpisów cyfrowych, jeśli weryfikowane artefakty są generowane przez sprzęt niedostępny do weryfikacji lub zamknięte komponenty stanowiące czarną skrzynkę. Biblioteka może także analizować zbiory liczb pseudolosowych pod kątem niezawodności ich generatora, a na podstawie dużej kolekcji artefaktów identyfikować wcześniej nieznane problemy wynikające z błędów programistycznych lub korzystania z niepewnych generatorów liczb pseudolosowych.
Podczas weryfikacji przy użyciu proponowanej biblioteki zawartości publicznego logu CT (Certificate Transparency), obejmującego informacje o ponad 7 miliardach certyfikatów, nie znaleziono problematycznych kluczy publicznych opartych na krzywych eliptycznych (EC) oraz podpisów cyfrowych opartych na algorytmie ECDSA, ale znaleziono problematyczne klucze publiczne oparte na algorytmie RSA. W szczególności zidentyfikowano 3586 niepewnych kluczy, wygenerowanych przez kod z nieusuniętym podatnością CVE-2008-0166 w pakiecie OpenSSL dla Debiana, 2533 kluczy związanych z podatnością CVE-2017-15361 w bibliotece Infineon oraz 1860 kluczy z podatnością związaną z wyszukiwaniem największego wspólnego dzielnika (GCD). Informacje o problematycznych certyfikatach, które nadal funkcjonują, zostały przesłane do urzędów certyfikacji w celu ich unieważnienia.

Źródło: opennet.ru
