Uwierzytelnienie i autoryzacja transakcji w dobie urządzeń mobilnych

Nie tak dawno możliwości technologiczne, jakie oferowały urządzenia mobilne, sprowadzały się do oglądania prostych stron internetowych z wykorzystaniem przeglądarek WAP. Obecnie rynek zmierza w kierunku wykorzystania przenośnych urządzeń, takich jak Smartphony, urządzenia PDA czy nawet zwykłe telefony komórkowe, w coraz bardziej zaawansowanych biznesowych rozwiązaniach, m.in. bankowości elektronicznej czy systemach maklerskich.

Analitycy firmy Datamonitor szacują, że w 2012 roku firmy wydadzą na urządzenia mobilne ponad 17 mld USD. To trzykrotnie więcej niż dziś. Jest jednak jedna bardzo poważna bariera hamująca jeszcze większy wzrost tego rynku – bezpieczeństwo. Jest ona szczególnie duża w tak zaawansowanych i wrażliwych systemach jak wspomniane wcześniej rozwiązania bankowe czy maklerskie. Wyniki ostatniego badania firmy McAfee wykazały, że ponad jedna trzecia użytkowników kwestionuje ogólne bezpieczeństwo urządzeń i usług komórkowych. Ponadto 86 proc. użytkowników ma obawy co do potencjalnych zagrożeń, takich jak fałszywe rozliczenia czy kradzież informacji.

Przedsiębiorstwa toczą daremną walkę, jeśli chodzi o obecność różnego rodzaju urządzeń mobilnych i nowych technologii w ramach posiadanego środowiska IT – uważa Daniel Okubo, jeden z autorów raportu. W ramach tego artykułu postaram się skupić na dwóch elementach szeroko rozumianego bezpieczeństwa, mianowicie uwierzytelnieniu osób oraz autoryzacji transakcji, elementach szczególnie istotnych dla rozwiązań, o których już wcześniej wspominałem – bankowości elektronicznej oraz systemów maklerskich. W tym kontekście postaram się pokazać, skąd wynikają obecne ograniczenia i w jaki sposób można spróbować je rozwiązać, aby pokonać tę barierę bezpieczeństwa, stymulując tym samym rozwój technologii mobilnych.

Metody uwierzytelniania i autoryzacji

Jednym z największych problemów związanych z uwierzytelnieniem i autoryzacją jest brak sprecyzowanych i określonych standardów w kwestii obsługi kodu po stronie klienta (a więc mobilnej przeglądarki internetowej). Tymczasem niemal każda metoda uwierzytelnienia czy autoryzacji takiego kodu potrzebuje. Przedstawię teraz krótko najbardziej popularne metody uwierzytelnienia i autoryzacji oraz ich wymagania co do oprogramowania po stronie klienta. Postaram się też przedstawić inne wady każdej z metod w odniesieniu do urządzeń mobilnych.

Hasła – wskazane jest, aby przed przesłaniem hasła siecią wykonać tak zwane skrócenie z wykorzystaniem algorytmów „haszujących”, takich jak SHA1 czy MD5 – a to wymaga kodu JavaScript po stronie klienta.

Hasła maskowalne – jeszcze gorzej sprawa wygląda w przypadku haseł maskowanych, bo tutaj oprócz standardowego wysłania hasła potrzebne jest na samym początku wygenerowanie zestawu (zalecane około 200) masek, jest to algorytmicznie złożona operacja wymagająca sporej mocy obliczeniowej procesora.

Certyfikaty – tutaj sprawa się ma najgorzej, gdyż oprócz JavaScript potrzebny jest komponent po stronie klienta w postaci ActiveX lub plugina do innej przeglądarki. Kolejnym problemem jest przechowywanie kluczy prywatnych. Używanie w tym celu dysku uważane jest za niebezpieczne, co zostało potwierdzone wieloma incydentami bezpieczeństwa związanymi z tą metodą. Co prawda główne niebezpieczeństwo wiąże się ze złośliwym oprogramowaniem typu „Koń Trojański”, które jeszcze nie jest tworzone na masową skalę w przypadku urządzeń mobilnych, natomiast z pewnością jest to tylko kwestia czasu i wraz z rozwojem rynku urządzeń mobilnych coraz więcej tego typu oprogramowania będzie powstawać. Jeśli chodzi o urządzenia do bezpiecznego przechowywania kluczy, takie jak tokeny i karty kryptograficzne, zaczynają się pojawiać na rynku w wersji z interfejsem Bluetooth, który umożliwia komunikację z urządzeniami mobilnymi. Niestety jest to na razie raczkujące rozwiązanie i w najbliższym czasie ciężko się spodziewać jego rozpowszechnienia.

