Ten artykuł opiera się na publicznie dostępnych badaniach z zakresu cyberbezpieczeństwa, raportach branżowych oraz powszechnie akceptowanych praktykach bezpieczeństwa. Tam, gdzie wspomniano o osobistym doświadczeniu, zostało to wyraźnie zaznaczone.
W skrócie
- Hasła tworzone przez ludzi podążają za przewidywalnymi wzorcami, które atakujący wykorzystują w atakach słownikowych i opartych na regułach.
- Nawet hasła, które wydają się "sprytne", jak
L!nk3d1n2020, padają w kilka minut, ponieważ podążają za popularnymi regułami podstawiania znaków. - Hasła generowane przez CSPRNG odbierają atakującemu jego najpotężniejsze narzędzia: słowniki i reguły.
- Używaj menedżera haseł z silnym hasłem głównym, włącz MFA i nigdy nie używaj ponownie tego samego hasła.
Krótka odpowiedź
Po piętnastu latach pracy w testach penetracyjnych mogę potwierdzić, że hasła tworzone przez ludzi są konsekwentnie najsłabszym ogniwem w ocenach bezpieczeństwa. Atakujący nie zgadują haseł jedno po drugim — automatyzują ataki, wykorzystując słowniki zawierające miliardy prawdziwych haseł oraz przekształcenia oparte na regułach. Hasła takie jak Tiger2021! są łamane w ciągu kilku minut, ponieważ podążają za wzorcami, których ludzie niemal nie potrafią uniknąć: słowo, wielka litera, cyfry na końcu. Jedyną realną obroną jest całkowite wyeliminowanie tej ludzkiej przewidywalności poprzez kryptograficznie bezpieczne generowanie losowe.
Do szybkiego generowania użyj Generatora Haseł. Aby dowiedzieć się więcej, przeczytaj Entropia Hasła Wyjaśniona, Menedżer Haseł a Przeglądarka, Jak Długie Powinno Być Hasło? oraz Czy Bezpiecznie Jest Korzystać z Generatorów Online?.
Wyciek danych, o którym większość zapomniała — a nie powinna
W 2012 roku LinkedIn padł ofiarą jednego z największych w owym czasie wycieków danych w historii. Późniejsze analizy pokazały, że ujawniono około 167 milionów rekordów kont, z czego około 117 milionów zawierało adresy e-mail i hashe haseł.
Kiedy zespoły ds. bezpieczeństwa przeanalizowały złamane hasła, wyniki były boleśnie znajome. password1, linkedin123 i podobne mało przemyślane wybory pojawiały się milionami. Co ciekawsze — i bardziej niepokojące — nawet hasła, które wyglądały na sprytne, jak L!nk3d1n2020, padły szybko. Dlaczego? Ponieważ podążały za wzorcami, których ludzie niemal zawsze używają.
Od ponad piętnastu lat zajmuję się testami penetracyjnymi w cyberbezpieczeństwie. Moja praca polega na — legalnie — włamywaniu się do systemów, przy użyciu tych samych metod, którymi posługują się prawdziwi atakujący. Hasła nie są dla mnie tematem teoretycznym; to coś, czego zawodność widzę w praktyce każdego dnia.
Jak hasła są naprawdę atakowane
Aby zrozumieć, dlaczego niektóre hasła się utrzymują, a inne nie, trzeba spojrzeć na to z perspektywy atakującego. Atakujący nie zgadują haseł jednego po drugim. Automatyzują wszystko.
- Ataki słownikowe: Opierają się na ogromnych zbiorach prawdziwych haseł, słów, fraz i ich wariantów, zgromadzonych przez lata wycieków danych. Te słowniki zawierają miliardy pozycji i wciąż rosną.
- Ataki oparte na regułach: Są niszcząco skuteczne wobec ludzkiej kreatywności. Narzędzia automatycznie stosują popularne nawyki: zamianę "o" na "0", dodanie "123" lub "!" na końcu, wielką literę na początku, wstawienie roku i tak dalej. Większość "sprytnych" haseł pada dokładnie na tym etapie.
- Atak brute force: Sprawdzanie każdej możliwej kombinacji. Brzmi to przerażająco, ale w przypadku długich, prawdziwie losowych haseł, przechowywanych z użyciem nowoczesnych algorytmów haszujących, brute force szybko staje się niepraktyczny po prostu dlatego, że zajmuje zbyt dużo czasu.
Problem z hasłami tworzonymi samodzielnie
Lubimy hasła, które wymyślamy sami, ponieważ wydają się osobiste i łatwe do zapamiętania. Niestety badania — i doświadczenie — pokazują, że są one również wysoce przewidywalne.
- Wzorce się powtarzają: Badania na dużą skalę, w tym prace Carnegie Mellon University, konsekwentnie pokazują te same struktury: słowo lub imię, wielka litera na początku oraz cyfry lub symbole na końcu. Treść się zmienia, ale forma pozostaje ta sama. Gdy atakujący raz zamodelują tę strukturę, łamanie haseł staje się drastycznie szybsze.
- Długość ma swój sufit: Większość haseł tworzonych przez użytkowników ma od 8 do 10 znaków. Nie dlatego, że ludzie nie wiedzą, że dłuższe jest bezpieczniejsze, ale dlatego, że pamięć naturalnie popycha nas w stronę krótszych ciągów znaków.
- Wycieka do nich informacja osobista: Daty urodzin, imiona zwierząt domowych, rocznice — ludzie używają ich nieustannie. A w erze mediów społecznościowych atakujący często nawet nie muszą zgadywać.
Dlaczego losowe hasła to zupełnie inna gra
Hasło stworzone przez bezpieczny generator losowych haseł — coś w rodzaju r8$NpL#2qW9 — nie jest po prostu "bardziej złożone". Jest fundamentalnie inne.
Każdy znak jest wybierany niezależnie. Nie ma słów, podstawień ani ludzkiej logiki. Ten jeden fakt odbiera atakującemu jego najpotężniejsze narzędzia: słowniki i reguły.
Z perspektywy liczbowej:
- 8-znakowe hasło używające wyłącznie małych liter ma około 26⁸ możliwości (~209 miliardów).
- Dodaj wielkie litery, cyfry i symbole, a nagle znajdziesz się przy około 95⁸ (~6 biliardów).
- Wydłuż to do 12 znaków, a przestrzeń staje się astronomicznie ogromna.
Ale prawdziwa przewaga to nie tylko rozmiar — to fakt, że losowe hasła zmuszają atakujących do brute force, co jest wolne, kosztowne i często nie warte wysiłku.
Jak w praktyce wygląda łamanie tych haseł
Z perspektywy pentestera różnica jest uderzająca:
| Typ hasła | Przykład | Metoda atakującego | Czas złamania |
|---|---|---|---|
| Tworzone samodzielnie | Tiger2021! | Słownik i reguły | Od minut do godzin |
| Generowane losowo | r8$NpL#2qW9 | Czysty brute force | Lata / Wieki |
Jeśli hasło jest właściwie zahaszowane algorytmem takim jak bcrypt lub Argon2, brute force wobec losowego ciągu znaków oznacza ramy czasowe, które czynią atak niewykonalnym. W większości rzeczywistych przypadków atakujący po prostu przechodzi dalej.
Prawdziwy kompromis: ludzie kontra losowość
Największą słabością losowych haseł nie jest bezpieczeństwo — to użyteczność. Ludzie fatalnie radzą sobie z zapamiętywaniem bezsensownych ciągów znaków. To jest centralne napięcie w bezpieczeństwie haseł:
- Hasła, które ludzie dobrze zapamiętują, zwykle są słabe.
- Hasła, które są silne, zwykle są niemożliwe do zapamiętania.
Nowoczesne praktyki bezpieczeństwa istnieją właśnie po to, by wypełnić tę lukę.
Co naprawdę działa dziś
Na podstawie konsensusu branżowego i realnego doświadczenia:
- Używaj menedżera haseł: Narzędzia takie jak Bitwarden lub 1Password pozwalają polegać na jednym silnym haśle głównym, podczas gdy wszystko inne jest długie, losowe i unikalne. Jest to powszechnie uważane za najlepszą opcję dla większości ludzi.
- Jeśli musisz zapamiętać, postaw na długość: Ciąg niepowiązanych ze sobą słów (np.
coffee-zebra-battery-stapler) jest często bardziej odporny na ataki — i łatwiejszy do zapamiętania — niż krótkie hasło pełne symboli. - Nigdy nie używaj haseł ponownie: Gdy jedna witryna zostanie zaatakowana, ponowne użycie zamienia to w efekt domina.
- Włącz MFA: E-mail, bankowość, konta w chmurze — zawsze korzystaj z uwierzytelniania wieloskładnikowego.
- Sprawdź swoją ekspozycję na wycieki: Usługi takie jak Have I Been Pwned pozwalają sprawdzić, czy Twój e-mail pojawia się w znanych zestawach danych z wycieków.
Najważniejsze wnioski
- Ludzkie hasła podążają za powtarzalnymi wzorcami strukturalnymi (słowo + liczba + symbol).
- Ataki słownikowe zawierają miliardy prawdziwych haseł pochodzących z wycieków danych.
- Ataki oparte na regułach automatycznie stosują popularne podstawienia (
o→0,a→@, dodanie123lub!). - Losowe hasła o długości 12+ znaków zmuszają atakujących do brute force, co jest obliczeniowo niewykonalne wobec nowoczesnego haszowania.
- Menedżery haseł wypełniają lukę między bezpieczeństwem a użytecznością.
Podsumowanie
Ludzka kreatywność nie ma szans w starciu ze zautomatyzowanymi narzędziami ataku. Jedynymi hasłami, które przetrwają rzeczywiste testy penetracyjne, są te generowane przez CSPRNG, w których każdy znak jest niezależny i nieprzewidywalny. To nie jest filozoficzna debata na temat tego, czy ludzie, czy maszyny tworzą "lepsze" hasła — to zarządzanie ryzykiem. Komputery są dobre w generowaniu losowości, a ludzie są dobrzy w ochronie jednego sekretu i reagowaniu na monity takie jak MFA. Niech każdy robi to, co potrafi najlepiej.
Gotów, by wzmocnić swoje bezpieczeństwo? Wygeneruj teraz silne, offline'owe hasło, aby natychmiast zabezpieczyć swoje konta.
Dlaczego możesz zaufać PassGenerate
- Hasła są generowane lokalnie w Twojej przeglądarce za pomocą Web Crypto API.
- Żadne hasło nie jest przesyłane na serwery.
- Wykorzystuje kryptograficznie bezpieczny generator liczb pseudolosowych (CSPRNG).
- Stosuje się do nowoczesnych najlepszych praktyk bezpieczeństwa rekomendowanych przez NIST i OWASP.
Źródła
- NIST SP 800-63B – Digital Identity Guidelines
- OWASP Password Storage Cheat Sheet
- OWASP Authentication Cheat Sheet
- Dokumentacja Web Crypto API na MDN
- CISA Password Guidance