Password Cracker:Jak złamać/odgadnąć hasło

⚡ Inteligentne podsumowanie

Łamanie haseł to praktyka odzyskiwania danych uwierzytelniających poprzez systematyczne zgadywanie, porównywanie lub obliczanie ich na podstawie zapisanych haszy. Niniejszy przegląd wyjaśnia, jak działają atakujący, jakich narzędzi używają, jakie czynniki siły im przeszkadzają oraz jakie środki kontroli muszą egzekwować administratorzy.

  • 🧭 FoundationZasada al: Siła hasła zależy od jego długości, złożoności znaków i nieprzewidywalności, aby oprzeć się próbom siłowego łamania hasła i odzyskiwaniu danych ze słownika.
  • 🔐 Haszowanie a szyfrowanie: Przechowywane dane uwierzytelniające są chronione za pomocą jednokierunkowych funkcji skrótu, takich jak MD5, SHA-256 lub bcrypt, zamiast szyfrowania odwracalnego.
  • 🎯 Typowe techniki ataków: Słownik, brute force, rainbow table, hybrydy, spidering i credential stuffing wykorzystują przewidywalne ludzkie zachowanie.
  • 🛠️. Zestaw narzędzi do łamania zabezpieczeń: John the Ripper, Hashcat, Cain & Abel, Ophcrack, a Hydra automatyzuje odzyskiwanie danych w trybie offline i online na podstawie przechwyconych skrótów.
  • 🤖 Ataki wykorzystujące sztuczną inteligencję: Modele generatywne przewidują realistyczne hasła na podstawie wyciekłych danych, co znacznie zwiększa wydajność słownika w przypadku słabych poświadczeń.
  • 🛡️ Sterowanie obronne: Solone skróty, uwierzytelnianie wieloskładnikowe, zasady blokowania i menedżery haseł neutralizują większość prób łamania zabezpieczeń w środowiskach produkcyjnych.

Jak złamać (zhakować) hasło?

Łamanie haseł to jedna z najstarszych dziedzin bezpieczeństwa ofensywnego, a mimo to pozostaje niezwykle istotne, ponieważ użytkownicy wciąż wybierają przewidywalne sekrety. W tym samouczku przedstawimy typowe techniki wykorzystywane przez atakujących do odzyskiwania haseł, narzędzia automatyzujące te działania oraz środki zaradcze, które administratorzy mogą wdrożyć, aby chronić systemy przed tymi atakami.

Co to jest łamanie haseł?

Łamanie haseł to proces polegający na próbie uzyskania nieautoryzowanego dostępu do systemu o ograniczonym dostępie poprzez odzyskanie klucza tajnego chroniącego mechanizm uwierzytelniania. Proces łamania może obejmować porównywanie zapisanych skrótów haseł z wstępnie obliczoną listą słów lub uruchamianie algorytmów generujących hasła kandydackie, aż do znalezienia pasującego hasła. Po znalezieniu pasującego hasła atakujący może uwierzytelnić się jako uprawniony użytkownik, bez konieczności zgadywania hasła online.

Co to jest siła hasła?

Siła hasła to miara jego skuteczności w odpieraniu ataków polegających na jego łamaniu. Siłę hasła określają trzy właściwości:

  • Długość: całkowita liczba znaków, jakie zawiera hasło.
  • Złożoność: czy wykorzystuje kombinację wielkich liter, małych liter, cyfr i symboli.
  • Nieprzewidywalność: czy hasło może zostać łatwo odgadnięte przez atakującego znającego użytkownika.

Porównajmy trzy hasła: password, password1, #hasło1$W tym przykładzie wykorzystamy wskaźnik siły hasła cPanel. Poniższe grafiki pokazują siłę każdego kandydata.

Wskaźnik siły hasła cPanel pokazujący bardzo słabą ocenę dla hasła wartościowego

Uwaga: użyte hasło to password; siła wynosi 1, co jest bardzo słabe.

Wskaźnik siły hasła cPanel pokazujący słabą ocenę dla wartości password1

Uwaga: użyte hasło to password1; siła wynosi 28, co nadal jest słabe.

Wskaźnik siły hasła cPanel pokazujący silną ocenę dla wartości hashpassword1dollar

Uwaga: użyte hasło to #hasło1$Siła hasła wynosi 60, co oznacza, że ​​jest ono silne. Im wyższa siła hasła, tym lepsze hasło.

Załóżmy teraz, że musimy przechowywać te same hasła za pomocą funkcji skrótu MD5. Użyjemy internetowego generatora skrótów MD5, aby przekonwertować każde hasło na jego wartość skrótu. Poniższa tabela przedstawia otrzymane skróty.

Hasło Skrót MD5 Wskaźnik siły cPanel
password 5f4dcc3b5aa765d61d8327deb882cf99 1
password1 7c6a180b36896a0a8c02787eeafb0e4c 28
#hasło1$ 29e08fb7103c327d68327f23d8d9256c 60

Teraz skorzystamy z publicznej witryny wyszukiwania wstecznego MD5, aby złamać powyższe skróty. Poniższe obrazy przedstawiają wyniki łamania haseł dla każdej wartości.

Wynik odwrotnego wyszukiwania MD5 dla skrótu wartości hasła

Wynik odwrotnego wyszukiwania MD5 dla skrótu wartości password1

Wynik odwrotnego wyszukiwania MD5 pokazuje, że nie udało się złamać silnej wartości hashpassword1dollar

Jak widać z powyższych wyników, udało nam się złamać pierwsze i drugie hasło, które miały niższy współczynnik siły. Nie udało nam się złamać trzeciego hasła, które było dłuższe, bardziej złożone i nieprzewidywalne. Miało ono również wyższy współczynnik siły.

Techniki łamania haseł

Istnieje kilka sprawdzonych technik wykorzystywanych przez atakujących do odzyskiwania haseł. Poniżej opiszemy najczęściej stosowane kategorie.

  • Atak słownikowy: Metoda ta wykorzystuje listę prawdopodobnych kandydatów i porównuje każdą z nich z przechwyconymi hasłami użytkowników lub skrótami haseł.
  • Atak siłowy: Ataki siłowe polegają na łączeniu znaków alfanumerycznych i symboli za pomocą algorytmów, aby systematycznie generować każde możliwe hasło, aż do znalezienia pasującego. Na przykład hasło takie jak password można również wypróbować jako słowo p@$$ stosując hybrydową zasadę brutalnej siły.
  • Atak stołu tęczowego: Ta metoda opiera się na wstępnie obliczonych skrótach. Załóżmy, że baza danych przechowuje hasła w postaci skrótów MD5. Atakujący tworzy inną tabelę, która przechowuje skróty MD5 popularnych haseł i porównuje przechwycony skrót z tabelą wstępnie obliczoną. Jeśli zostanie znaleziony odpowiednik, hasło zostaje odzyskane.
  • Zgadywać: Jak sama nazwa wskazuje, metoda ta polega na zgadywaniu. Hasła takie jak qwerty, password, Admin Są powszechnie używane lub ustawione jako domyślne. Jeśli nie zostaną zmienione, mogą zostać szybko naruszone.
  • Pająk: Większość organizacji używa haseł zawierających dane firmowe. Informacje te można pozyskać ze stron internetowych firm i mediów społecznościowych, takich jak Facebook i Twitter. Spidering gromadzi dane z tych źródeł, aby tworzyć ukierunkowane listy słów, które są następnie wykorzystywane w atakach słownikowych i brute force.
  • Nadzienie poświadczeń: Napastnicy odtwarzają pary nazw użytkowników i haseł, które wyciekły w wyniku włamania do niezwiązanych ze sobą usług, wykorzystując w ten sposób użytkowników, którzy wielokrotnie wykorzystują swoje dane uwierzytelniające.

Lista słów kluczowych dla fikcyjnej firmy mogłaby obejmować: 1976 (rok urodzenia założyciela); smith, jones (nazwiska); acme (nazwa firmy); built, to, last (słowa kluczowe dotyczące wizji); golf, szachy, piłka nożna (hobby).

Poniższa tabela porównuje techniki pod względem szybkości, wymagań wstępnych i wykrywalności.