Hasła SMS – nie wymagają żadnego kodu po stronie klienta i z tego powodu mogą się na początku wydać interesującym rozwiązaniem. Niestety metoda ta posiada dwie bardzo poważne wady. Pierwsza polega na tym, że w przypadku zgubienia lub kradzieży urządzenia osoba, które weszła w posiadanie telefonu, może go bez problemu wykorzystać do przeprowadzenia transakcji, gdyż dostęp do SMS nie jest w żaden sposób zabezpieczony. Drugą wadą jest konieczność przełączania się między aplikacją, w której chcemy dokonać autoryzacji. Część telefonów do tej pory nie ma możliwości wykonania takiej operacji bez zamykania aplikacji, a nawet jeśli mają, to jest to bardzo niewygodne dla użytkownika.

Co prawda JavaScript jest już standardem dla nowych urządzeń mobilnych, ale w przypadku starszych urządzeń dalej pozostaje to problemem. Co więcej, dużą wątpliwość budzi obsługa tego języka skryptowego przez bardzo popularną przeglądarkę Opera Mini. W nowszych wersjach obsługa po stronie klienta jest minimalna, nie ma wsparcia dla skryptów wykonywanych w tle, nie jest obsługiwana większość zdarzeń DOM, wsparcie dla AJAX jest bardzo limitowane. Jeszcze gorzej wygląda sprawa w starszej wersji, gdzie JavaScript po stronie klienta nie jest w ogóle obsługiwany. Całość jest przesyłana do serwera i tam kod jest wykonywany. W przypadku operacji skracania hasła zwykłego bądź maskowanego musi to budzić poważne zastrzeżenia, gdyż wprowadzamy trzecią stronę transakcji, którą musimy traktować jako zaufaną, co więcej, wysyłamy do tej strony wszystkie hasła nieukrócone, czyli w bardziej wrażliwej formie, niż dostaje docelowy serwis.

Jeszcze gorzej sprawa wygląda z komponentami takimi jak ActiveX. Tutaj o jakimkolwiek wsparciu możemy mówić tylko w przypadku nowych urządzeń. Wymagany jest Internet Explorer Mobile(dostępny od wersji 5.0 Windows Mobile, Pocket Internet Explorer nie ma żadnego wsparcia dla ActiveX). W przypadku przeglądarki Opera w wersji mini nie ma wsparcia dla komponentów po stronie klienta. Wsparcie dla komponentów po stronie klientów pojawiło się w Opera Mobile od wersji 8.65. Należy podkreślić, że wspiera ona ActiveX, a nie Netscape Plugin jak standardowa wersja Opery. Z racji tego Opera zapewnia tylko generyczny interfejs i nie pozwala na tworzenie wielu klas. Jest to tak naprawdę bardzo eksperymentalny projekt, mający na celu zapewnienie wsparcia dla „wtyczek” typu Windows Media Player czy Flash.
MobilePKI – rozwiązanie na miarę potrzeb

Biorąc pod uwagę te wszystkie zagadnienia, Comarch postarał się wyjść naprzeciw potrzebom rynku i proponuje rozwiązania, które w dużej mierze rozwiązują wymienione problemy. Pierwszym produktem jest MobilePKI, które umożliwia korzystanie z infrastruktury klucza publicznego na telefonach komórkowych. Aplikacja oparta jest na aplikacji Java instalowanej na karcie SIM, która zmienia komórkę w przenośną kartę kryptograficzną, zawierającą klucz publiczny i prywatny, niewymagającą czytnika kart do złożenia podpisu. Komunikacja z docelowym systemem (generowanie/aktywacja kluczy/składanie podpisu/uwierzytelnienie) odbywa się za pomocą SMS-ów. Należy podkreślić, że rozwiązanie to zapewnia dokładnie taki sam poziom bezpieczeństwa, jeśli chodzi o zabezpieczenie klucza prywatnego, jak normalna karta kryptograficzna. Wykorzy­stanie tej metody uwierzytelniania oraz autoryzacji nie wymaga korzystania z dodatkowych usług operatora komórkowego, a jedynie wymiany zwykłej karty SIM na kartę z kryptoprocesorem. Generacja kluczy (prywatnego i publicznego) odbywa się na żądanie przychodzące do telefonu z systemu. Po potwierdzeniu przez użytkownika oraz podaniu kodu PIN następuje generacja. Comarch wprowadził dodatkowe zabezpieczenie użycia klucza. Aby system uwierzytelnienia oraz autoryzacji zaczął działać, należy nowo wygenerowany klucz aktywować. Użytkownik końcowy musi na przykład zadzwonić na infolinię i zgłosić taki fakt operatorowi, który wysyła z systemu transakcyjnego SMS aktywujący. Oczywiście użytkownik może to zrobić osobiście – zależy to już od konkretnego wdrożenia i potrzeby. Podpisanie dokumentu(w szczególności uwierzytelnienie i autoryzacja) odbywa się poprzez wysłanie dokumentu na telefon użytkownika z użyciem SMS. Na telefonie wyświetlany jest dokument (mogą to być dane transakcji), który użytkownik może zaakceptować. Po podaniu PIN-u dane są podpisywane i odsyłane do systemu transakcyjnego, który weryfikuje podpis w oparciu o klucz publiczny. Dodatkowo system wspiera tak zwane wsadowe podpisywanie transakcji, czyli podpisywanie zbioru zamiast pojedynczych transakcji. Pozwala to uprościć pracę użytkownika oraz ograniczyć koszty związane z wysyłaniem SMS-ów. Rozwiązanie jest niezwykle obiecujące, gdyż operatorzy komórkowi zapowiadają rychłe wprowadzenie kart z kryptoprocesorem. Ponieważ MobilePKI jest tak zwaną aplikacją SIM ToolKit (jest wgrywana bezpośrednio na kartę SIM), nie wymaga żadnego dodatkowego oprogramowania i może funkcjonować w każdej komórce.

