YubiKey – klucz do bezpieczeństwa Twoich kont

Yubikey 5 series NFC

Coraz częściej słyszymy o przejęciach kont. Główną przyczyną ataków jest phishing – czyli oszustwo mające na celu wyłudzenie Twoich danych. Atakujący używają do tego technik socjotechnicznych, tak aby wpłynąć maksymalnie na użytkownika i wywrzeć presję wykonania określonych zadań. I my, będąc ofiarami ataków te zadania wykonujemy podając im wszelkie dane. I tak naprawdę, hakerzy nie włamują się na nasze konta. W wyniku skutecznego ataku, my sami im te dane logowania przekazujemy. Atakujący je po prostu wykorzystują do zalogowania.

W drodze rozwoju technologii, zostało opracowane pojęcie wieloskładnikowego uwierzytelniania – MFA. Idea MFA polega na tym, że oprócz hasła wykorzystuje dodatkowy czynnik, który potwierdza naszą tożsamość. Podstawowy taki czynnik to kod z SMSa czy z maila. Potem wprowadzono aplikacje generujące kody jednorazowe lub dodatkowe powiadomienia na telefon. Jak się okazało z czasem, te metody są jednak podatne na ataki Man-In-the-Middle. Jak wygląda atak man-in-the-middle opisywałem w tym wpisie.

W takich przypadkach, z pomocą przychodzi protokół FIDO (Fast Identity Online), który niejako wyręcza użytkownika w weryfikacji linków i decyduje o tym, czy strona na której użytkownik się znajduje i próbuje się zalogować jest znana kluczowi czy też nie. Jeśli klucz nie ma zapisanych poświadczeń dla takiej strony, to nie dopuści do logowania. Protokół FIDO został opracowany przed organizację FIDO Alliance w której skład wchodzą m.in. Intel, Microsoft, Yubico, czy Lenovo. FIDO Alliance opracowała również następcę – protokół FIDO2, który umożliwia logowanie bezhasłowe. Protokoły FIDO i FIDO2 oparte są na kryptografii asymetrycznej, co oznacza, że wykorzystujemy parę kluczy kryptograficznych (publiczny i prywatny). Klucz publiczny jest przechowywany na serwerze na którym mamy konto, natomiast klucz prywatny jest co do zasady przechowywany na urządzeniu użytkownika, w bezpieczny sposób bez możliwości wyeksportowania tego klucza. Różnice pomiędzy FIDO i FIDO2 są takie, że protokół FIDO wykorzystujemy jako drugi składnik logowania – po haśle (U2F), FIDO2 – nie używa tradycyjnych haseł. Warto dodać, że nie ma ograniczeń ilościowych jeśli chodzi o poświadczenia FIDO, dla FIDO2 jest to 100 poświadczeń.

Przejdźmy teraz do samych urządzeń, które pozwalają na używanie tych dobrodzejstw. Klucz to urządzenie, z wyglądu przypominające pendrive, które możemy używać zarówno z telefonem jak i komputerem. Urządzenie podczas logowania wymaga kodu PIN w celu zalogowania się do serwisu. Po 8 próbach błędnego wpisania kodu, klucz jest zablokowany i musi być zresetowany do ustawień fabrycznych, a więc tracimy wszelkie poświadczenie zapisane na nim. Aby klucz działał poprawnie, nie trzeba instalować żadnych sterowników – działa bez problemu na wszystkich popularnych systemach.

Yubico oferuje kilka rodzajów kluczy, które różnią się funkcjonalnością i ceną. W tym wpisie skupię się na budowie klucza YubiKey serii 5, który jest najbardziej rozbudowany jeśli chodzi o funkcjonalności.

www.yubico.com

Klucz Yubico serii 5 jest dostępny w kilku wariantach. Są dostępne wersje „normalne” oraz wersje nano. Wersje większe dodatkowo mają obsługę NFC, zatem możemy je używać również na urządzeniach mobilnych. Dodatkowo, klucze są dostępne z wejściem USB A oraz USB C. Proces logowania wygląda tak, że po włożeniu klucza musimy wpisać PIN do klucza i dodatkowo potwierdzamy swoją obecność dotknięciem klucza.

Klucz, tak jak na poniższym obrazku obsługuje wiele protokołów. Obsługuje przede wszystkim protokoły FIDO i FIDO2, może być nośnikiem certyfikatów np. do logowania, a więc może działać jako karta inteligentna np. do logowania do Windows. Klucz może przechowywać certyfikaty OpenPGP, a więc mogą być one używane np. do podpisywania maili czy logowania do SSH. Na kluczu możemy zapisać 2FA w postaci kodów jednorazowych – takie jakie zapewne znacie z aplikacji MS Authenticator. Chociaż przechowuje poświadczenia logowania to koniecznie wspomnieć należy, że to nie to samo co menadżer haseł. Na kluczu przechowujemy certyfikaty a nie hasła. Idąc dalej, nawet jeśli ktoś przechwyci Twoje hasło to jeśli masz konfigurowane MFA w postaci FIDO (U2F) to atakujący nie będzie w stanie zalogować się do Twojego konta bez poznania kodu PIN i bez fizycznego posiadania klucza.

www.yubico.com

Co ciekawe, a mało osób ma świadomość, klucz można używać również jako karta do kontroli dostępu czy do follow me print na drukarkach. Wystarczy mieć czytniki NFC.

Obecnie coraz więcej serwisów obsługuje logowanie kluczem. Cieszy mnie fakt, że w Polsce są już 4 banki, które oficjalnie wspierają klucze FIDO. Są to Banki Spółdzielcze, bank ING, PKO BP i Pekao SA.

Trzeba pamiętać, że tak jak w przypadku kluczy do domu, należy mieć skonfigurowane 2 klucze do każdego konta, tak aby w przypadku zagubienia jednego z nich była możliwość zalogowania się do konta.

Klucze są wodo i pyło odporne, sam używam już kilka lat i klucz nadal działa.

Reasumując, obecne maile czy strony phishingowe są tak przygotowane, że często ciężko rozpoznać czy jest to próba oszustwa. Warto wykorzystać technologię do pomocy w walce z hakerami. Najprostszy klucz (YubiKey Security Key) można kupić już od 130 PLN. Pamiętajmy, że należy mieć skonfigurowane 2 klucze, co daje koszt ok 260 PLN. Porównując to do korzyści jakie możemy osiągnąć – jest to niewielka kwota.

A czy Ty używasz klucza sprzętowego do logowania?

Komentarze

Nie ma jeszcze komentarzy. Może zaczniesz dyskusję?

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *