Poważny błąd w pakiecie OpenSSL
Odkryto poważny błąd implementacyjny w pakiecie OpenSSL wykorzystywanym przez system Debian i dystrybucje na nim oparte (m.in. Ubuntu i Knoppix), który powoduje podczas generowania kluczy korzystanie z niewielkiego zbioru liczb pseudolosowych.
Podatność jest dziedziczona przez wszystkie aplikacje korzystające z podatnej wersji OpenSSLa (m.in. OpenSSH). Błąd ten został zgłoszony 13-tego maja tego roku. Powstał w wyniku usunięcia z kodu źródłowego pakietu małego fragmentu, co spowodowało osłabienie generatora liczb pseudolosowych. W efekcie jedyną zmienną wykorzystywaną w procesie generowania klucza, którą można uznać za “losową”, jest numer identyfikacyjny procesu (PID). Gwoli przypomnienia: w systemach linuksowych maksymalny numer procesu, to 32 768, co właściwie sprowadza do tej liczby maksymalną ilość wygenerowanych niepowtarzalnych kluczy przy takich samych parametrach wejściowych. Co więcej, w większości dystrybucjach debianowskich przydzielanie numeru PID odbywa się sekwencyjnie, co dodatkowo powoduje, że liczby pseudolosowe wykorzystywanych do generowania kluczy są jeszcze mniej “losowe”.
To wszystko sprawia, że potencjalna próba złamania klucza metodą brute-force może trwać znacznie krócej, niż zakładano (zmniejszenie potrzebnego do tego czasu do wartości akceptowalnej dla atakującego). Złamany klucz/certyfikat może być wykorzystany do podszycia się lub ataku typu man-in-the-middle na sesję SSH oraz SSL, co jest szczególnie groźne w kontekście bankowości elektronicznej, handlu elektronicznego, oraz innych serwisów WWW korzystających z połączeń szyfrowanych (HTTPS).
Wszystkie klucze SSH i SSL wygenerowane po wrześniu 2006 roku z użyciem pakietu OpenSSL wchodzącego w skład systemów opartych na dystrybucji Debiana mogą być podatne na złamanie. Zaleca się wygenerowanie wszystkich kluczy/certyfikatów na nowo. Należy pamiętać, że istotny jest system na którym został wygenerowany klucz, a nie system który go wykorzystuje. Może więc się zdarzyć, że podatny klucz będzie używany przez maszynę, na której nie ma ani Debiana, ani OpenSSL.
Poniżej przydatne narzędzie do testowania podatności kluczy:
Dostępne są już łaty do pobrania z oficjalnej strony Debiana:
Lista dystrybucji linuksowych opartych na Debianie:
Źródła:
Tags: Debian, luka, man-in-the-middle, OpenSSL, patch, SSH, SSL












