Bezbronne pecety

Każdy użytkownik komputera nieustannie musi podawać różne hasła podczas logowania do Windows, skrzynki pocztowej, komunikatora, otwierania zabezpieczonego dokumentu Worda… Niestety, ostatnie osiągnięcia w dziedzinie kryptoanalizy stawiają pod znakiem zapytania bezpieczeństwo domowych pecetów oraz wielu systemów komercyjnych. Wszystko to za sprawą tzw. tęczowych tablic.

Pozory bezpieczeństwa

Aby zrozumieć, jak potężnym narzędziem jest kryptoanaliza z użyciem tęczowych tablic, musimy przyjrzeć się stosowanym dziś sposobom przechowywania haseł. Do tego celu powszechnie stosowane są tzw. funkcje haszujące lub inaczej funkcje skrótu. Gdy użytkownik zabezpiecza np. dostęp do konta w Windows XP, funkcja taka pobiera wpisane hasło i wylicza na tej podstawie pewną wartość (jest ona nazywana skrótem lub haszem). Skrót jest zapisywany na dysku twardym wraz z nazwą konta. Algorytmy haszujące są złożone, lecz mają wspólną cechę: działają w sposób jednokierunkowy. Na podstawie znajomości haszu nie można odtworzyć oryginalnego hasła, a więc skróty mogą być oglądane przez każdego. Proces weryfikacji hasła, np. podczas logowania do Windows, jest prosty: wpisane hasło jest haszowane, po czym wyliczony skrót jest porównywany z wartością zapisaną na dysku. Jeżeli są one identyczne, użytkownik otrzymuje dostęp do systemu.

Do niedawna wydawało się, że dobrze opracowane algorytmy haszujące, jak np. powszechnie stosowane SHA-1 (Secure Hash Algorithm) lub MD-5 (Message-Digest), są bardzo bezpieczne. Faktycznie – jedyną metodą obejścia zabezpieczeń było zgadywanie haseł w ciemno i wypróbowywanie wszystkich możliwych kombinacji znaków (tzw. metoda brute force). Próby odtworzenia hasła można było co najwyżej przyśpieszać poprzez sprawdzenie w pierwszej kolejności wyrazów ze słownika (tzw. atak słownikowy) – wiadomo bowiem, że większość użytkowników stosuje frazy, które coś znaczą. Hasło złożone ze znaków różnych typów (małe i wielkie litery, cyfry, znaki specjalne), o długości kilkunastu znaków uchodziło jednak za niemożliwe do odtworzenia w rozsądnym czasie. Dzięki wykorzystaniu nowej metody czas potrzebny na odnalezienie haseł skrócił się jednak miliony razy! Coś, co kiedyś wymagało lat obliczeń, dziś zajmuje kilka minut.

Na wszystko jest metoda

Pomysł na krytpoanalizę z użyciem tęczowych tablic polega na utworzeniu gigantycznej bazy danych z hasłami i odpowiadającymi im haszami. Aby odtworzyć hasło, dysponując tylko jego skrótem, wystarczyłoby poszukać odpowiedniego haszu w bazie i związanego z nim hasła. Oczywiście zbudowanie tablicy wszystkich możliwych haseł nie wchodzi w grę – trudno sobie nawet wyobrazić jej objętość. Philippe Oechslin z Politechniki w Lozannie znalazł jednak na to sposób – zaproponowana przez niego metoda pozwala budować tablice, które przechowują zaledwie ułamek wszystkich możliwych haszy (np. jeden na dziesięć tysięcy), a mimo to gwarantują odtworzenie około 99% wszystkich haseł w ciągu kilku minut. Rozmiary tablic są wciąż liczone w setkach megabajtów lub gigabajtach, lecz są to już objętości, z którymi poradzi sobie każdy współczesny pecet.

Złamanie hasła można zlecić
Choć samo odtwarzanie haseł na podstawie funkcji haszujących przebiega błyskawicznie, to objętość tęczowych tablic i czas potrzebny na ich wyliczenie są olbrzymie. Zwykły użytkownik jest więc skazany na korzystanie z tablic przygotowanych przez innych. Kilka firm zwietrzyło w tym interes – w Sieci działają serwisy oferujące odpłatne usługi kryptoanalizy. Decryptum.com odzyskuje hasła do zabezpieczonych dokumentów Excela i Worda za 39 USD za jedno. Rola użytkownika ogranicza się do wysłania pliku i wniesienia opłaty – po kilku minutach można odebrać odbezpieczony zbiór. Firma RainbowCrack-Online specjalizuje się w łamaniu bardziej zaawansowanych szyfrów. Za 30 USD miesięcznie zyskujemy prawo do analizy 100 haszów ośmiu typów (m.in. MD5, SHA-1, MySQL, Cisco PIX). Eksperci potrafiący stworzyć własne aplikacje mogą tu także nabyć gotowe zestawy tęczowych tablic dla różnych algorytmów. Ceny wahają się od 500 do 10 000 USD w zależności od funkcji haszującej, zestawu znaków oraz długości odtwarzanych haseł. W cenę wliczone są dyski twarde, na których wysyłane są dane – objętość tablic jest liczona w dziesiątkach, a nawet setkach gigabajtów. Największy sprzedawany pakiet (MD5, wszystkie znaki) liczy sobie 1,5 TB!

Co to oznacza w praktyce? Otóż po jednorazowym zbudowaniu zestawu tęczowych tablic dla określonego algorytmu haszującego i zadanego zestawu znaków (litery, cyfry, znaki specjalne), odnalezienie hasła trwa góra kilkadziesiąt sekund. Czas kryptoanalizy skraca się przy tym czterokrotnie wraz z dwukrotnym powiększeniem rozmiaru tablic.

Opracowana przez Philippe’a Oechslina metoda sprawdza się doskonale w wypadku większości powszechnie stosowanych funkcji haszujących: NTLM (konta użytkowników Windows), SHA-1 (podpisy cyfrowe, baza danych MySQL, dokumenty Worda i Excela, krytpografia w zastosowaniach przemysłowych i wojskowych) czy Cisco PIX (routery Cisco).

Na razie bez paniki

Czy oznacza to, że wszyscy jesteśmy zgubieni, a hakerzy niedługo zaczną swobodnie buszować po naszych domowych komputerach? Na szczęście nie. Przede wszystkim do odtworzenia hasła potrzebny jest jego skrót. Oznacza to, że ataku nie da się przeprowadzić w sposób zdalny za pośrednictwem Sieci. Po pierwsze: aby poznać hasła do np. kont Windows, należy dysponować fizycznym dostępem do dysku twardego i zapisanych na nim nazw użytkowników oraz skrótów haseł. Po drugie: do przeprowadzenia ataku potrzebne są tęczowe tablice przygotowane dla danego algorytmu. Ich objętość (zwykle kilka gigabajtów) oraz czas przygotowania (kilka miesięcy) powodują, że nie są one dostępne dla domorosłych hakerów-szkodników. Co prawda, coraz więcej tablic krąży w sieci BitTorrent, lecz ich znalezienie i pobranie wciąż stanowi pewien kłopot. Po trzecie: jak na razie brakuje wygodnych programów, którymi mogliby się posłużyć wandale. Póki co jedynym groźnym narzędziem jest Ophcrack (patrz: “$(LC171968:Ophcrack: łamanie zabezpieczeń Windows XP)$”), służący do odnajdywania haseł do kont Windows. Za darmo dostępne są także uniwersalne narzędzia o bardzo dużym potencjale (np. RainbowCrack), lecz ich użycie jest niewygodne (praca z poziomu Wiersza polecenia, złożona składnia) i wymaga sporej wiedzy.

Choć technika tęczowych tablic jest na razie trudna do wykorzystania przez amatorów, to powszechnie stosują ją już wyspecjalizowane firmy usługowe oraz agencje rządowe. Żadnego kłopotu nie stanowi dla nich odtworzenie haseł do dokumentów Worda i Excela, uzyskanie dostępu do danych zawartych w bazach MySQL, PHP i routerach Cisco – jedynym warunkiem jest fizyczny dostęp do urządzenia.

Wyzwanie dla naukowców

Kryptoanaliza z użyciem tęczowych tablic z pewnością będzie zyskiwała na popularności. Użytkownicy oraz projektanci zabezpieczeń muszą więc brać ją pod uwagę. Najskuteczniejsza metoda obrony polega na niewielkiej modyfikacji algorytmów haszujących i zastosowaniu tzw. soli. Sól to liczba losowa, która jest dodatkowym parametrem funkcji wyliczającej skrót. Po zakończeniu obliczeń jest ona zapisywana obok haszu. W rezultacie algorytm haszujący jest inny dla każdego hasła i wymaga osobnego zestawu tęczowych tablic. Ich zbudowanie (przypomnijmy: trwa kilka miesięcy) do jednorazowego użytku mija się z celem. Co ciekawe, sól jest powszechnie stosowana do skracania haseł użytkowników w Linuksie.

Z punktu widzenia użytkowników zagrożonych systemów sytuacja wygląda nieco gorzej. Idealnej metody obrony po prostu nie ma. Jedyne co można zrobić, to tworzyć długie hasła i wykorzystywać w nich znaki różnego typu. W ten sposób uda się zapobiec atakom z użyciem mniejszych tablic, uwzględniających np. tylko znaki alfanumeryczne. W wypadku haseł do Windows XP można zastosować jeszcze jeden trik: użyć znaków specjalnych, wpisywanych za pomocą kombinacji klawiszy lewy [Alt] + [cztery cyfry z bloku numerycznego]. Takich znaków jest kilkaset i nie występują one w żadnej powszechnie dostępnej tęczowej tablicy. Dużego znaczenia nabiera także fizyczne bezpieczeństwo komputera – maszyny zawierające ważne informacje powinny być chronione tak, aby niepowołana osoba nie mogła z nich korzystać bez nadzoru i skopiować haszy. W wypadku pecetów stojących w miejscach publicznych warto w BIOS-ie włączyć sprawdzanie hasła przed załadowaniem systemu operacyjnego. W ten sposób uchronimy się przed użyciem programu Ophcrack z płyty CD. I to zabezpieczenie można jednak ominąć, otwierając komputer i kasując pamięć CMOS lub korzystając z jednego z uniwersalnych haseł do BIOS-u.

Kryptoanaliza z użyciem tęczowych tablic stwarza poważne zagrożenie bezpieczeństwa wielu systemów. Ruch należy teraz do projektantów i twórców systemów informatycznych, którzy powinni jak najszybciej wprowadzić poprawki do mechanizmów haszujących. Użytkownikom pozostaje czekać ze świadomością, że zaszyfrowane informacje wcale nie są tak bezpieczne, jak się niedawno wydawało.k