Ostrzeżenia Zgłoś incydent
Ostrzeżenia Zgłoś incydent

Rekomendacje techniczne CERT Polska dla systemów uwierzytelniania
10 stycznia 2022 | CERT Polska | #rekomendacje, #hasła

Poniższy dokument skierowany jest do administratorów, twórców i projektantów systemów informatycznych wymagających kontroli dostępu użytkowników i pozwalających na uwierzytelnienie z użyciem hasła.

CERT Polska rekomenduje następujące zasady dla systemu uwierzytelniającego użytkownika:

  • POWINIEN stosować bezpieczny algorytm hashujący do przechowywania haseł1
  • NIE POWINIEN wymuszać okresowej zmiany haseł użytkowników2
  • NIE POWINIEN pozwalać na ustawienie hasła znajdującego się na liście słabych/często używanych haseł3
  • NIE POWINIEN pozwalać na ustawienie hasła zawierającego przewidywalne człony (np. nazwa firmy, usługi)
  • POWINIEN ustalać minimalną długość hasła na co najmniej 14 znaków4
  • POWINIEN pozwalać na ustawienie hasła o długości co najmniej do 64 znaków5
  • NIE POWINIEN wymagać dodatkowych kryteriów złożoności, np. znaków specjalnych, cyfr czy dużych liter
  • POWINIEN wymuszać zmianę hasła jeśli potwierdzono, bądź zachodzi podejrzenie, że aktualne hasło zostało przejęte lub upublicznione
  • POWINIEN podawać dokładny powód w przypadku odrzucenia nowego hasła
  • NIE POWINIEN blokować wykorzystania funkcji “wklej” na polu hasła
  • ZALECA SIĘ wsparcie dla uwierzytelniania dwuskładnikowego
  • ZALECA SIĘ wyświetlanie użytkownikowi wskaźnika szacującego siłę nowego hasła

Ad. 1: Do zalecanych funkcji skrótu zabezpieczających hasło należą: Argon2, Bcrypt5, PBKDF2 oraz Scrypt. Pozwalają one na ustawienie parametru definiującego kosztowność przetworzenia hasła (a co za tym idzie siłę), co zwiększa ich użyteczność w długim okresie czasu. Więcej informacji oraz rekomendacje nt. zalecanych wartości parametrów: https://tools.ietf.org/id/draft-whited-kitten-password-storage-00.html#name-kdf-recommendations

Ad. 2: 6 lutego 2019 uchylone zostało Rozporządzenie Ministra Spraw Wewnętrznych i Administracji z dnia 29 kwietnia 2004 r. w sprawie dokumentacji przetwarzania danych osobowych oraz warunków technicznych i organizacyjnych, jakim powinny odpowiadać urządzenia i systemy informatyczne służące do przetwarzania danych osobowych wymagające okresowej zmiany haseł w systemach przetwarzających dane osobowe. Więcej informacji na stronie: https://isap.sejm.gov.pl/isap.nsf/DocDetails.xsp?id=wdu20041001024

Ad. 3: CERT Polska publikuje polską wersję słownika haseł będącą wynikiem analizy danych upublicznionych w wyciekach. Zawiera on zestaw około miliona najpopularniejszych haseł, posortowanych malejąco od haseł najbardziej popularnych. Może on posłużyć administratorom systemów przy wdrożeniu polityki haseł zgodnej z zaleceniami.

Ad. 4: W czerwcu 2025 roku zaktualizowaliśmy poprzednią rekomendację, podnosząc minimalną długość hasła z 12 do 14 znaków. Zmiana ta ujednolica publikowane przez nas materiały oraz skłania użytkowników do tworzenia długich haseł, bazujących na pełnych zdaniach.

Ad. 5: Bcrypt wspiera maksymalną długość 72 bajtów, w zależności od użytego kodowania może to oznaczać mniej niż 64 znaki. By obsłużyć ten przypadek krańcowy można najpierw uzyskać nieodwracalny skrót hasła innym bezpiecznym algorytmem, który zostanie wykorzystany jako dana wejściowa dla Bcrypt. Przykładowy system wykorzystujący to podejście wykorzystuje Dropbox, który opisał je w artykule "How Dropbox securely stores your passwords". Warto również wspomnieć, że błędna implementacja wstępnego hashowania może skutkować możliwością wyłuskania haseł (z ang. Password Shucking), skutkując całkowitym obejściem warstwy Bcrypt dla hashy podatnych na ten atak.

Powyższe rekomendacje zostały opracowane w oparciu o własne badania i obserwacje CERT Polska (więcej pod adresem cert.pl/hasla), oraz następujące źródła:

Udostępnij: