Hashowanie haseł użytkowników - czy to konieczne?

06-10-2009, 20:13

Prawdą jest, że przechowywanie haseł do systemu w postaci jawnej może stanowić lukę w jego bezpieczeństwie, ale biorąc pod uwagę inne mechanizmy bezpieczeństwa, może to nie być istotne - stwierdził Generalny Inspektor Ochrony Danych Osobowych, komentując sprawę niehashowania haseł w jednym z serwisów oferujących mikropłatności, o czym Dziennik Internautów dowiedział się od Czytelnika.

Wapacz.pl wystartował przed siedmiu laty jako jeden z pierwszych dostawców mobilnej rozrywki na polskim rynku. Od razu zaczął też oferować mikropłatności za pomocą SMS-ów. Od czerwca 2005 roku właścicielem serwisu jest warszawska spółka EL2.

Jeden z Czytelników Dziennika Internautów powiadomił redakcję, że hasła użytkowników Wapacz.pl są przechowywane w formie niezahashowanej. Mam dowód - napisał Czytelnik. Po nieudanej próbie zalogowania się do serwisu, chciał on skorzystać z funkcji przypominania hasła. Nie znalazł nigdzie stosownego formularza, napisał więc do obsługi i... dostał e-mailem zapomniane hasło.

Na wyrażone przez niego oburzenie przedstawiciel serwisu odpowiedział: Pańskie pretensje są zasadne. Okazało się, że system został napisany wiele lat temu. Pracownik Wapacz.pl zapewnił, że w przeciągu kilku tygodni ruszy nowa wersja programu partnerskiego, a programiści pracują już nad zahashowaniem haseł. Czytelnik zdecydował się jednak poinformować o wszystkim redakcję Dziennika Internautów.

Dlaczego nie zaleca się przechowywać haseł otwartym tekstem?

Z takim pytaniem Dziennik Internautów zwrócił się do Michała Piszczka, kierownika Działu Programistów w firmie ESC S.A. Ponieważ hasła w postaci czystego tekstu są podawane ewentualnemu intruzowi jak na tacy. Skompromitowana baza danych z tak przechowywanymi hasłami jest jak książka telefoniczna ze spisem haseł w miejsce numerów telefonów - odpowiedział specjalista.

Nie zawsze jednak wyciek bazy danych jakiegoś systemu prowadzi do ujawnienia haseł jego użytkowników. Dlaczego? Ponieważ w bazie danych zamiast hasła można przechowywać jego hash, czyli ciągów znaków wygenerowanych przez funkcje skrótu (np. SHA1, MD5) - tłumaczy Michał Piszczek.

Funkcja skrótu to jednostronny algorytm potrafiący jednoznacznie przyporządkować każdemu ciągowi znaków dowolnej długości (np. hasłu supertajnehaslo) ciąg "skrócony" (np. f8b771a4c96e92a2cd966812e76626ef31a79674).

System, aby podjąć decyzję, czy wpuścić użytkownika do środka, generuje hash hasła wpisanego w formularz logowania i porównuje z zapamiętanym w bazie. Jeśli skróty są identyczne, udziela dostępu. Ponieważ algorytm jest jednoznaczny, takie samo hasło generuje zawsze taki sam hash. To natomiast, że funkcje skrótu są jednostronne (nie istnieje funkcja odwrotna) gwarantuje, że na podstawie skrótu nie da się algorytmicznie odtworzyć hasła. Tu właśnie rodzi się nasze bezpieczeństwo.

Aby w pełni wykorzystać zabezpieczenie metodą hashowania haseł, trzeba zdawać sobie sprawę, jakie są słabości tych metod. Po pierwsze niektóre algorytmy hashujące (np. MD5 w 2004 r.) zostały skompromitowane analitycznie i nie należy ich stosować. Ponadto każda z funkcji hashujących o znanym algorytmie jest podatna na atak brute force, czyli sukcesywne sprawdzenie wszystkich możliwych kombinacji w poszukiwaniu właściwego hasła. Istnieją również słowniki rainbow tables przyspieszające wyżej wymienioną metodę przez przeszukiwanie milionów pregenerowanych hashy.

