Silne uwierzytelnianie z użyciem tokenów kryptograficznych

Skuteczne uwierzytelnianie - w czasach częstych kradzieży tożsamości i podszywania - cieszy się dużym zainteresowaniem. Nie ma co się oszukiwać: czasy statycznych haseł już w zasadzie minęły. Coraz rzadziej w korporacji nie używa się innych, dodatkowych mechanizmów uwierzytelniających. Najczęściej są to systemy two-factor authentication - czyli uwierzytelniania opartego na kombinacji dwóch z następujących elementów: skan biometryczny (to, czym jesteśmy), hasło (coś, co wiemy) oraz token (coś, co mamy). Ten ostatni jest bohaterem tego artykułu.

Skuteczne uwierzytelnianie - w czasach częstych kradzieży tożsamości i podszywania - cieszy się dużym zainteresowaniem. Nie ma co się oszukiwać: czasy statycznych haseł już w zasadzie minęły. Coraz rzadziej w korporacji nie używa się innych, dodatkowych mechanizmów uwierzytelniających. Najczęściej są to systemy two-factor authentication - czyli uwierzytelniania opartego na kombinacji dwóch z następujących elementów: skan biometryczny (to, czym jesteśmy), hasło (coś, co wiemy) oraz token (coś, co mamy). Ten ostatni jest bohaterem tego artykułu.

Sprawdzimy jakiego rodzaju tokeny możemy wykorzystywać, jakie są ich wady i zalety. W ostatnim czasie w redakcji przeprowadzaliśmy test funkcjonalny rozwiązania Aladdin Token Managements System, którego rezultaty postaramy się również w skrócie zaprezentować.

Breloczków cały koszyk

Entrust OTP Identity Guard

Entrust OTP Identity Guard

Mówiąc o uwierzytelnianiu z użyciem tokenów kryptograficznych, musimy pamiętać, że nie są to rozwiązania tanie. Sam token (jako tzw. breloczek) potrafi kosztować nawet kilkaset złotych, chociaż z drugiej strony mamy takich producentów jak Entrust, za którego token OTP Identity Guard zapłacimy nieco ponad 10 zł. Token jednak to nie wszystko. Bez względu na to, czy rozwiązania te wykorzystujemy wewnątrz korporacji, czy np. w bankowości elektronicznej, licząc koszty, musimy uwzględnić cenę systemu zarządzania oraz odpowiednią umowę wsparcia. No, ale po kolei.

Jakiego rodzaju tokeny możemy spotkać na rynku? Ogólnie rzecz biorąc, możemy przeprowadzić podział na tokeny OTP (One Time Password) oraz karty inteligentne. Te pierwsze mogą przychodzić w postaci sprzętu (np. Authentex A-Key 3600) lub oprogramowania. Każda z tych wariacji ma wady i zalety.

Zacznijmy od tokenów software'owych, zwanych inaczej tokenami wirtualnymi. Tokeny te to tak naprawdę emulatory swoich hardware'owych braci. Oferują podobną funkcjonalność, prezentując użytkownikowi hasło jednorazowe lub wykorzystując klucze PKI. Najczęściej stosowane są w urządzeniach mobilnych, jak np. smartphony, ale można je równie dobrze zainstalować na PC. Tokeny wirtualne mają też wady.

Przede wszystkim, są to wady związane z bezpieczeństwem. Można powiedzieć, że soft-tokeny są na tyle bezpieczne, na ile zabezpieczony jest komputer czy pda, na którym zostały zainstalowane. Każdy programowy token musi mieć dostarczony odpowiedni klucz czy też seed, który pozwoli na prawidłowe uwierzytelnienie konkretnego użytkownika. To oznacza, że możliwe jest jego wykradnięcie z komputera użytkownika albo poprzez fizyczny dostęp, albo w wyniku działania wirusa czy robaka. Nie jest to wcale proste - token jest szyfrowany i najczęściej ukryty w systemie plików, a nawet rozczłonkowany i rozmieszczony w różnych miejscach - ale... jak najbardziej możliwe. Co więcej, przechwycenie może nastąpić bez wiedzy użytkownika. Atakujący może więc korzystać z takiego tokenu, pozostając niewykrytym przez długi czas. Ponadto token software'owy trzeba gdzieś zainstalować. Nie jest więc rozwiązaniem szczególnie uniwersalnym dla na przykład handlowca, który podróżując, potrzebuje czasami połączyć się przez SSL VPN z kafejki internetowej do firmy i sprawdzić pocztę. Jeżeli nasz soft-token jest rozwiązaniem OTP, to dochodzi jeszcze problem synchronizacji czasu. W przypadku zbyt dużych rozbieżności nie będziemy się w stanie uwierzytelnić.

Z punktu widzenia bezpieczeństwa tokeny wirtualne nie nadają się więc do takich zastosowań, jak e-commerce, ale mogą być akceptowalne wewnątrz firmy.

Hardware ponad wszystko

Karta VeriSign Identity Protection

Karta VeriSign Identity Protection

