OK
Błędy w implementacji kryptografii

Błędy w implementacji kryptografii

Błędy w implementacji kryptografii

Komentarz zainspirowany artykułem na portalu arstechnica.com:

https://arstechnica.com/information-technology/2017/10/crypto-failure-cripples-millions-of-high-security-keys-750k-estonian-ids/


Czescy i słowaccy naukowcy ogłosili odkrycie problemu z generowaniem kluczy RSA przez układy firmy Infineon tzw TPM (Trusted Platform Module).


Takie układy są powszechnie stosowane do generowania kluczy kryptograficznych w laptopach, kartach inteligentnych, czy modułach HSM.


Jednymi z ofiar tego problemu są obywatele Estonii poprzez swoje e-dowody osobiste.


Krótkie przypomnienie na czym polega szyfrowanie RSA: losowane są 2 liczby pierwsze (bardzo duże), a następnie w wyniku ich mnożenia otrzymujemy klucz publiczny. Klucz prywatny to odwrotność modułu obliczana na podstawie tych samych 2 liczb pierwszych.
Klucz publiczny jest jawny, a mimo, że operacja mnożenia jest prosta do wykonania, to operacja odwrotna zwana faktoryzacją już nie. To powoduje, że klucz prywatny jest bezpieczny.


Czas faktoryzacji poprawnie wygenerowanego klucza RSA o długości 2048 bitów to przy obecnym stanie wiedzy miliony lat (Najdłuższy złamany klucz RSA miał niewiele ponad 700 bitów – patrz: https://en.wikipedia.org/wiki/RSA_numbers#RSA-2048).


W przypadku komponentów firmy Infineon klucze były generowane w sposób przewidywalny – klucze o długości 2048 bitów można złamać w ciągu dni używając chmury obliczeniowej (szczególnie jeśli haker ma dostęp do chmury, za którą nie musi płacić, sesesesese….).


Inne typowe błędy w stosowaniu kryptografii to użycie niewłaściwego trybu szyfrowania (CBC vs EBC etc), użycie kryptografii do niewłaściwych celów (jak uwierzytelnianie użytkowników), czy zwracanie informacji na temat procesu szyfrowania (czas, zużycie energii – tzw. side channel attacks).


I ostatnie – produkty Infineon były certyfikowane tzn. zostały poddane audytowi, jednakże odbyło się to kilka lat temu, co jak dobrze wiemy, w branży IT jest wiecznością. W obszarze bezpieczeństwa ciągle wykrywane są nowe typy ataków. Nasz produkt może też w końcu trafić na kogoś, kto się nim zainteresuje od tej strony. Warto testy bezpieczeństwa powtarzać wielokrotnie, z użyciem różnych technik.


W firmie IDEMIA wykonujemy testy penetracyjne naszych rozwiązań a także dbamy o jakość kodu za pomocą statycznej analizy, czy analizy „podatnych” komponentów. Żaden z naszych produktów nie używa feralnej biblioteki do generowania kluczy.

ul. Jaracza 62
90-251 Łódź
Bitnami