Technika Prędkość Wymaga hasha? Czy można je wykryć w Internecie?
Słownik pompatyczność Opcjonalnie Tak
Brutalna siła Zwolnij Opcjonalnie Tak
Tęczowy stół Bardzo szybka Tak Nie (offline)
Zgadywanie Zmienna Nie Tak
Pająk Zwolnij Nie Tak
Wypełnianie poświadczeń pompatyczność Nie Tak

Password Cracker Narzędzia

Narzędzia do łamania haseł to programy, które automatyzują opisane powyżej techniki. Wspomnieliśmy już o jednym z takich narzędzi w przykładzie dotyczącym siły hasła, gdzie publiczne wyszukiwanie MD5 wykorzystuje tablicę tęczową do odwrócenia popularnych skrótów. Przyjrzymy się teraz dodatkowym narzędziom, z których korzystają praktycy podczas autoryzowanych ocen.

1) John the Ripper
John the Ripper Korzysta z wiersza poleceń i akceptuje listy słów wraz z regułami do generowania kandydatów. Automatycznie wykrywa wiele popularnych formatów skrótów. Program jest darmowy, a specjalnie przygotowane listy słów są dostępne osobno. Odwiedź https://www.openwall.com/john/.

2) Cain & Abel
Cain & Abel biegnie dalej Windows i odzyskuje hasła użytkowników, przeprowadza sniffing sieciowy i wiele więcej. Jego graficzny interfejs sprawia, że ​​jest popularny wśród nowicjuszy. Narzędzie nie było aktywnie rozwijane od 2014 roku, dlatego należy go używać tylko w starszych systemach laboratoryjnych. Zobacz https://sectools.org/tool/cain/.

3) Ophcrack
Ophcrack jest platformą wieloplatformową Windows Łamacz haseł wykorzystujący tablice tęczowe. Działa na Windows, Linux i macOSi zawiera moduł siłowy. Odwiedź https://ophcrack.sourceforge.io/.

4) Hashcat
Hashcat to nowoczesny standard odzyskiwania haseł offline. Obsługuje ponad 300 algorytmów haszujących, wykorzystuje akcelerację GPU i oferuje ataki oparte na regułach. Dokumentacja jest dostępna pod adresem https://hashcat.net/hashcat/.

5) Hydra
Hydra (THC-Hydra) jest przeznaczona dla usług online, takich jak SSH, FTP, RDP i formularze logowania HTTP. Dostarczana jest z Kali Linux i jest szeroko stosowany w autoryzowanych operacjach czerwonych drużyn.

Jak chronić się przed atakami polegającymi na łamaniu haseł?

Aby zmniejszyć ryzyko złamania haseł, organizacja może podjąć następujące działania:

  • Wymagaj co najmniej 12 znaków i unikaj przewidywalnych wzorców, takich jak 11552266 lub qwerty1234.
  • Przechowuj hasła przy użyciu powolnej jednokierunkowej funkcji skrótu, takiej jak bcrypt, scrypt lub Argon2, a nie szybkich funkcji skrótu, takich jak MD5 lub SHA-1.
  • Dodaj sól do każdego hasła przed haszowaniem; sole uniemożliwiają wyszukiwanie w tabelach tęczowych, nawet gdy sam hasz jest szybki.
  • Wprowadź zasady dotyczące haseł, które faworyzują hasła o wysokiej sile i promują hasła frazowe, zgodnie z zaleceniami NIST SP 800-63B.
  • Włącz uwierzytelnianie wieloskładnikowe (MFA), aby samo skradzione hasło nie zapewniało dostępu.
  • Użyj menedżera haseł, aby wygenerować unikalne dane uwierzytelniające dla każdej usługi, neutralizując w ten sposób ataki polegające na wypełnianiu danych uwierzytelniających.
  • Skonfiguruj blokadę konta, ograniczanie przepustowości i ciągły monitoring, aby wcześnie wykryć próby ataku siłowego w Internecie.

Aktywność hakerska: zhakuj teraz!

W tym praktycznym scenariuszu zamierzamy złamać Windows Konto wykorzystujące proste hasło. Windows przechowuje lokalne dane uwierzytelniające w postaci skrótów NTLM (schemat oparty na MD4), a my wykorzystamy moduł łamania NTLM w Cain and Abel, aby odzyskać wartość.