Znacznie większą popularnością niż tokeny wirtualne cieszą się rozwiązania sprzętowe. Te mogą przyjmować bardzo zróżnicowane formy - od kluczyków USB, po modne ostatnio tokeny w formie karty kredytowej z wbudowanym wyświetlaczem.

Parę słów o tokenach OTP, którymi w ostatnim czasie obwieszeni są pracownicy wielu korporacji, a szczególnie administratorzy. Token OTP to nic innego, jak zaawansowany zegarek wyświetlający ciągi znaków, które - powiązane z przypisanym do tokenu PIN-em - stanowią hasło. Zwykle mają one postać typowych breloków (np. Cryptocard Keychain Token) z wyświetlaczem, tzw. kalkulatorków (np. ActiveIdentity Keychain Token V2) oraz coraz częściej kupowanych hybryd ze złączem USB będących dodatkowo czytnikiem i kartą inteligentną (np. RSA SecurID 800).

Tym, co oprócz ich fizyczności odróżnia tokeny OTP, jest sposób tworzenia haseł. Możemy tutaj mówić o trzech czynnikach, które powodują wygenerowanie/wyświetlenie kodu - czas (time based token), jakieś zdarzenie (event based token) oraz pytanie/odpowiedź (challenge/response token).

Jeżeli mamy token "czasowy", oznacza to, że kod stworzony wg pewnego algorytmu jest ważny tylko przez określony czas - w zależności od rozwiązania od 30 do 60 sekund. Po upływie tego czasu automatycznie pojawia się nowy kod, a z poprzedniego już nie skorzystamy, choćby nie został wykorzystany.

Trochę inne podejście prezentują tokeny "event based". Wymagają one podjęcia od nas działania - np. naciśnięcia przycisku. Każde kolejne jego naciśnięcie to wyświetlenie nowego kodu. Tokeny zdarzeniowe uznaje się za nieco mniej bezpieczne niż tokeny czasowe ze względu na fakt, że wyświetlony kod jest ważny dopóty, dopóki nie zostanie użyty.

Wreszcie tokeny typu challenge response - to "kalkulatorki", o których już wspominaliśmy.

Cryptocard Key Chain Token

Cryptocard Key Chain Token

Jeżeli mamy zwykły token OTP bez funkcji karty inteligentnej, to podstawową zaletą takiego rozwiązania jest brak konieczności instalacji jakichkolwiek sterowników lub oprogramowania klienckiego. W przypadku tokenów OTP jednym z najczęściej podnoszonych zarzutów jest ich podatność na ataki MITM. Obecnie ataki te najczęściej przeprowadzane są w przypadku wykorzystywania mechanizmów OTP trochę starszej generacji - jak karty zdrapki.

Korzystanie z czasowych tokenów OTP zwiększa szanse na niepowodzenie ataku MITM, ale nie czyni go niemożliwym. Wystarczy do tego celu zaprząc phishing i przekierować użytkownika na serwer pośredniczący, który przechwyci OTP. Jedynym problemem z punktu widzenia rabusia jest krótki czas życia hasła - ma maksymalnie minutę - jest to jednak w dalszym ciągu do zrobienia.

Korzystanie z tokenów OTP w korporacji wydaje się niemal zupełnie bezpieczne - tutaj istnieje znacznie mniejsze prawdopodobieństwo ataków phisingowych na użytkowników i "zatruwania" DNS. Natomiast w przypadku e-commerce zagrożenie jest i powinno być brane pod uwagę w procesie analizy ryzyka. Warto jeszcze wspomnieć, że na rynku tokenów OTP od lat panuje swoiste rozdwojenie jaźni - dominują dwa standardy: OATH (Open Authentication) stosowany przez wielu dostawców (np. ActiveIdentity, Entrust, InCard, Gemalto, Aladdin) oraz będący własnością firmy RSA - SecurID.

Nie każdy token sprzętowy - zwłaszcza PKI - jest taki sam. Istnieją rozwiązania, w których jest on jedynie przechowalnią kluczy. W momencie dokonywania operacji klucz prywatny opuszcza token i przenoszony jest na komputer użytkownika. Teoretycznie zaraz potem powinien zostać usunięty, ale często zdarza się, że pozostaje np. w pliku wymiany i można go przechwycić. Dlatego też szanowani producenci tworzą tokeny, w których zaszyty jest odpowiedzialny za dokonywanie operacji kryptograficznych. Klucz prywatny w tym przypadku nigdy nie opuszcza tokenu. To treść, która musi zostać np. odszyfrowana i przesyłana bezpośrednio do tokenu, a stamtąd wychodzi już we właściwej, odkodowanej postaci. Wydawałoby się zatem, że taka implementacja zabezpieczeń uniemożliwia przeprowadzenie skutecznych ataków. A jednak są one w dalszym ciągu prawdopodobne. Najgroźniejsze wydają się ataki typu side channel, gdzie nie traci się czasu na szukanie podatności algorytmów, ale bada się sam token, np. pod kątem emisji fal elektromagnetycznych, zużycia energii itp.


TOP 200