MobileID, czyli wszechstronność

Drugim rozwiązaniem jest MobileID, czyli token haseł jednorazowych zrealizowany jako aplikacja Java na urządzenie mobilne. Co bardzo istotne, urządzenie może pracować zarówno w trybie gene­racji haseł jednorazowych, jak i w trybie challenge-response. Czyli wiąże konkretną transakcję z wygenerowanym kodem kryptograficznym, zapewniając niezaprzeczalność dokonanej transakcji oraz odporność na ataki typu człowiek w środku, w których intruz wykorzystuje prawdziwe podsłuchane hasło celem autoryzacji fałszywej transakcji. Komponent serwera generuje na podstawie danych z transakcji (numer konta, kwota, bieżący czas lub dowolnych innych) kod autoryzujący, który użytkownik wprowadza do aplikacji na swoim urządzeniu mobilnym. Na jego podstawie generowany jest kod autoryzacyjny response walidowany przez serwer MobileID. Istotną kwestią jest to, że użytkownik, podając PIN do aplikacji, nie wie, czy jest on prawdziwy, gdyż nie jest to sprawdzane po stronie aplikacji klienckiej. Zostaje to zweryfikowane dopiero po stronie serwera, na podstawie wygenerowanego hasła jednorazowego, którego PIN jest składnikiem. Niezwykle ważny jest fakt, iż proces instalacji oprogramowania jest bardzo przyjazny dla użytkownika. Rejestruje się on w systemie, podając swoją nazwę oraz numer telefonu komórkowego, na który zostanie automatycznie wysłana aplikacja w formie WAP-PUSH. Można powiedzieć, że MobileID jest czymś pomiędzy tokenem haseł jednorazojednorazowych a SMS-em. Zaletą w stosunku do tych metod uwierzytelnienia jest znacznie niższy koszt takiego rozwiązania, bowiem nie powoduje ono potrzeby wysyłania wiadomości do każdej autoryzacji oraz zakupu dodatkowego urządzenia.

Nie tylko dla mobilnych

Należy podkreślić, że oba przedstawione mechanizmy uwierzytelniania i autoryzacji transakcji mogą zostać użyte nie tylko w rozwiązaniach mobilnych. Zwłaszcza MobileID nadaje się bardzo dobrze do użycia z rozwiązaniami stacjonarnymi, zastępując sprzętowy token, znacząco redukując koszty, jednocześnie zachowując poziom bezpieczeństwa. Ponieważ MobilePKI zapewnia ten sam poziom bezpieczeństwa co zwykła karta kryptograficzna, może zostać użyty oprócz uwierzytelnienia i autoryzacji transakcji do podpisywania dokumentów (na przykład do ZUS) zgodnie z wymogami rozporządzenia o kwalifikowanym podpisie elektronicznym. Oba rozwiązania spełniają paradygmat uwierzytelnienia wieloczynnikowego przez to, co mam (telefon komórkowy), oraz przez to, co wiem (PIN). Oba rozwiązania radzą sobie z większością problemów omówionych na początku artykułu, takich jak kompatybilność czy skrypty po stronie klienta. Oczywiście nie rozwiązują wszystkich bolączek uwierzytelnienia i autoryzacji dla urządzeń mobilnych, a tym bardziej wszystkich bolączek bezpieczeństwa w szerszym kontekście, ale są krokiem w dobrą stronę i mogą stać się przyczynkiem do jeszcze szybszego rozwoju rynku urządzeń mobilnych oraz usług biznesowych oferowanych za ich pośrednictwem.

Ostatnie zapytania:

  • jak uwierzytelnic konto T-Mobile do transakcji
  • jak uwierzytelnić konto telefoniczne do transakcji
  • uwierzytelnienie konta do transakcji
Przeczytaj poprzedni wpis:
Nowe technologie nastawione na ekologię

Coraz większy nacisk kładziemy na ochronę środowiska. Kupujemy ekologiczną żywność a zakupy pakujemy w papierowe torby lub bio-degradowalne foliowe reklamówki. Zachowania proekologiczne mogą mieć związek ze stylem życia, lub panującym...

Zamknij