Nasza strona używa cookies. Dowiedz się więcej o celu ich używania i zmianie ustawień w przeglądarce. Korzystając ze strony, wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki. Rozumiem

Jak uniknąć problemów z uwierzytelnieniem dwuskładnikowym

Tomasz Zieliński Programista z 15-letnim stażem
Zobacz, jak identyfikować i rozwiązywać problemy wynikające z 2FA. Zapewnij ochronę przed nieuprawnionym dostępem do zasobów sieciowych.
Jak uniknąć problemów z uwierzytelnieniem dwuskładnikowym

Uwierzytelnianie dwuskładnikowe (2FA) to skuteczny sposób na ochronę przed nieuprawnionym dostępem do zasobów sieciowych. Według danych Google z roku 2019 drugi składnik logowania może osiągać 100% skuteczności w przeciwdziałaniu atakom zautomatyzowanym i nawet 90% podczas ataków ukierunkowanych. 

W internecie znajdziemy bardzo wiele poradników opisujących, jak włączyć 2FA w popularnych serwisach, jednak niewiele miejsca poświęcają one scenariuszom, w którym tracimy dostęp do owego drugiego składnika. Przyjmując, że nieszczęścia chodzą parami, wyobraźmy sobie następującą sytuację: noc, ulewa, biegniemy do samochodu, pęk kluczy wylatuje nam z ręki i wpada do kanalizacji burzowej, schylamy się nad kratką, telefon wysuwa się z kieszeni i ląduje w kałuży. Klucze przepadły, telefon umiera na naszych rękach, ulegamy zrozumiałemu rozdrażnieniu. Potem rozdrażnienie ustępuje miejsca trwodze - do kluczy przypięty był YubiKey, zaś w telefonie mieszkał Google Authenticator. Zdajemy sobie sprawę, że oto utraciliśmy możliwość zalogowania do wszystkich ważnych serwisów online.

Co teraz? Pół biedy, jeśli 2FA obejmowało usługę zarządzaną - zgłaszamy się do operatora usługi (np. informatyka zakładowego) i prosimy o ponowną konfigurację metod dostępu (np. do firmowego VPN-a). Gorzej, gdy mamy do czynienia z usługodawcą, który był w stanie uwierzytelnić nas wyłącznie za pomocą środków, które utraciliśmy (Facebook, Twitter, GitHub). Co więc należało zrobić wcześniej? Przyjrzyjmy się wszystkim używanym powszechnie składnikom uwierzytelniania dwuskładnikowego i działaniom, dzięki którym zapobiegniemy wspomnianym wyżej problemom.


Klucz fizyczny FIDO U2F

Jeśli używamy sprzętowego klucza FIDO U2F (Universal 2nd Factor), mającego z reguły postać breloczka z wtyczką USB, możemy poklepać się po plecach - pod względem dbałości o bezpieczeństwo lokujemy się w górnym promilu społeczeństwa. Nadal jednak grozi nam fizyczna utrata bądź awaria klucza.

Rozwiązanie: kupujemy dwa klucze. Oba parujemy ze wszystkimi używanymi serwisami, pierwszy nosimy ze sobą, drugi ukrywamy w bezpiecznym miejscu. Dla oszczędności drugi klucz może być modelem najbardziej podstawowym, bo jeśli wszystko pójdzie dobrze, to nigdy po niego nie sięgniemy.

Problemy: jeśli dany serwis pozwala na sparowanie tylko jednego klucza U2F, potrzebujemy dodatkowej metody odzyskiwania dostępu do konta.


Google Authenticator (oraz aplikacje równoważne)

Google Authenticator czerpie swą popularność z prostoty i wygody. Wystarczy zeskanować telefonem kod QR by aplikacja mobilna zaczęła generować jednorazowe kody logowania ważne przez kilkadziesiąt sekund. Od tej chwili jedynie posiadacz urządzenia będzie w stanie uzupełnić hasło aktualnym kodem jednorazowym - aż do chwili utopienia czy kradzieży telefonu. Backup danych przywrócony na nowym sprzęcie nie będzie zawierał kopii danych nigdy (Android) lub czasami (iPhone).

Rozwiązanie: opcja pierwsza - fotografujemy i archiwizujemy każdy kod QR użyty w aplikacji. W razie awarii na nowo instalujemy program i powtórnie inicjujemy wszystkie wpisy. Opcja druga - zamiast aplikacji Google używamy równoważnika (np. Authy) pozwalającego na backup do pliku.

Problemy: w obu przypadkach musimy pilnie strzec fotek lub pliku eksportu, gdyż ich wyciek pozwoli atakującemu na generowanie prawidłowych kodów jednorazowych. Warto rozważyć przechowywanie tych plików w postaci zaszyfrowanej.



Kody odzyskiwania dostępu (recovery codes)

Niektóre serwisy pozwalają na wygenerowanie zestawu kodów jednorazowych, dzięki którym ominiesz drugi składnik logowania (niekiedy również pierwszy). Kody zazwyczaj generowane są po 10 sztuk naraz a każdy z nich może być użyty jednokrotnie. Jeśli jednak będziesz je nosić w portfelu a portfel padnie ofiarą kieszonkowca - masz problem.

Rozwiązanie: zapisz kody odzyskiwania dostępu w menedżerze haseł (zakładając, że ogarnąłeś temat backupowania danych menedżera haseł). W ostateczności wydrukuj je i schowaj w bezpiecznym miejscu. Wymieniaj zestaw na nowy zanim zużyjesz wszystkie kody.

Problemy: nowy zestaw kodów unieważnia poprzedni zestaw. Upewnij się, że zastąpiłeś stare kody nowymi wszędzie tam, gdzie je przechowujesz. 


Kody jednorazowe SMS

Kody jednorazowe przesyłane w wiadomości tekstowej nie wymagają od użytkownika żadnych szczególnych przygotowań, próg wejścia jest niski. Nie musimy też obawiać się utraty telefonu, w końcu zawsze możemy liczyć na pomoc operatora. Co więcej - często ze zniszczonego urządzenia wyciągniemy nienaruszoną kartę SIM, więc ryzyko utraty tego składnika jest niższe, niż w aplikacji Authenticator.

Problemy: największym ryzykiem w tym kanale komunikacji jest możliwość wykonania przez operatora duplikatu karty SIM osobie nieupoważnionej. Autor niniejszych słów odebrał kiedyś w punkcie obsługi klienta kopię (zarejestrowanej na siebie) karty SIM podając jedynie numer telefonu i nazwisko, bez jakiegokolwiek poświadczenia tożsamości - a taki duplikat zaś może sporządzić kilkadziesiąt tysięcy ludzi w całym kraju. Wobec takiego ryzyka wielu praktyków IT wyklucza użycie SMS jako drugiego składnika logowania.


Delegowane odzyskiwanie konta

Tę możliwość wskazujemy jako ciekawostkę bez większego znaczenia praktycznego - od przeszło dwóch lat Facebook udostępnia SDK, dzięki któremu użytkownik firmy trzeciej może odzyskać dostęp do swojego konta za pośrednictwem Facebooka. Jedynym znaczącym serwisem korzystającym z tej funkcji jest GitHub. 

Zainteresowani powinni pamiętać, że po pierwsze konto na Facebooku można stracić za szereg domniemanych przewinień a transparentna metoda odwołania od decyzji nie istnieje, po drugie zaś to Facebook będzie dysponentem sekretu pozwalającego na odzyskanie dostępu do konta. Wielu użytkowników pozostaje na stanowisku, że delegowane odzyskiwanie konta raczej obniża niż podnosi bezpieczeństwo naszych danych.


Podsumowanie

Powyższa lista nie wyczerpuje wszystkich metod uwierzytelniania wieloskładnikowego. Niektórzy dostawcy oferują rozwiązania dedykowane dla swojego ekosystemu (Microsoft Authenticator, Google Prompt, wiadomości push w aplikacjach mobilnych), inni - tokeny sprzętowe (RSA SecurID), jeszcze inni eksperymentują z uwierzytelnianiem biometrycznym.

W większości przypadków to użytkownik określa zestaw używanych metod uwierzytelniania i odzyskiwania hasła. Jeśli dostawca nie podjął własnych arbitralnych decyzji, na przykład o obowiązkowym kanale SMS, będziemy mogli samodzielnie określić ryzyka i dopasować do nich scenariusze odzyskiwania dostępu do serwisu.

Ważne, tylko by poświęcić temu zagadnieniu nieco czasu, zanim będzie za późno.

Dowiedz się więcej na temat Security

14-15 listopada w Warszawie odbędzie się konferencja „SECURITY PWNing” dedykowana szeroko rozumianej tematyce bezpieczeństwa IT. Wzorem trzech poprzednich edycji jej organizatorem jest Instytut PWN, a Przewodniczącym Rady Programowej i twarzą spotkania - Gynvael Coldwind. Security PWNing 2019 będzie znakomitą okazją do wysłuchania wystąpień najlepszych ekspertów cyberbezpieczeństwa z Polski i Europy oraz rywalizacji w ramach zawodów CTF.

Konferencja „SECURITY PWNing”  to głęboko techniczna konferencja, która już po raz czwarty zagości w kalendarzu najważniejszych wydarzeń z obszaru bezpieczeństwa IT. 14-15 listopada uznani eksperci-praktycy z Polski i Europy podzielą się ze zgromadzonymi swoją wiedzą, praktyką i doświadczeniami z zakresu bezpieczeństwa informatycznego oraz współczesnego hackingu. Przewodniczącym Rady Programowej jest Gynvael Coldwind, znany programista-pasjonat z zamiłowaniem do bezpieczeństwa komputerowego i niskopoziomowych aspektów informatyki, współzałożyciel zespołu Dragon Sector, pracujący w Google jako Senior Software Engineer/Information Security Engineer.

W tym roku towarzyszyć będą konferencji specjalistyczne warsztaty, które odbędą się 12-13 listopada: „Od zera do pierwszego 0-daya! Warsztaty automatycznego wyszukiwania podatności i ich analizy” prowadzone przez Kamila Frankowicza, „Netwars Masterclass” pod okiem Doroty Kulas oraz Reenzoha oraz „Software-Defined Radio Hacking: Initiation” Sebastiana Dudka. Liczba miejsc ograniczona decyduje kolejność rejestracji.

Autorem tekstu jest Tomasz Zieliński, który przygotowuje premierę kursu obsługi menedżera haseł dla mało zaawansowanych użytkowników komputera. Jeśli nie wszyscy w twojej rodzinie używają menedżera haseł, odwiedź stronę https://informatykzakladowy.pl.

Lubisz dzielić się wiedzą i chcesz zostać autorem?

Podziel się wiedzą z 130 tysiącami naszych czytelników

Dowiedz się więcej