Ataki siłowe są dość łatwe do zrozumienia, ale trudne do ochrony. Szyfrowanie to matematyka a ponieważ komputery stają się szybsze w matematyce, coraz szybciej próbują wszystkich rozwiązań i sprawdzają, który z nich pasuje.
Ataki te mogą być stosowane przeciwko dowolnemu typowi szyfrowania, z różnym skutkiem. Ataki siłowe stają się coraz szybsze i bardziej skuteczne z każdym dniem, w miarę wypuszczania na rynek nowszego, szybszego sprzętu komputerowego.
Podstawy brutalnej siły
Ataki siłowe są łatwe do zrozumienia. Atakujący ma zaszyfrowany plik - powiedzmy, twój LastPass lub KeePass baza haseł. Wiedzą, że ten plik zawiera dane, które chcą zobaczyć, i wiedzą, że istnieje klucz szyfrowania, który go odblokowuje. Aby go odszyfrować, mogą zacząć wypróbowywać każde możliwe hasło i sprawdzić, czy skutkuje to odszyfrowaniem pliku.
Robią to automatycznie za pomocą programu komputerowego, więc szybkość, z jaką ktoś może wykonać szyfrowanie brutalną siłą, wzrasta, gdy dostępny sprzęt komputerowy staje się coraz szybszy, zdolny do wykonywania większej liczby obliczeń na sekundę. Atak siłowy prawdopodobnie rozpocząłby się od jednocyfrowych haseł przed przejściem do dwucyfrowych haseł i tak dalej, próbując wszystkich możliwych kombinacji, aż jedna zadziała.
„Atak słownikowy” jest podobny i polega na wypróbowaniu słów w słowniku - lub liście popularnych haseł - zamiast wszystkich możliwych haseł. Może to być bardzo skuteczne, ponieważ wiele osób używa takich słabych i powszechnych haseł.
Dlaczego atakujący nie mogą wymusić na siłę usług internetowych
Istnieje różnica między brutalnymi atakami online i offline. Na przykład, jeśli napastnik chce brutalnie wejść na Twoje konto Gmail, może zacząć wypróbowywać każde możliwe hasło - ale Google szybko je odetnie. Usługi zapewniające dostęp do takich kont będą ograniczać próby dostępu i blokować adresy IP, które próbują się zalogować tyle razy. W związku z tym atak na usługę online nie zadziałałby zbyt dobrze, ponieważ można wykonać bardzo niewiele prób, zanim atak zostanie zatrzymany.
Na przykład po kilku nieudanych próbach logowania Gmail wyświetli obraz CATPCHA, aby sprawdzić, czy nie jesteś komputerem, który automatycznie próbuje hasła. Prawdopodobnie całkowicie zatrzymają Twoje próby logowania, jeśli zdołasz kontynuować je wystarczająco długo.
Z drugiej strony, załóżmy, że osoba atakująca przechwyciła zaszyfrowany plik z Twojego komputera lub zdołała złamać zabezpieczenia usługi online i pobrać takie zaszyfrowane pliki. Atakujący ma teraz zaszyfrowane dane na własnym sprzęcie i może w wolnym czasie wypróbować dowolną liczbę haseł. Jeśli mają dostęp do zaszyfrowanych danych, nie ma sposobu, aby uniemożliwić im wypróbowanie dużej liczby haseł w krótkim czasie. Nawet jeśli używasz silnego szyfrowania, z korzyścią dla Ciebie jest zapewnienie bezpieczeństwa danych i uniemożliwienie innym dostępu do nich.
Haszowanie
Silne algorytmy haszujące mogą spowolnić ataki siłowe. Zasadniczo algorytmy haszujące wykonują dodatkową pracę matematyczną na haśle przed zapisaniem wartości uzyskanej z hasła na dysku. Jeśli zostanie użyty wolniejszy algorytm haszujący, będzie to wymagało tysięcy razy więcej pracy matematycznej, aby wypróbować każde hasło i radykalnie spowolnić ataki siłowe. Jednak im więcej pracy wymaga, tym więcej pracy musi wykonać serwer lub inny komputer za każdym razem, gdy użytkownik loguje się przy użyciu swojego hasła. Oprogramowanie musi równoważyć odporność na ataki siłowe z wykorzystaniem zasobów.
Brute-Force Speed
Szybkość zależy od sprzętu. Agencje wywiadowcze mogą budować wyspecjalizowany sprzęt tylko do ataków siłowych, tak jak górnicy bitcoinów budują własny specjalistyczny sprzęt zoptymalizowany do wydobywania bitcoinów. Jeśli chodzi o sprzęt konsumencki, najskuteczniejszym rodzajem sprzętu do ataków siłowych jest karta graficzna (GPU). Ponieważ można łatwo wypróbować wiele różnych kluczy szyfrowania naraz, wiele równoległych kart graficznych jest idealnym rozwiązaniem.
Pod koniec 2012 roku Ars Technica poinformował że klaster 25-GPU może złamać każde hasło Windows poniżej 8 znaków w mniej niż sześć godzin. Algorytm NTLM używany przez firmę Microsoft po prostu nie był wystarczająco odporny. Jednak po utworzeniu NTLM wypróbowanie wszystkich tych haseł zajęłoby znacznie więcej czasu. Nie uznano tego za wystarczające zagrożenie dla firmy Microsoft, aby wzmocnić szyfrowanie.
Szybkość rośnie i za kilka dziesięcioleci możemy odkryć, że nawet najsilniejsze algorytmy kryptograficzne i klucze szyfrowania, których używamy dzisiaj, mogą zostać szybko złamane przez komputery kwantowe lub inny sprzęt, z którego będziemy korzystać w przyszłości.
Ochrona danych przed atakami siłowymi
Nie ma sposobu, aby całkowicie się zabezpieczyć. Nie można powiedzieć, jak szybko osiągnie sprzęt komputerowy i czy którykolwiek z algorytmów szyfrowania, których używamy obecnie, ma słabości, które zostaną odkryte i wykorzystane w przyszłości. Oto jednak podstawy:
- Chroń swoje zaszyfrowane dane tam, gdzie hakerzy nie mogą uzyskać do nich dostępu. Po skopiowaniu danych na swój sprzęt mogą w wolnym czasie próbować atakować go siłą.
- Jeśli uruchamiasz jakąkolwiek usługę, która akceptuje logowanie przez Internet, upewnij się, że ogranicza ona próby logowania i blokuje osoby, które próbują zalogować się przy użyciu wielu różnych haseł w krótkim czasie. Oprogramowanie serwera zazwyczaj robi to zaraz po wyjęciu z pudełka, ponieważ jest to dobra praktyka w zakresie bezpieczeństwa.
- Używaj silnych algorytmów szyfrowania, takich jak SHA-512. Upewnij się, że nie używasz starych algorytmów szyfrowania ze znanymi słabościami, które można łatwo złamać.
- Używaj długich, bezpiecznych haseł. Cała technologia szyfrowania na świecie nie pomoże, jeśli używasz „hasła” lub zawsze popularnego „hunter2”.
Ataki siłowe są powodem do obaw podczas ochrony danych, wybierania algorytmów szyfrowania i wybierania haseł. To także powód, aby nadal rozwijać silniejsze algorytmy kryptograficzne - szyfrowanie musi nadążać za tym, jak szybko staje się nieefektywne przez nowy sprzęt.
Źródło zdjęcia: Johan Larsson na Flickr , Jeremy Gosney