Kain i Abel potrafią łamać hasła za pomocą ataku słownikowego, brute force lub kryptoanalizy (wstępnie obliczone tabele). Tutaj wykorzystamy atak słownikowy. Pobierz listę słów 10 tys. najczęściej spotykanych plików.zip z renomowanego lustra. Na potrzeby tej demonstracji utworzyliśmy konto o nazwie Konta z hasłem qwerty na Windows 7 maszyna laboratoryjna.

Windows 7 kont użytkowników laboratoryjnych o nazwie Qwerty utworzonych na potrzeby demonstracji

Jak złamać hasło

Poniższy opis łączy każdy ekran Kaina i Abla z akcją, którą należy wykonać. Postępuj zgodnie z instrukcjami na swoim koncie laboratoryjnym, a nie na systemie, którego nie jesteś właścicielem.

Krok 1) Otwórz Kaina i Abla.
Uruchom aplikację. Zobaczysz poniższy ekran główny.

Główny interfejs Cain i Abel z widoczną zakładką Cracker

Krok 2) Znajdź przycisk Dodaj.
Upewnij się, że karta Cracker jest wybrana, jak pokazano powyżej, i kliknij przycisk Dodaj na pasku narzędzi.

Wybrana karta Cracker z podświetlonym przyciskiem Dodaj na pasku narzędzi Cain i Abel

Krok 3) Wybierz źródło importu.
Pojawi się następujące okno dialogowe. Wybierz Importuj hasze z systemu lokalnego i kliknij Dalej.

Dialog Kaina i Abla z pytaniem, z którego źródła importować skróty NTLM

Krok 4) Revzobacz zaimportowane konta.
Lokalne konta użytkowników są wymienione poniżej. Dokładne wyniki będą odzwierciedlać konta użytkowników na Twoim komputerze laboratoryjnym.

Lista importowanych produktów lokalnych Windows konta gotowe do złamania w Kainie i Ablu

Krok 5) Kliknij prawym przyciskiem myszy konto docelowe.
Kliknij prawym przyciskiem myszy konto, które chcesz zhakować. W tym samouczku użyjemy Konta użytkownika.

Kliknij prawym przyciskiem myszy menu kontekstowe użytkownika Konta w Kainie i Ablu

Krok 6) Otwórz panel ataku słownikowego.
W oknie ataku słownikowego kliknij prawym przyciskiem myszy w sekcji słownika i wybierz Dodaj do listy zakupów jak pokazano poniżej.

Panel ataku słownikowego z zaznaczoną opcją Dodaj do listy

Krok 7) Przejdź do pliku z listą słów.
Przejdź do 10k-most-common.txt plik, który właśnie pobrałeś i wybierz go.

Przeglądarka plików otwarta w Kainie i Ablu, aby wybrać listę 10 tys. najpopularniejszych haseł

Krok 8) RevZobacz odzyskane hasło.
Jeżeli użytkownik wybrał proste hasło, takie jak qwerty, zobaczysz wyniki podobne do tych przedstawionych poniżej, z wartością w postaci zwykłego tekstu obok konta użytkownika.

Kain i Abel pokazują odzyskane hasło w postaci jawnego tekstu qwerty dla użytkownika Kont

Uwaga: czas potrzebny na złamanie hasła zależy od jego siły, złożoności listy kandydatów oraz mocy obliczeniowej komputera. Jeśli atak słownikowy nie pozwoli na odzyskanie hasła, należy spróbować ataku siłowego lub kryptoanalizy.

Jak AI działa w Reshaping Łamanie haseł i obrona

Sztuczna inteligencja stała się poważną siłą po obu stronach łamania haseł. Atakujący trenują modele językowe na podstawie wycieków danych uwierzytelniających, aby przewidywać realistyczne hasła, podczas gdy obrońcy łączą te same modele z systemami telemetrycznymi, aby szybciej wykrywać naruszenia.

