YubiKey 5, najpopularniejszy token sprzętowy do uwierzytelniania dwuskładnikowego w oparciu o Standard FIDOzawiera lukę kryptograficzną, która sprawia, że urządzenie wielkości palca jest podatne na klonowanie, gdy osoba atakująca uzyska do niego tymczasowy fizyczny dostęp – stwierdzili we wtorek naukowcy.
Wada kryptograficzna, znana jako kanał bocznyznajduje się w małym mikrokontrolerze używanym w wielu innych urządzeniach uwierzytelniających, w tym w kartach inteligentnych używanych w bankowości, paszportach elektronicznych i uzyskiwaniu dostępu do bezpiecznych obszarów. Chociaż badacze potwierdzili, że wszystkie modele YubiKey z serii 5 można sklonować, nie testowali innych urządzeń korzystających z mikrokontrolera, takich jak SLE78 firmy Infineon i kolejnych mikrokontrolerów znanych jako Infineon Optiga Trust M i Infineon Optiga TPM. Badacze podejrzewają, że każde urządzenie wykorzystujące którykolwiek z tych trzech mikrokontrolerów i bibliotekę kryptograficzną Infineon zawiera tę samą lukę.
Łatanie niemożliwe
Producent kluczy YubiKey, firma Yubico, wydała komunikat doradczy w porozumieniu z A szczegółowy raport ujawnień z NinjaLab, firmy zajmującej się bezpieczeństwem, która dokonała inżynierii wstecznej serii YubiKey 5 i opracowała atak klonowania. Wszystkie YubiKeys z oprogramowaniem sprzętowym starszym niż wersja 5.7 – która została wydana w maju i zastępuje bibliotekę kryptonim Infineon niestandardową – są podatne na ataki. Aktualizacja oprogramowania sprzętowego klucza YubiKey nie jest możliwa. To sprawia, że wszystkie dotknięte YubiKeys są trwale podatne na ataki.
„Osoba atakująca może wykorzystać ten problem w ramach wyrafinowanego i ukierunkowanego ataku w celu odzyskania kluczy prywatnych, których dotyczy problem” – potwierdzono w poradniku. „Napastnik musiałby fizycznie posiadać klucz YubiKey, klucz bezpieczeństwa lub YubiHSM; wiedza o kontach, na które chcą kierować reklamy; oraz specjalistyczny sprzęt do przeprowadzenia niezbędnego ataku. W zależności od przypadku użycia osoba atakująca może również potrzebować dodatkowej wiedzy, w tym nazwy użytkownika, kodu PIN, hasła do konta lub klucza uwierzytelniającego.
Kanały boczne powstają w wyniku wskazówek pozostawionych w przejawach fizycznych, takich jak emanacje elektromagnetyczne, pamięci podręczne danych lub czas wymagany do wykonania zadania, które powoduje wyciek tajemnic kryptograficznych. W tym przypadku kanał boczny to czas potrzebny na obliczenia matematyczne zwane inwersją modułową. W kryptobibliotece Infineon nie wdrożono powszechnej obrony kanału bocznego, znanej jako czas stały, ponieważ wykonuje ona modułowe operacje inwersji z wykorzystaniem algorytmu podpisu cyfrowego krzywej eliptycznej. Stały czas zapewnia, że operacje kryptograficzne zależne od czasu są wykonywane w sposób jednolity, a nie zmienny, w zależności od konkretnych kluczy.
Dokładniej, kanał boczny znajduje się w implementacji Infineon Rozszerzonego Algorytmu Euklidesowego, metody służącej między innymi do obliczania odwrotności modułowej. Używając oscyloskopu do pomiaru promieniowania elektromagnetycznego podczas uwierzytelniania tokena, badacze mogą wykryć drobne różnice w czasie wykonania, które ujawniają efemeryczny klucz ECDSA tokena, znany również jako klucz jednorazowy. Dalsza analiza pozwala badaczom wyodrębnić tajny klucz ECDSA, który leży u podstaw całego bezpieczeństwa tokena.
We wtorkowym raporcie współzałożyciel NinjaLab, Thomas Roche, napisał: