Ataki siłowe
Ataki siłowe są przeprowadzane przez hakerów, którzy próbują złamać hasło, po prostu wypróbowując różne kombinacje znaków w krótkich odstępach czasu. Algorytm jest bardzo prosty i ogranicza się do wypróbowania jak największej liczby kombinacji znaków, dlatego też nazywany jest również "wyszukiwaniem wyczerpującym". Atakujący zazwyczaj korzysta z komputera o wysokiej wydajności, który wykonuje dużą liczbę obliczeń na sekundę i w związku z tym może przetestować dużą liczbę kombinacji w możliwie najkrótszym czasie.
Metoda ta jest często z powodzeniem stosowana w praktyce, ponieważ wielu użytkowników używa krótkich haseł, które często składają się tylko z liter alfabetu, drastycznie zmniejszając liczbę możliwych kombinacji i ułatwiając ich odgadnięcie.
Odszyfrowywanie haseł
Projekt RC5 organizacji Distributed. net pokazuje, jak szybko można odszyfrować hasła. Celem projektu jest odszyfrowanie wiadomości, która została zaszyfrowana 72-bitowym kluczem. W tym celu wypróbowywane są wszystkie możliwe klucze, aż do znalezienia odpowiedniego. Ponieważ wielu użytkowników udostępnia swoje komputery na potrzeby tego projektu, obecnie (stan na 8 maja 2012 r.) można wygenerować ponad 800 miliardów kluczy na sekundę. Starsze projekty tej organizacji złamały klucz 56-bitowy w ciągu 250 dni, a klucz 64-bitowy w ciągu 1 757 dni.
Kombinacja i długość hasła
Niektóre przykłady obliczeń zilustrują interakcję długości i użytych znaków dla bezpieczeństwa hasła. W przykładach obliczeniowych oczekuje się generowania 2 miliardów kluczy na sekundę, ponieważ odpowiada to w przybliżeniu prędkości bardzo silnego pojedynczego komputera.
Podczas tworzenia hasła zazwyczaj dostępne są następujące znaki:
- Liczby (10 różnych: 0-9)
- Litery (52 różne: A-Z i a-z)
- Znaki specjalne (32 różne).
Liczbę możliwych kombinacji oblicza się za pomocą następującego wzoru:
Możliwe kombinacje = możliwa liczbaznakówDługość hasła
Skutkuje to następującymi przykładami obliczeń bez uwzględnienia innych czynników, takich jak ataki słownikowe:
Hasło składa się z | Możliwe kombinacje | Czas wymagany do odszyfrowania |
---|---|---|
5 znaków |
365= 60,466,176 |
60,466,176 / |
7 znaków |
527= 1,028,071,702,528 |
1,028,071,702,528 / |
8 znaków |
688= 457,163,239,653,376 |
457,163,239,653,376 / |
9 znaków |
949= 572,994,802,228,616,704 |
572,994,802,228,616,704 / |
12 znaków |
9412= 475,920,314,814,253,376,475,136 |
475,920,314,814,253,376,475,136 / |
Bardzo wyraźnie widać wpływ długości hasła i użycia różnych grup znaków na bezpieczeństwo hasła.
Ochrona przed atakami typu brute-force
Jedynym sposobem obrony przed atakami typu brute-force jest użycie złożonego hasła głównego, które jest wystarczająco długie i składa się z kombinacji liter, znaków specjalnych, cyfr oraz wielkich i małych liter. Im bardziej złożone i dłuższe jest Państwa hasło, tym mniejsze prawdopodobieństwo, że używane oprogramowanie "odgadnie" wybraną przez Państwa kombinację przez przypadek, jak widać na powyższych przykładach obliczeń.
Po utworzeniu nowego hasła w Password Depot lub wygenerowaniu go automatycznie za pomocą generatora haseł, zobaczą Państwo, ile czasu zajmie złamanie tego hasła. Password Depot bierze pod uwagę nie tylko powyższe czynniki, takie jak liczba znaków, ale także inne podatności, takie jak podatność na ataki słownikowe.
Innym sposobem na utrudnienie ataków brute-force jest wydłużenie czasu między dwiema próbami logowania (po błędnym wprowadzeniu hasła). W rezultacie wysokowydajny komputer hakera może zostać spowolniony pomimo wielu obliczeń na sekundę, do których teoretycznie byłby zdolny. Właśnie dlatego w Password Depot okno dialogowe hasła głównego jest blokowane na kilka sekund, jeśli użytkownik wprowadzi nieprawidłowe hasło główne. Wraz ze wzrostem częstotliwości wprowadzania błędnych haseł, ten czas oczekiwania również się wydłuża.