21 lipca 2010

Nieskomplikowane i jednocześnie bezpieczne hasła? To jednak możliwe!

Hasło powinno być długie i składać się przynajmniej z 14 znaków. Ponadto, musi zawierać litery (najlepiej małe oraz wielkie), cyfry oraz symbole. Idealne hasło nie powinno się z niczym kojarzyć oraz nie powinno składać się ze słów lub fraz występujących w słownikach. Poza tym, do każdego zastosowania powinniśmy użyć innego, silnego hasła. To już nie tylko zalecenia, nowoczesne systemy informatyczne oraz serwisy internetowe zaczynają na nas wymuszać stosowanie coraz bardziej skomplikowanych fraz, okazuje się jednak, że badacze z firmy Microsoft chcą zupełnie zrewolucjonizować ten najpopularniejszy sposób uwierzytelniania.

Wymóg stosowania bardzo silnych haseł ma nas uchronić przed atakami siłowymi (ang. brute force) oraz słownikowymi, należy jednak pamiętać, że użytkownicy bardzo często w takich przypadkach po prostu zapisują gdzieś (np. na kartce papieru, w pliku tekstowym lub po prostu w przeglądarce) trudne do zapamiętania hasła. Jeśli nie chcemy zapisywać naszych haseł w postaci jawnej, jedynym rozwiązaniem może się okazać opracowanie jakiegoś własnego systemu generowania bezpiecznych haseł.
Bardzo często też, zamiast wprowadzać wyjątkowo restrykcyjne wymogi złożoności haseł, stosuje się mechanizmy czasowo blokujące (ang. lock-out) konto użytkownika po kilku nieudanych próbach logowania. Czy takie zabezpieczenie jest skuteczne? Może być skuteczne w przypadku ataku wymierzonego w konkretnego użytkownika, jeśli jednak intruz poszukuje dowolnych poświadczeń pozwalających na zalogowanie się do usługi, wystarczy tylko, że wykorzystany zostanie prosty trik.

Otóż nie jest tajemnicą, że użytkownicy komputerów pewne hasła stosują częściej od innych fraz. W efekcie możliwe jest utworzenie pewnego słownika kilku haseł najczęściej stosowanych. Teraz wystarczy już tylko uruchomić masową próbę logowania, jednak algorytm siłowy lub słownikowy utworzyć tak, by zmieniały się loginy i dla każdej sprawdzanej nazwy użytkownika wystarczy tylko wykonać próbę logowania z ustalonymi wcześniej kilkoma hasłami najpopularniejszymi. W efekcie mechanizm blokowania kont nie zablokuje intruza (próba logowania na każde z kont odbywa się tylko kilka razy), natomiast potencjalnie uda się ustalić wiele poprawnych poświadczeń.

Skoro więc wiemy już, że wymuszanie silnych haseł ma swe wady (często powoduje zapisywanie haseł w rozmaitej postaci), a blokadę lock-out można obejść za pomocą ataku sprawdzającego tylko kilku najpopularniejszych haseł dla wielu różnych kont, to cóż nam pozostaje w walce z komputerowymi przestępcami? Okazuje się, że rozwiązaniem mogą się okazać hasła nieskomplikowane, jednak bezpieczne ze względu na pewną dodatkową cechę systemu informatycznego.

Wyobraźmy sobie duży serwis internetowy (np. Gmail lub Hotmail), który nie narzuca absolutnie żadnych wymogów co do postaci oraz złożoności haseł swych użytkowników. W zamian jest jednak wymóg taki, że dane hasło nie zostanie przyjęte, jeśli jest już zbyt popularne pośród dotychczasowych użytkowników. Jeśli więc np. pięciu użytkowników stosuje już hasło asdfqwer, to szósty chętny na tę frazę będzie musiał już wymyślić coś innego. W połączeniu z klasycznym mechanizmem blokady lock-out chroniącym pojedyncze konto przed siłowymi oraz słownikowymi atakami, takie podejście uniemożliwia wykonanie ataku z wykorzystaniem kilku bardzo popularnych haseł, ponieważ takich haseł po prostu w takim systemie nie będzie...

Mimo, że intruz może założyć, że niemal na pewno pośród kilku milionów użytkowników występuje kilka haseł asdfqwer, to jednak wiedząc, że jest ich co najwyżej 5, atak online sprawdzający wszystkie kombinacje loginów z taką właśnie frazą nie daje dużej nadziei na sukces. Natomiast w klasycznym systemie informatycznym, pośród kilku milionów użytkowników można się spodziewać, że ilość haseł typu asdfqwer może wynieść setki lub nawet tysiące wystąpień, co pozwala już na przeprowadzenie ataku na różne konta sprawdzając właśnie tę frazę jako potencjalne hasło.

Powyższy pomysł badaczy jest moim zdaniem bardzo obiecujący i unikatowy. Można powiedzieć, że zastosowanie takiej metody podnosi bezpieczeństwo systemu, ale również zwiększa komfort użytkowników (brak absurdalnych wymogów dotyczących złożoności haseł), co jest połączeniem naprawdę niecodziennym. Ograniczeniem jest jednak z pewnością to, że powyższa metoda sprawdzi się wyłącznie w największych serwisach internetowych z milionami aktywnych użytkowników. Ciekawe więc, czy metoda to kiedykolwiek zostanie w praktyce zastosowana? Warto również pamiętać, że żadne hasło oraz mechanizm wbudowany w centralny system informatycznych nie uchroni nas przed atakiem phishingowym lub też keyloggerem obecnym w naszym systemie.

[źródło]