07-05-2022 / Od 0 do pentestera

Co to jest YubiKey i klucz U2F/FIDO2

Poniżej znajdziesz zbiór odpowiedzi na częste pytania na temat kluczy YubiKey. Więcej o kluczach dowiesz się z:

Instrukcję dodania klucza do konta Gmail/Google/Twitter/Github/WP.pl/Facebook/Microsoft znajdziesz tutaj.

  • Czy to materiał sponsorowany?
    • Nie. Po prostu polecam to, z czego sam korzystam.
  • Co to jest YubiKey?
    • YubiKey to fizyczny przedmiot wyglądem przypominający pendrive, który możesz włożyć do portu USB w swoim komputerze/telefonie.
  • Po co mi YubiKey?
    • Zapewnia on dodatkową warstwę ochrony Twoich danych. Jeżeli Twoja ulubiona strona wspiera klucz a Ty dodasz go do swojego konta - włamanie się na tak chronione konto będzie znacząco utrudnione (zakładam tutaj, że nie korzystasz z innych metod 2FA).
  • Jak się tego używa?
    • W najpopularniejszej konfiguracji po podaniu prawidłowego loginu i hasła do strony przeglądarka wyświetli odpowiedni komunikat prosząc Cię o włożenie klucza do portu USB. Następnie może Cię poprosić o podanie kodu PIN przypisanego do klucza i dotknięcie palcem guzika, który znajduje się na obudowie.
  • Czy muszę coś instalować?
    • Nie. Klucz działa na zasadzie Plug&Play. Nie wymaga żadnych dodatkowych sterowników/programów. Wystarczy sama przeglądarka.
  • Czy poradzi sobie z tym mój tata/mama?
    • Tak. Najtrudniejszym elementem może być dodanie klucza ponieważ opcje te są zazwyczaj nieco schowane. Szybki poradnik jak dodać klucz do konta w formie PDF znajdziesz tutaj.
  • Czy klucz chroni przed każdym atakiem?
    • Nie. Jeżeli na Twoim komputerze jest zainstalowane złośliwe oprogramowanie to potencjalny atakujący nadal może uzyskać dostęp do Twoich danych.
  • Czy to zadziała z moim telefonem/komputerem/systemem operacyjnym?
  • Używam 2FA i aplikacji w telefonie. Jaka jest różnica?
    • Kod wygenerowany w aplikacji możesz podyktować przez telefon lub podać na złośliwej stronie. Wtedy przestępca może go użyć do zalogowania się na Twoje konto. Danych wygenerowanych przez YubiKey nie da się "podyktować". Ktoś musi posiadać fizyczny dostęp do tego klucza aby go użyć.
  • Jaki klucz wybrać?
    • 99% użytkowników wystarczy tańszy klucz Security Key NFC lub Security Key C NFC (tak zwany niebieski - ponieważ jest właśnie tego koloru). Te klucze różnią się tylko rodzajem portu USB. Musisz sprawdzić jaki typ portu posiada Twój komputer/telefon. Pierwszy klucz to "zwykłe" USB zazwyczaj dostępne w starszych urządzeniach. Drugi klucz to USB typu C - dostępny w nowszych telefonach. Oba klucze można dodać do Facebooka, Twittera, Gmaila, Githuba czy konta Microsoft.
    • Klucze "czarne" YubiKey 5 są dużo droższe. Tak samo jak niebieskie pozwalają na logowanie do popularnych serwisów. Poza tym pozwalają na:
    • Klucze FIPS
      • Jeśli nie pracujesz dla rządu USA - nie potrzebujesz ich.
  • Czy potrzebuję osobnego klucza do telefonu i osobnego do komputera?
    • Nie. Jednego klucza możesz używać na dowolnej liczbie dowolnych urządzeń (o ile oczywiście jesteś w stanie go podłączyć - bo nie bardzo da się wpiąć klucz USB do złącza Lightning w telefonie bez przejściówki).
  • Na ilu serwisach go mogę używać?
    • Jednego klucza możesz używać na nieskończonej liczbie serwisów/stron. Chociaż jest tutaj malutkie ale (czytaj poniżej):
    • Klucz może działać w 2 trybach: U2F i FIDO2. Generalnie różnica jest taka:
      • U2F -> To najpopularniejszy obecnie tryb. Najpierw musisz się zalogować przy pomocy loginu i hasła. Dopiero potem jesteś proszony o włożenie klucza. W tym trybie nie ma limitów. Możesz zarejestrować jeden klucz na nieskończonej liczbie kont/serwisów.
      • FIDO2 -> Logujesz się samym kluczem lub loginem i kluczem (bez podawania hasła). W tym trybie możesz stworzyć 25 unikalnych kont. Na chwilę obecną ten tryb jest rzadko kiedy wspierany przez strony internetowe. Limit ten raczej na 100% Ci wystarczy.
      • Droższego (czarnego klucza) YubiKey 5 można też używać do generowania kodów 2FA. Może ich wtedy przechowywać 32.
  • Czy jednym kluczem mogę się zalogować na kilka kont?
    • Tak. Dla przykładu możesz mieć kilka kont na Gmailu i do każdego z nich logować się tym samym kluczem.
  • Czy potrzebuję NFC?
    • NFC jest bardzo przydatne zwłaszcza jeśli zamierzasz korzystać z kluczy na telefonie. Jeśli Twoja komórka obsługuje NFC - to zamiast wkładać klucz do portu - wystarczy, że przyłożysz go do odpowiedniego miejsca. Na aukcjach można czasami trafić na starsze niebieskie klucze bez NFC (rozpoznasz je dzięki cyfrze 2 "wybitej" na kluczu). Osobiście proponuję dopłacić kilka złotych do droższej wersji z NFC. Podziękujesz mi później 😉
  • Ale to duże. Gdzie to trzymać?
    • Większość ludzi przypina klucz do kluczy do domu/mieszkania. Istnieją również wersje nano, które praktycznie całe mieszczą się w porcie USB.
  • Gdzie to działa?
    • Obsługiwane strony znajdziesz tutaj lub tutaj (interesuje Cię kolumna hardware token).
    • Te najpopularniejsze to:
      • Gmail/Google
      • Facebook
      • Twitter
      • GitHub
      • GitLab
      • WP Poczta
      • Microsoft
  • Czy jakiś bank w Polsce to obsługuje?
    • Nie.
  • Czy mogę to dodać do WordPressa?
  • Ile kluczy potrzebuję?
    • Teoretycznie jeden. W praktyce - co na mniej dwa. Dlaczego? Jeśli zgubisz/zniszczysz jeden klucz - dostęp do konta może być znacząco utrudniony. Drugi klucz pełni zatem funkcję backupu.
  • Jak zadbać o backup?
    • Jeśli masz dwa klucze - wystarczy dodać oba z nich do konta. Każdy klucz musisz dodawać osobno. Będziesz się wtedy mógł zalogować używając obu z nich. Warto również wygenerować kody zapasowe.
    • W bardzo rzadkich przypadkach serwisy pozwalają na dodanie tylko jednego klucza. Wtedy warto wygenerować i wydrukować kody zapasowe. Jeśli zgubimy klucz - te kody pozwolą na zalogowanie się bez niego.
  • Czy da się skopiować dane z klucza?
    • Nie. Klucz można zresetować - to znaczy usunąć wszystkie zapisane na nim informacje. Nie da się ich "skopiować" na inne urządzenie.
  • Jaka jest awaryjność i trwałość tego urządzenia?
    • Zacytuję komentarz Piotra Koniecznego (właściciela serwisu Niebezpiecznik): "Wrzucę jutro lepsze zdjęcie klucza noszonego z kluczami w kieszeni/plecaku od ~5 lat. To dokładnie ten niebieski, jest na filmie dopięty do pęku kluczy (na potrzeby sesji inne klucze zostały odpięte, został jeden). Poobijany, porysowany, działa. Plastik jest naprawdę dobrej jakości. Styki też."
  • Czy klucze są wodoodporne?
  • Co jeśli zgubię klucze?
    • W zależności od serwisu - odzyskanie dostępu do konta będzie bardzo utrudnione albo nawet czasami niemożliwe. Dlatego warto kupić 2 klucze i wydrukować kody zapasowe. Wtedy jeden z nich to nasz backup, który chowamy w bezpiecznym miejscu na wypadek awarii/kradzieży.
  • Czy klucz działa z przejściówkami (np. USB C -> USB A)?
  • Czy klucz może być cały czas wpięty do portu USB? Czy to bezpieczne?
    • Tak. Aby zalogować się do serwisu musimy fizycznie dotknąć przycisku na obudowie klucza. Bez tego - nic się nie dzieje.
  • Jak sprawdzić czy klucz jest oryginalny?
  • Czy można kupować używane klucze?
    • Jeśli zależy Ci na bezpieczeństwie to rekomenduję kupno nowego urządzenia od oficjalnych, sprawdzonych dostawców. Drogo? Spróbuj poczekać na promocje.
  • Gdzie mogę kupić klucze?
  • Jak aktualizować oprogramowanie klucza?
    • Nie ma takiej opcji. Oprogramowanie jest wgrywane raz - podczas produkcji klucza. Nie można go zmienić/zaktualizować.
  • Czy klucz da się “zainfekować”?
    • Nie słyszałem o takich przypadkach. Jest to jeden z powodów dlaczego nie ma aktualizacji oprogramowania.
    • YubiKey 5 posiada opcję statycznego hasła, której można próbować użyć w atakach Bad USB - ale użycie tego ataku w praktyce jest bardzo ograniczone.
  • Czy klucz wysyła jakieś dane do serwera producenta?
    • Nie. Klucz komunikuje się bezpośrednio ze stroną, na której go używasz. Istnieje mały, drobny wyjątek Yubico OTP. Ale to stary protokół, którego praktycznie nikt obecnie nie używa.
  • Czym klucz różni się od menadżera haseł?
    • Jeżeli ktoś uzyska dostęp do Twojego odblokowanego menadżera haseł to może z niego odczytać wszystkie hasła. Jeśli ktoś uzyska fizyczny dostęp do klucza to nie jest w stanie zapisać jakichś danych "na później". Może go użyć do zalogowania tylko tu i teraz i to tylko wtedy, jeśli zna hasło do strony, na którą próbuje się zalogować (jeśli mówimy o trybie U2F).
  • Korzystam z menadżera haseł i jestem odporny na phishing - po co mi klucz?
    • Dobry menadżer nie podpowie hasła na domenie, która nie jest przypisana do naszego hasła. Ale w takim wypadku użytkownik zawsze może je ręcznie skopiować i wkleić w odpowiednie pole formularza. Menadżer więc chroni - ale nie wymusza tej ochrony. W przypadku klucza - mechanizm jest skonstruowany tak, że nie pozwoli na zalogowanie na stronie phishingowej - nawet gdybyś bardzo chciał.
  • Czy mogę się nim logować do Windowsa/Maca?
    • Jest to możliwe ale będziesz potrzebował droższego (czarnego) klucza i czasami specjalnej aplikacji.
  • Czy mogę zresetować klucz?
    • Tak, służy do tego specjalna aplikacja YubiKey Manager. Uwaga, ważne. Po resecie klucz nie będzie już rozpoznawany przez strony, na których go użyłeś. Przed resetem warto się więc upewnić, że posiadasz alternatywną opcję logowania do witryny.
  • Czy klucz działa “dożywotnio”?
    • Tak, producent nie narzuca żadnych limitów. W urządzeniu nie ma ruchomych części/baterii, które mogłyby się rozładować. Urządzenie jest zasilane z portu USB/poprzez protokół NFC.
  • Dlaczego to jest takie drogie?
    • Biznes. Musisz to potraktować bardziej jako długofalową inwestycję. Wtedy to +/- 300 zł za 2 niebieskie klucze, które posłużą Ci przez najbliższe kilka lat.
    • Co jakiś czas zdarzają się promocje. Ale są one zazwyczaj raz do roku.
    • Jesteś studentem? Możesz poprosić o 20% zniżkę w oficjalnym sklepie.
  • Czy są jakieś alternatywy?
  • Dlaczego serwis X nie prosi mnie o zalogowanie kluczem? Przecież go dodałem?
    • Sporo stron prosi o zalogowanie kluczem tylko jeśli wykorzystujesz nową przeglądarkę/komputer. Na przykład Google. Jeśli podczas logowania pozostawisz zaznaczony checkbox “nie pytaj ponownie na tym urządzeniu” - to serwis nie będzie pytał o klucz podczas następnego logowania.
  • Czy będę mógł odbierać pocztę przy pomocy aplikacji, np. Outlooka?
    • Nie wszystkie aplikacje wspierają logowanie przy pomocy kluczy bezpieczeństwa. Wtedy możesz użyć haseł aplikacji.
  • Co w przypadku kradzieży klucza?
    • Same klucze są bezużyteczne. Bo:
      • W przypadku trybu U2F potencjalny atakujący musi najpierw znać Twój login i hasło do serwisu. Dopiero wtedy może użyć klucza. Dodatkowo (w zależności od konfiguracji) musi też znać kod PIN.
      • W przypadku trybu FIDO2 potencjalny atakujący musi znać kod PIN.
    • Jeśli PIN zostanie podany błędnie 8 razy - klucz się zablokuje. Nie pozwoli nam już na zalogowanie się do stron. Jedyne co pozostaje to reset klucza (który kasuje z niego wszystkie informacje).
  • Czym to różni się od pendrive'a?
    • Pendrive służy do przechowywania danych/plików/zdjęć. YubiKey służy do przechowywania materiału kryptograficznego - czyli informacji pozwalających na zalogowanie się do jakiegoś serwisu/strony. Na YubiKey nie możesz wgrać plików/danych/zdjęć.
  • Przecież strona ma “zieloną kłódkę”. Czy nie jest bezpieczna?
    • Obecnie prawie każda złośliwa strona posiada "zieloną kłódkę" - czyli certyfikat SSL.
  • Skąd klucz wie, że jest na “dobrej stronie” a nie na “stronie phishingowej”?
    • Przeglądarka wysyła do klucza adres strony, na której jest obecnie użytkownik. Na podstawie tego adresu klucz generuje odpowiedź. Zły adres to zła odpowiedź. Dużo dokładniej i bardziej technicznie opisuję to w tym filmie.
  • Czy mogę dodać klucz/klucze do KeePass?
    • Tak, ale tylko ten droższy (czarny).
    • Jeśli chcesz używać więcej niż jednego klucza - zobacz ten poradnik.
  • Używam Yubico Authenticator do przechowywania kodów 2FA. Czy mogę jakoś przenieść te dane do nowego klucza?
    • Klucz ze względów bezpieczeństwa nie posiada opcji eksportu sekretów. Masz 2 opcje:
      • Włączyć 2FA na nowo. Ten sam kod QR skanujesz i dodajesz do każdego klucza, którego chcesz używać do logowania.
      • Alternatywnie możesz zapisać kod QR w bezpiecznym miejscu. Możesz go potem użyć do dodania sekretu na nowym urządzeniu.

Newsletter

Wyrażam zgodę na przetwarzanie moich danych osobowych przez Kacpra Szurka w celu otrzymywania newslettera za pomocą e-maila, informacji o promocjach, nowościach, produktach blogowych i usługach własnych oraz innych, polecanych osób, zgodnie z polityką prywatności.