Jak się zabezpieczyć przed atakiem brute force? Wystarczy doklejenie do hasła przed skróceniem np. 100 znakowego ciągu (tzw. salt) definiowanego w kodzie (lub innym miejscu). Sprawi to, że moc haseł naszych użytkowników wzrośnie w takim stopniu, że staną się praktycznie niepodatne na w/w atak w przypadku kompromitacji bazy danych. Takie zabezpieczenie to dosłownie 2 dodatkowe linie kodu w programie!

Dziennik Internautów zwrócił się do prawnika Olgierda Rudaka, redaktora Lege Artis, z pytaniem o ewentualną odpowiedzialność serwisu, z przedstawionej wyżej opinii wynika bowiem, że Wapacz.pl może mieć problem z dopełnieniem obowiązku zastosowania środków bezpieczeństwa danych osobowych na poziomie wysokim, o którym mówi rozporządzenie MSWiA z 2004 r.

Dowiedzieliśmy się, że w tym przypadku mógłby mieć zastosowanie art. 51 ustawy o ochronie danych osobowych, który głosi:

  1. Kto administrując zbiorem danych lub będąc obowiązany do ochrony danych osobowych udostępnia je lub umożliwia dostęp do nich osobom nieupoważnionym, podlega grzywnie, karze ograniczenia wolności albo pozbawienia wolności do lat 2.
  2. Jeżeli sprawca działa nieumyślnie, podlega grzywnie, karze ograniczenia wolności albo pozbawienia wolności do roku.

Wapacz.pl naprawia błąd

Dziennik Internautów skontaktował się z przedstawicielem serwisu Wapacz.pl - Tomaszem Pawłowskim, który przesłał redakcji następujące oświadczenie: W ubiegłym roku właściciel sieci Wapacz firma EL2 Sp. z o.o. podjęła decyzję o uruchomieniu projektu nowej platformy Wapacz 3.0. Planowane uruchomienie platformy Wapacz 3.0 przypada na dzień 2 października br. Nowy system będzie cechował wysoki stopień bezpieczeństwa biernego, m.in. zarządzanie i przechowywanie haseł. Wobec tych faktów dziwi podnoszenie tej sprawy w przeddzień udostępnienia nowej platformy. Wydaje się, że jest to działanie zamierzone, mające na celu szkodę na wizerunku Wapacza. Jednocześnie EL2 przedsięwzięła kroki ku polepszeniu obecnego bezpieczeństwa bazy, której dotyczył problem ochrony haseł.

Na pytanie o to, dlaczego spółka tak późno zdecydowała się na zahashowanie haseł użytkowników, Dziennik Internautów nie uzyskał odpowiedzi. W trosce o bezpieczeństwo osób korzystających z usług Wapacz.pl postanowiliśmy opisać zaistniałą sytuację dopiero po uruchomieniu nowej platformy. Czekając na to, wysłaliśmy kilka pytań do Generalnego Inspektora Ochrony Danych Osobowych - Michała Serzyckiego.

GIODO nie udziela jednoznacznej odpowiedzi

Małgorzata Kałużyńska-Jasak, rzecznik prasowy GIODO, zauważyła, że hasła klientów serwisu są hasłami powiązanymi z ich kontami, a zatem dają dostęp tylko do danych dotyczących konkretnego klienta. W dynamicznych serwisach internetowych hasła takie przechowywane są w bazie danych, a zatem przejęcie listy kont i haseł w takim przypadku jest równoznaczne z przejęciem pozostałych danych o użytkowniku serwisu. Warto odnotować, że podczas rejestracji na stronie Wapacz.pl konieczne jest podanie m.in. imienia, nazwiska, adresu e-mail, numeru telefonu, daty urodzenia oraz NIP-u.