Oto w jaki sposób AI zmienia dziś tę dziedzinę:

  • Inteligentniejsze generowanie list słów: Modele generatywne, takie jak PassGAN, uczą się ludzkich wzorców haseł i generują listy kandydatów, które łamią więcej haseł niż statyczne słowniki.
  • Ocena ryzyka behawioralnego: Defensywna AI sprawdza geografię logowania, odcisk palca urządzenia i typping rytm, wysyłanie nietypowych kontekstów w celu uwierzytelnienia na wyższym poziomie.
  • Wykrywanie anomalii w czasie rzeczywistym: Klasyfikatory uczenia maszynowego monitorują logi uwierzytelniania i sygnalizują próby wypełniania danych uwierzytelniających lub powolne ataki siłowe, których reguły podpisów nie wykrywają.
  • Zautomatyzowany coaching polityczny: Platformy tożsamości oceniają nowe hasła na podstawie korpusów właściwych dla danej organizacji i sugerują silniejsze zamienniki, zanim użytkownicy je zaakceptują.
  • Obrona odporna na phishing: Sztuczna inteligencja przyspiesza wdrażanie FIDO2 i przepływów kluczy dostępu poprzez analizę sygnałów ryzyka i zmniejszanie oporów użytkowników.

Połącz monitorowanie za pomocą sztucznej inteligencji z uwierzytelnianiem wieloskładnikowym, nowoczesnym haszowaniem, takim jak Argon2, i szybkimi powiadomieniami o naruszeniach, aby automatyczna obrona wyprzedzała zautomatyzowany atak.

FAQ

Łamanie haseł jest legalne tylko wtedy, gdy odbywa się za wyraźną pisemną zgodą, na przykład podczas testów penetracyjnych, audytów wewnętrznych lub odzyskiwania własnych danych uwierzytelniających. Nieautoryzowane łamanie haseł narusza przepisy dotyczące niewłaściwego użytkowania komputera w niemal każdej jurysdykcji.

Hashowanie to transformacja jednokierunkowa: oryginalnej wartości nie można odzyskać. Szyfrowanie jest odwracalne przy użyciu odpowiedniego klucza. Hasła zawsze należy przechowywać w postaci haszy z solą, przy użyciu algorytmów takich jak bcrypt, scrypt lub Argon2, a nigdy w postaci zaszyfrowanych ciągów znaków.

Do łamania offline, Hashcat jest ogólnie najszybszy, ponieważ wykorzystuje przyspieszenie GPU i obsługuje ataki oparte na regułach w ponad 300 formatach skrótów. John the Ripper pozostaje popularny, gdy zasoby GPU są ograniczone.

Sól to unikalna, losowa wartość dodawana do każdego hasła przed jego haszowaniem. Dodawanie soli uniemożliwia ataki typu rainbow table, ponieważ wstępnie obliczone tabele działają tylko w przypadku haszy niezasolonych. Sole zapewniają również, że dwóch użytkowników z tym samym hasłem generuje różne zapisane wartości.

12-znakowe hasło, łączące litery, cyfry i symbole, może zająć wieki, zanim zostanie złamane metodą brute force na wolnym hashu, takim jak bcrypt. W przypadku szybkiego, niezasolonego MD5, to samo hasło może zostać złamane w kilka dni. Wybór i długość hasha mają znaczenie.

Atakujący trenują modele generatywne, takie jak PassGAN, na podstawie wycieków danych uwierzytelniających, aby przewidywać realistyczne hasła ludzkie. Powstałe w ten sposób listy słów łamią zauważalnie więcej haszy niż statyczne słowniki w tym samym czasie działania, zwłaszcza w połączeniu z mutacjami opartymi na regułach. Hashcat.

Tak. Defensywna AI bazuje na normalnym zachowaniu logowania, ocenia ryzyko każdej próby i sygnalizuje fale prób przeładowania danych uwierzytelniających lub powolne ataki siłowe, które są pomijane przez silniki reguł. Połącz monitorowanie sztucznej inteligencji z uwierzytelnianiem wieloskładnikowym i nowoczesnym haszowaniem, takim jak Argon2, aby uzyskać najlepsze rezultaty.

Uwierzytelnianie wieloskładnikowe blokuje zdecydowaną większość prób włamania, ponieważ samo odzyskanie hasła nie pozwala na dokończenie logowania. Najsilniejszą ochronę przed phishingiem zapewniają takie elementy jak klucze bezpieczeństwa FIDO2 i hasła, które należy włączyć wszędzie tam, gdzie to możliwe.

Podsumuj ten post następująco: