r   e   k   l   a   m   a
r   e   k   l   a   m   a

Błąd Infineona to miliony kluczy RSA do wymiany. Można je złamać za grosze

Strona główna AktualnościBEZPIECZEŃSTWO

Zasygnalizował ten problem Microsoft w swoich październikowych biuletynach bezpieczeństwa – układ Trusted Platform Module produkcji Infineona miał generować słabe pary kluczy, czyniąc szyfrowanie w praktyce bezużytecznym. Za sprawą czeskich i słowackich badaczy z Uniwersytetu Masaryka dowiadujemy się jednak o realnej skali zagrożenia. Co najmniej jedna czwarta wszystkich modułów TPM na świecie generowała słabe klucze. Laptopy, serwery, smartkarty, sprzętowe tokeny bezpieczeństwa takie jak popularny Yubikey – wygenerowane na nich klucze można złamać stosunkowo niewielkim kosztem. Katastrofa gorsza chyba nawet od ostatnio ujawnionych luk w WPA2.

Formalne szczegóły zostaną przedstawione 2 listopada, podczas konferencji ACM, w artykule pt. The Return of Coppersmith's Attack: Practical Factorization of Widely Used RSA Moduli, autorstwa Matusa Nemeca, Marka Sysa, Petra Svendy, Dusana Klineca i Vasheka Matyi – badaczy z Uniwersytetu Masaryka, Uniwersytetu Weneckiego oraz firmy Enigma Bridge. Jednak już teraz na łamach wiki CRoCS (Centre for Research on Cryptography and Security) możemy się bliżej zapoznać z błędem w generacji par kluczy RSA, który trafił do biblioteki kryptograficznej wykorzystywanej w modułach TPM produkcji Infineon Technologies AG. Otrzymał on nazwę ROCA (CVE-2017-15361).

Sytuacja wygląda bardzo nieciekawie. Produkowane od 2012 roku moduły, które otrzymały najwyższe certyfikaty bezpieczeństwa NIST FIPS 140-2 oraz CC EAL 5+, powszechnie wykorzystywane w stosowanych w e-administracji smartkartach, tokenach uwierzytelniających, modułach zabezpieczających laptopy i serwery, złamać można niewielkim kosztem. Wszystko to za sprawą błędu w firmware, który sprawia, że klucze RSA-1024 i RSA-2048, generowane za pomocą takich modułów, stają się podatne na atak faktoryzacyjny. Jak niewielki to koszt? Zakładając zastosowanie procesora Xeon E5-2650, odkrywcy przedstawiają następujący cennik odtworzenia klucza prywatnego ze znanego klucza publicznego:

r   e   k   l   a   m   a
  • najsłabsze klucze 512-bitowe – 2 procesorogodziny, tj. 6 centów
  • słabe klucze 1024-bitowe – 97 procesorodni, tj. od 40 do 80 dolarów
  • powszechnie używane klucze 2048-bitowe – 51400 procesorodni, tj. 20-40 tys. dolarów.

Oczywiście nie trzeba czekać 141 lat na złamanie 2048-bitowego klucza. Atak łatwo się paralelizuje: dla n procesorów, maksymalny czas odtworzenia klucza prywatnego zostaje zmniejszony n-krotnie. Obfitość mocy obliczeniowej w chmurze sprawia, że nie trzeba inwestować nawet we własne superkomputery, praktycznie każdy odpowiednio zasobny napastnik może te wadliwe klucze RSA-2048 złamać w czasie kilku dni. Podane tu ceny wynikają właśnie z analizy kosztów wykorzystania instancji obliczeniowych Amazon EC2 c4.

Można więc śmiało założyć, że np. wykradzione zaszyfrowane laptopy z poufnymi firmowymi danymi, które do tej pory były poza zasięgiem przemysłowych szpiegów, już teraz poddawane są siłowemu łamaniu klucza – o ile pochodzą od takich firm jak HP, Lenovo czy Fujitsu, które z felernych czipów Infineona korzystały. Tak samo podatne mogą być te słynne estońskie karty identyfikacyjne, wykorzystywane do załatwiania spraw z e-administracją tego państwa.

Zastanawia nas tylko tytuł pracy czeskich i słowackich badaczy: powrót ataku Coppersmitha? Atak Coppersmitha stosowany jest w wypadkach, kiedy znany jest fragment klucza prywatnego. Ujawniono też, że ta algorytmiczna podatność wynika ze specyficznej struktury wygenerowanych liczb pierwszych i nie ma nic wspólnego ze słabością generatora liczb pseudolosowych.

Co mogą obecnie zrobić użytkownicy, obawiający się, że i ich szyfrowanie jest do niczego? Najprościej jest przesłać swój klucz publiczny RSA do webowej aplikacji keychest.net/roca – sprawdzi ona, czy można z niego łatwo odtworzyć klucz prywatny.Można też podpisany PGP lub S-MIME e-mail wysłać pod adresem roca@keychest.net, uzyskamy zwrotną odpowiedź od automatu.

Producenci sprzętu już wydają łatki do firmware, które naprawią błąd w algorytmie. Jeśli jednak załatanie urządzeń będzie niemożliwe, to warto zastosować inny kryptosystem, np. na bazie krzywych eliptycznych (ECC), lub też wygenerować bezpieczną parę kluczy RSA za pomocą np. biblioteki OpenSSL – one nie będą podatne na to zagrożenie.

© dobreprogramy
r   e   k   l   a   m   a
r   e   k   l   a   m   a

Komentarze

r   e   k   l   a   m   a
r   e   k   l   a   m   a
Czy wiesz, że używamy cookies (ciasteczek)? Dowiedz się więcej o celu ich używania i zmianach ustawień.
Korzystając ze strony i asystenta pobierania wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.