Znajomość faktycznych haseł lub ich hashy jest z tytułu pozyskania samego zbioru zupełnie nieistotna - uważa Generalny Inspektor. - Ważna natomiast jest możliwość użycia pozyskanych tak haseł w przejmowaniu tożsamości klientów w tym i innych serwisach internetowych, np. bankowych, pocztowych itp. Nie od dziś wiadomo, że internauci dla wygody bądź z lenistwa często korzystają z tych samych identyfikatorów i haseł na różnych stronach internetowych, co nie umknęło uwadze GIODO.

Posiadanie przez włamywacza jedynie listy kont z hasłami nie da mu szansy na błyskawiczne uzyskanie danych zgromadzonych w serwisie. W tym celu musiałby opracować skrypt lub program, który logowałby się na poszczególne konta z listy i nawigował po serwisie w kontekście zalogowanego użytkownika, zrzucając wszystkie informacje o kliencie do zbioru przygotowanego przez tego włamywacza. W celu zamaskowania swoich działań skrypt ten, aby uśpić czujność systemów bezpieczeństwa serwisu, musiałby logować się za każdym razem przy użyciu innego publicznego adresu IP o nieustalonym porządku ich powtarzalności. Z punktu widzenia ekonomiki działanie takie jest wysoce nieopłacalne, a dane uzyskane w ten sposób bardzo "kosztowne" i niewarte swojej ceny.

Jak pisze Małgorzata Kałużyńska-Jasak, przechowywanie haseł do systemu w postaci jawnej może stanowić lukę w jego bezpieczeństwie, ale biorąc pod uwagę inne mechanizmy bezpieczeństwa, może to nie być istotne. O jakie mechanizmy chodzi?

Użycie haseł klientów w postaci jawnej przy użyciu szyfrowanej sesji nawiązywanej pomiędzy klientem a serwisem powoduje, że pomimo swojej jawności hasło to przesyłane jest w postaci zaszyfrowanej i dopiero po stronie serwera, po rozszyfrowaniu porównywane jest z jawnym wzorcem hasła. Należy zatem zauważyć, że podstawowe kwestie bezpieczeństwa w takim modelu zostają jak najbardziej zachowane i w przypadku prowadzenia analizy zagrożeń i ryzyka może okazać się, że są na akceptowalnym poziomie ryzyka, a co za tym idzie bezpieczne - czytamy w przesłanym do redakcji oświadczeniu.

Generalny Inspektor stwierdził, że nie znając wyników wspomnianej analizy przeprowadzonej przez administratora danych, nie może jednoznacznie stwierdzić, czy zastosowane środki techniczne i organizacyjne zapewniają dostateczną ochronę przetwarzanych informacji. W kontekście łamania ustawy o ochronie danych osobowych aspekt jawności haseł może być jednym z elementów wyczerpującym takie znamiona, ale w szerszym ujęciu może już ich nie wyczerpywać - uważa GIODO.

użycie haseł klientów w postaci jawnej przy użyciu szyfrowanej sesji nawiązywanej pomiędzy klientem a serwisem powoduje, że pomimo swojej jawności hasło to przesyłane jest w postaci zaszyfrowanej i dopiero po stronie serwera, po rozszyfrowaniu porównywane jest z jawnym wzorcem hasła. Należy zatem zauważyć, że podstawowe kwestie bezpieczeństwa w takim modelu zostają jak najbardziej zachowane i w przypadku prowadzenia analizy zagrożeń i ryzyka może okazać się, że są na akceptowalnym poziomie ryzyka, a co za tym idzie bezpieczne.

Źródło: DI24.pl
Wszystkie Listy czytelników kierowane do DI są czytane przez redaktorów. Niektóre pytania / prośby do redakcji mogą dotyczyć szerszego grona internautów, wymagać wypowiedzi ekspertów lub zainteresowanych stron, wówczas traktowane są jako tematy interwencyjne. Wszelkie sprawy, którymi Waszym zdaniem powinniśmy się zająć prosimy kierować na adres: interwencje@di.com.pl
  
znajdź w serwisie



RSS - Wywiad
Wywiad  
RSS - Interwencje
RSS - Porady
Porady  
RSS - Listy
Listy