Hakerzy używają różnych metod do łamania haseł, a jedną z nich jest atak z użyciem tablic tęczowych. W niektórych przypadkach metoda ta może być szybsza niż ataki słownikowe lub credential stuffing.
W tym artykule analizujemy, jak działają ataki z wykorzystaniem tablic tęczowych i omawiamy sposoby ochrony przed nimi.
Definicja ataku typu rainbow table
Atak typu rainbow table to atak kryptograficzny wykorzystywany przez hakerów do włamywania się do systemów poprzez odgadywanie haseł na podstawie ich kryptograficznych skrótów, które pełnią rolę cyfrowych odcisków klucza. Funkcja skrótu przypisuje każdemu hasłu odpowiedni ciąg znaków.
W przeciwieństwie do ataku typu brute-force, który sprawdza każde możliwe hasło po kolei, atak typu rainbow table nie wymaga zgadywania po wstępnym obliczeniu tabeli. Ta wstępnie obliczona tabela (nazywana rainbow table ze względu na to, jak wygląda w przypadku kodowania kolorami) jest w istocie dużą bazą danych par wartości skrótów powiązanych z ich odpowiednikami w postaci zwykłego tekstu.
Jak działa atak na hasła typu rainbow table
1. Tworzenie listy haseł
Tworząc tabele rainbow table, hakerzy często obierają za cel najbardziej prawdopodobne i powszechnie używane hasła o prostych wzorcach (na przykład 123456, password lub qwerty), słowa ze słownika lub zrzuty haseł uzyskane w wyniku naruszenia danych.
2. Wybór funkcji skrótu i konwersja haseł
Ataki typu rainbow table dobrze sprawdzają się w przypadku prostszych i szybszych funkcji kryptograficznego skrótu, takich jak MD-5, SHA-1, LM Hash lub NTLM Hash, ponieważ nie wykorzystują one funkcji zabezpieczających, takich jak sól (dodawanie losowych danych do każdego hasła przed utworzeniem skrótu) lub rozciąganie klucza (wielokrotne mieszanie hasła).
| Hasło przetworzone za pomocą kryptograficznego skrótu MD-5 | Hasło w postaci zwykłego tekstu |
| 482c811da5d5b4bc6d497ffa98491e38 | password123 |
Każde hasło w postaci zwykłego tekstu przechodzi przez funkcję skrótu, aby wygenerować odpowiadający mu kryptograficzny skrót, który stanowi unikalny, stały ciąg znaków, jak w powyższym przykładzie. Gdy wszystkie hasła zostaną przetworzone na kryptograficzne skróty, haker może użyć ich do stworzenia tabeli rainbow table.
3. Tworzenie tabeli rainbow table w celu ujawnienia haseł
Tabelę rainbow table można postrzegać jako duży arkusz programu Excel, z kryptograficznymi skrótami haseł w pierwszej kolumnie i hasłami w postaci zwykłego tekstu w drugiej. Jeśli w tej tabeli znajduje się skradziony skrót, oznacza to, że w komórce obok znajduje się złamane hasło.
Przykłady ataków typu rainbow table
Oto dwa hipotetyczne przykłady ilustrujące, jak może przebiegać atak typu rainbow table:
- Haker identyfikuje serwis społecznościowy, który używa przestarzałego algorytmu skrótu bez żadnego solenia. Wykorzystując lukę SQL injection, atakujący wyciąga wartości kryptograficznych skrótów haseł użytkowników z bazy danych strony internetowej. Następnie używa wstępnie obliczonej tabeli rainbow table, aby szybko przekonwertować tysiące tych skrótów z powrotem na hasła w postaci zwykłego tekstu, przez co konto użytkownika staje się zagrożone.
- Podczas rutynowego monitoringu sieci haker odkrywa, że strona internetowa e-commerce przesyła kryptograficzne skróty haseł w sposób niezabezpieczony między serwerami i używa narzędzi do podsłuchiwania sieci w celu przechwycenia tych danych. Ponieważ ma teraz dostęp do kryptograficznych skrótów haseł, haker używa ataku typu rainbow table, aby odszyfrować hasła klientów, uzyskując dostęp do ich kont zakupowych i danych osobowych.
Naruszenia danych w wyniku ataku typu rainbow table
Ataki typu rainbow table były wykorzystywane w świecie rzeczywistym do kradzieży milionów danych logowania.
Na przykład atak na LinkedIn w 2012 roku(nowe okno) przeprowadzony przez rosyjskich cyberprzestępców doprowadził do kradzieży prawie 6,5 miliona haseł do kont użytkowników, powodując znaczące naruszenie danych. Po początkowym odkryciu, w 2016 roku LinkedIn znalazł dodatkowe 100 milionów zagrożonych adresów e-mail i haseł związanych z tym samym incydentem. Skradzione hasła były słabo zabezpieczone, brakowało im dodatkowych środków bezpieczeństwa, takich jak solenie, co ułatwiło atakującym ich odszyfrowanie przy użyciu standardowych tabel rainbow table.
Jak zapobiegać atakom typu rainbow table
Wybieraj platformy z silnymi funkcjami skrótu
Bezpieczne funkcje skrótu, takie jak bcrypt(nowe okno) lub Argon2(nowe okno), wykorzystują solenie(nowe okno) w celu dodania losowych danych do Twojego hasła przed utworzeniem jego kryptograficznego skrótu. Bez soli kryptograficzny skrót hasła nie pojawi się w tabeli rainbow table, więc atak by się nie powiódł.
Aby dowiedzieć się, jakich funkcji skrótu używa dany serwis lub aplikacja do przechowywania haseł, sprawdź jej politykę prywatności(nowe okno), sekcję FAQ, stronę wsparcia, certyfikaty bezpieczeństwa lub audyty (jeśli istnieją), dokumentację techniczną lub zasoby dla deweloperów(nowe okno). Wystarczy proste wyszukiwanie w internecie, możesz też skontaktować się ze wsparciem klienta i zapytać.
Jeśli prowadzisz własne strony internetowe lub bazy danych, dbaj o aktualność swoich ustawienia bezpieczeństwa, korzystając z wtyczek lub modułów, które wdrażają silne algorytmy skrótu.
Używaj złożonych haseł
Zamiast używać łatwych do odgadnięcia haseł, wybierz bezpieczne hasła składające się z co najmniej 12 znaków, zawierające wielkie i małe litery, cyfry oraz symbole. Przykłady silnych haseł to ?GmmM1Z[c5:F lub beht=ty]P:)Gf^c?p?+7. Jest mało prawdopodobne, aby cyberprzestępca celował w tak złożone hasła przy użyciu ataków typu rainbow table.
Włącz uwierzytelnianie wieloskładnikowe
Uwierzytelnianie wieloskładnikowe (MFA), takie jak uwierzytelnianie dwustopniowe (2FA), dodaje co najmniej jedną dodatkową formę uwierzytelniania do żądania hasła, na przykład kod w Twoim 2fa authenticatorze. Jeśli atakującemu uda się odkryć Twoje hasło w wyniku ataku typu rainbow table, nie będzie w stanie przejść kolejnych etapów uwierzytelniania.
Dodatkowo, jeśli otrzymasz niespodziewane żądanie dodatkowej weryfikacji, jest to wyraźny znak, że ktoś próbuje uzyskać dostęp do Twojego konta. Możesz szybko zareagować, zmieniając swoje hasło.
Używaj aliasów adresów e-mail
Aliasy adresów e-mail(nowe okno) mogą chronić Cię przed naruszeniami danych, które mogłyby doprowadzić do ataków typu rainbow table, ponieważ nie są one powiązane z Twoimi głównymi adresami e-mail. Możesz na przykład nadal używać swojego głównego adresu e-mail do ważnych wiadomości i finansów, rezerwując aliasy e-mail do mniej bezpiecznych działań, takich jak rejestrowanie się w niezaufanych serwisach. Jeśli Twój alias e-mail zostanie zhakowany, możesz go po prostu wyłączyć.
Monitoruj internet pod kątem naruszeń danych
Będąc na bieżąco z informacjami o najnowszych naruszeniach, możesz ustalić, czy któreś z używanych przez Ciebie serwisów zostały zagrożone i czy Twoje dane wyciekły. Pozwala to na podjęcie proaktywnych kroków, takich jak natychmiastowa zmiana haseł, aby uniemożliwić hakerom wykorzystanie potencjalnie ujawnionych danych do uzyskania nieautoryzowanego dostępu do Twoich kont.
Jak Proton Pass może pomóc
Proton Pass może chronić Cię przed atakami typu rainbow table poprzez generowanie silnych haseł(nowe okno) i zarządzanie nimi w jednym miejscu. Obsługuje również authenticator TOTP (oparte na czasie hasło jednorazowe) dla tokenów 2fa. Dodatkowo aplikacja oferuje aliasy hide-my-email, aby zapobiec ujawnieniu Twojego głównego adresu e-mail w sieci.
Wszyscy subskrybenci Proton Pass mogą korzystać z Pass Monitor(nowe okno), aby monitorować stan wszystkich haseł oraz z Monitoring dark web, aby śledzić różne źródła pod kątem naruszeń danych. Nasz model bezpieczeństwa wykorzystuje bezpieczny algorytm skrótu bcrypt, który soli Twoje hasła przed ich przetworzeniem, aby powstrzymać ataki typu rainbow table. Ponadto prowadzimy zaawansowany program bezpieczeństwa o nazwie Proton Sentinel, aby wykrywać i zapobiegać atakom przejęcia konta.
Zacznij chronić swoje konta przed atakami typu rainbow table, rejestrując się już dziś w bezpłatnym koncie Proton Pass.






