Polityka haseł¶
Skutki słabej polityki haseł
Stosowanie słabych haseł może prowadzić do:
- przejęcia kont użytkowników,
- nieautoryzowanego dostępu do systemów,
- kradzieży poufnych danych,
- wykorzystania przejętych kont do dalszych ataków,
- przejęcia kont administracyjnych.
Polityka haseł to zestaw zasad, jakie system narzuca użytkownikowi przy zakładaniu konta i przy zmianie hasła: minimalna długość, wymagane rodzaje znaków, częstotliwość zmian, lista haseł zakazanych. Polityka jest słaba wtedy, gdy pozwala ustawić hasło krótkie, popularne lub łatwe do przewidzenia, a jednocześnie utrudnia stosowanie haseł naprawdę silnych.
Słaba polityka haseł oddziałuje na system pośrednio, przez zachowanie użytkowników. Im bardziej uciążliwe zasady, tym słabsze hasła. Użytkownik, który musi spełnić dodatkowe wymagania, robi to najmniejszym nakładem pracy: dopisuje wykrzyknik na końcu, zamienia literę na podobną cyfrę, zwiększa numer w dotychczasowym haśle. Powstają hasła schematyczne, trudne do zapamiętania dla człowieka, a jednocześnie łatwe do odgadnięcia dla programu. Dlatego politykę haseł należy oceniać nie według tego, co formalnie dopuszcza, lecz przede wszystkim według tego, jakie zachowania wywołuje u użytkowników.
Typowe problemy i ich skutki¶
Zbyt krótkie hasła¶
O odporności hasła decyduje przede wszystkim jego długość, a nie stopień skomplikowania. Krótkie hasło, nawet zawierające cyfrę i znak specjalny, mieści się w zasięgu ataku słownikowego z regułami.
Wymuszanie sztucznej złożoności¶
Wymóg "wielka litera, cyfra i znak specjalny" nie zwiększa realnie bezpieczeństwa, bo użytkownicy realizują go w bardzo przewidywalny sposób. Powstają hasła typu Galwaniczny123$, kasia1! czy zaq1@WSX, czyli słowo ze słownika z cyfrą i wykrzyknikiem na końcu albo wzorzec z klawiatury. Wszystkie takie warianty generują automatycznie standardowe zestawy reguł używane przy łamaniu haseł. Skutek jest zatem odwrotny od zamierzonego: hasło nie jest silniejsze, a użytkownik ma większy problem z jego zapamiętaniem, więc częściej je zapisuje lub powtarza w innych systemach.
Wymuszanie okresowej zmiany hasła¶
Częste zmiany są utrudnieniem dla użytkowników przez co hasła są często zapisywane, zapominane lub tworzone na podstawie wariacji poprzednich haseł: Wiosna2025!, Wiosna2026!, to samo hasło ze zmienioną cyfrą. Atakujący, który poznał jedno hasło użytkownika, bez trudu przewiduje kolejne. Warto też pamiętać, że rozporządzenie MSWiA z 2004 roku, którym często uzasadniano ten wymóg, zostało uchylone 6 lutego 2019 roku. Nie ma dziś podstawy prawnej wymuszającej cykliczną zmianę haseł.
Brak blokady haseł popularnych i pochodzących z wycieków¶
Wiele systemów nie sprawdza, czy ustawiane hasło nie znajduje się na liście haseł popularnych i ujawnionych w wyciekach. W takiej sytuacji użytkownik może wybrać hasło z pierwszych pozycji każdej listy wykorzystywanej przez atakujących. Formalnie spełni ono wymagania długości i złożoności, a mimo to zostanie odgadnięte natychmiast.
Dopuszczanie przewidywalnych członów¶
Hasła budowane wokół nazwy firmy, nazwy systemu, loginu czy imienia użytkownika są łatwe do odgadnięcia - atakujący zna te schematy i sprawdza je w pierwszej kolejności. Hasło zaq1@wsxCERT użyte przez pracownika CERT Polska jest równie słabe jak zaq1@wsx.
Ograniczenia utrudniające stosowanie silnych haseł¶
Zbyt niski limit długości hasła, ciche obcinanie go do kilkunastu znaków oraz zakaz stosowania spacji lub wybranych znaków uniemożliwiają tworzenie długich haseł opartych o całe zdanie. Z kolei blokowanie funkcji wklejania w polu hasła utrudnia korzystanie z menedżerów haseł. W praktyce takie ograniczenia popychają użytkowników w stronę haseł krótkich i powtarzanych w wielu serwisach.
Niejasne komunikaty o odrzuceniu hasła¶
Komunikat "hasło nie spełnia wymagań" bez wskazania przyczyny zmusza użytkownika do zgadywania, jaką zasadę naruszył. Po kilku nieudanych próbach zwykle następuje rezygnacja co prowadzi do ustawienia najprostszego hasła jakie przejdzie walidację.
Hasła pozornie silne¶
Hasła zbudowane zgodnie z klasycznymi wymogami złożoności sprawiają wrażenie mocnych, ale opierają się na schematach dobrze znanych narzędziom do łamania haseł:
Test wewnętrzny CERT Polska
W teście wewnętrznym CERT Polska hasła tego typu, zabezpieczone przestarzałym algorytmem SHA1, zostały złamane w czasie poniżej 5 minut.
Dla porównania, hasła zbudowane z kilku słów tworzących nietypową, łatwą do wyobrażenia scenę są jednocześnie proste do zapamiętania i bardzo trudne do złamania:
Powyższe przykłady straciły oczywiście swoją wartość jako sekret w momencie publikacji.
Rekomendacje¶
System uwierzytelniający powinien:
- Wymagać minimalnej długości hasła wynoszącej co najmniej 14 znaków,
- Pozwalać na ustawienie hasła o długości co najmniej 64 znaków i nie obcinać go po cichu,
- Nie wymuszać sztucznych zasad złożoności, takich jak obowiązkowa cyfra, wielka litera czy znak specjalny,
- Nie wymuszać częstej, okresowej zmiany haseł bez uzasadnionej potrzeby,
- Wymuszać zmianę hasła, jeżeli potwierdzono lub podejrzewa się, że zostało ono przejęte albo upublicznione,
- Blokować możliwość ustawienia haseł znajdujących się na liście słabych i często używanych haseł,
- Blokować hasła zawierające przewidywalne człony, takie jak nazwa firmy, nazwa usługi czy login użytkownika,
- Podawać dokładny powód odrzucenia nowego hasła,
- Nie blokować funkcji "wklej" w polu hasła,
- Wyświetlać wskaźnik szacujący siłę wprowadzanego hasła,
- Włączyć weryfikację dwuetapową, w pierwszej kolejności dla kont administracyjnych i kont o podwyższonych uprawnieniach.
Sposób przechowywania haseł po stronie serwera opisano w osobnym artykule: Przechowywanie haseł.