Stokrotka123...
Pamiętamy PIN'y do kart płatniczych, hasła lub wzory do telefonów/tabletów, hasła do internetowych kont bankowych, hasła do systemów informatycznych w pracy, hasła do kont na portalach społecznościowych, stron na których robimy zakupy, dyskutujemy na forach internetowych i wielu, wielu innych. Jeśli ktoś ma wątpliwości w ilu miejscach jesteśmy zmuszeni do zdefiniowania własnego hasła - proponuję zrobić listę. Jest tego naprawdę sporo!
Hasła powinny być przechowywane w systemach informatycznych w sposób niejawny. To znaczy, że nie mogą być przechowywane w postaci jawnej (niezaszyfrowanej). W związku z tym stosowane są zazwyczaj dwie możliwości. Pierwsza z nich zakłada zaszyfrowanie hasła znanym algorytmem i w postaci zaszyfrowanej przechowywanie go w bazie.
Dla przykładu, hasło "stokrotka123" w postaci skrótu funkcji MD5 (tak zwany hash) wygląda tak...Dla przykładu, hasło "stokrotka123" w postaci zaszyfrowanej funkcją MD5 (tak zwany hash) wygląda tak: 1AD524E83D8B68EB255551D0360CE7ED.
Druga możliwość zakłada przechowywanie tylko wyniku funkcji skrótu na haśle. Na haśle wykonywana jest operacja wykorzystująca funkcję np. SHA-1 i przechowywany jest tylko wynik tego działania.
Dla naszego hasła "stokrotka123" byłoby to: 6F7C1C524B9FDE6B6A8269AE7FBB4C17263B6049.
Jak trudno złamać takie "zaszyfrowane" hasła? Jest to zależne od tego, jaki algorytm lub jaka funkcja skrótu została użyta. Obecnie, ze względu na większe moce obliczeniowe, do tego typu zadań używa się kart graficznych (a właściwie farm kart graficznych).
Dla przykładu 1 karta graficzna typu NVIDIA RTX 2080Ti może łamać hashe NTLM (używane w dalszym ciągu do przechowywanie haseł w Windowsach) z prędkością 102 miliardów sprawdzeń na sekundę. Pisząc prościej, taki mały zestaw złamie 8 znakowe hasło w czasie mniejszym niż 24 godziny!
Brutalnie lub... słownikowo
Skupmy się na kilku najczęstszych obszarach, z których korzystają ludzie w obecnych czasach: Facebook, poczta elektroniczna i systemy informatyczne/operacyjne (obojętnie czy pracujecie już zawodowo czy też nie, ale na pewno posiadacie komputer, a w nim hasło). Tylko trzy miejsca z pośród dziesiątek innych, z których każdy z nas korzysta.
Teraz zadajmy sobie podstawowe pytanie - na ile mocne kryptograficznie jest moje hasło? W jaki sposób mierzymy siłę kryptograficzną hasła? Im dłuższe hasło, im bardziej skomplikowane (wielkie litery, małe litery, znaki specjalne, liczby) tym trudniej je złamać wykorzystując na przykład metodę "słownikową" czy "brutalną". Czym różnią się te dwie metody "łamania" haseł?
Metoda "słownikowa" wykorzystuje słownik z wyrazami (również z odmianami słów, ale nie tylko ze słowami) w celu dopasowania znanego słownikowego słowa z naszym hasłem. Słowniki wykorzystywane do tego typu metody mogą być bardzo proste i zawierać tylko wyrazy, ale mogą być także rozbudowane o sprawdzanie wybranych bardziej skomplikowanych metod tworzenia haseł. Bardziej rozbudowane słowniki mogą zawierać weryfikację tworzonych haseł na podstawie wierszy, tekstów piosenek, tytułów książek, itp.
Metoda "brutalna" zakłada sprawdzanie kolejnych ciągów, kombinacji znaków w celu pozyskania hasła i jest bardziej czasochłonna. Mówiąc prościej, jeśli w haśle znajduje się słowo, które znajduje się w słowniku np. "stokrotka" to łatwiej je odgadnąć niż hasło typu "Ty76?js1%9gC#20K!". Im dłuższe jest także hasło, tym trudniej je złamać - zajmuje to po prostu więcej czasu wynikającego z liczby możliwych kombinacji znaków.
Pozostaje tylko jeden problem - "stokrotkę" łatwiej zapamiętać, niż to drugie hasło. Dlatego większość użytkowników w celu łatwiejszego zapamiętania hasła wymyśla wyrazy słownikowe, do których dodaje rok bieżący, datę urodzenia, początek lub koniec numeru PESEL, itp. metody mające na celu "skomplikowanie" hasła, ale w dalszym ciągu umożliwia jego zapamiętanie.
Efekt domina
Zadajmy sobie teraz dwa proste pytania. Po pierwsze: czy hasła do tych trzech wybranych miejsc są takie same? Drugie pytanie: kiedy ostatni raz zmieniałam/łem hasło do wyżej wymienionych usług? Najpierw zajmijmy się kwestią identycznych haseł do wielu różnych usług Internetowych. Czy jest coś złego w posiadaniu jednego hasła? Niestety jest.
W idealnym świecie pod względem bezpieczeństwa informatycznego, w którym każdy system informatyczny i każda usługa byłaby zabezpieczona w sposób maksymalny - nie byłoby w tym nic złego. Czy żyjemy w takich czasach i takim świecie? Niestety nie.
Nawet osoba niezainteresowana sprawami bezpieczeństwa informatycznego musi słyszeć o włamaniach, kradzieży kont, tożsamości, wycieku haseł, itp. rzeczach. Jeżeli używam jednego hasła (lub nawet zbliżonego - tak, tak, jeśli dodacie do swojego hasła standardowego nazwę usługi np. "stokrotkagmail", "stokrotkafacebook" to się nie liczy) jesteśmy narażeni na to, iż w przypadku włamania i wykradzenia naszego hasła do jakiegoś mało istotnego dla nas miejsca, pozostałe, w których z niego korzystaliśmy, także są narażone na niebezpieczeństwo.
Bardzo często zakładając konta w sklepach internetowych, grupach dyskusyjnych podajemy wiele swoich danych takich jak adres pocztowy, namiary na naszego facebook'a, komunikatory, itp. elementy, z których korzystamy. Nie wiemy natomiast, w jakim stopniu i czy w ogóle nasze konta są chronione.
Wyciek haseł z jakiegoś sklepu internetowego, z którego korzystaliśmy tylko raz i to parę lat temu, może spowodować, iż nasze hasło (nasze jedyne hasło!) zostało już dawno skompromitowane, a dane jakie dodatkowo podaliśmy rejestrując się spowodowały, że osoby niepowołane mają do nich dostęp. Do danych tych można zaliczyć login do poczty, numer komunikatora, dane do facebook'a itp. W tym momencie przechodzimy płynnie do drugiej kwestii...
Jak pomóc naszej pamięci?
Jeśli od momentu rejestracji w tym sklepie nasze hasło zostałoby zmienione, to możemy spać spokojnie. Jeśli natomiast nie zmieniamy swoich haseł, narażamy się właśnie na takie sytuacje. W tym właśnie momencie zapala nam się lampka kontrolna - nie dosyć, że mam pamiętać wiele różnych haseł wykorzystywanych w różnych miejscach, to mam je jeszcze co jakiś czas zmieniać?! No i oczywiście muszą to być hasła na tyle skomplikowane, aby nie dało się ich łatwo złamać metodą "słownikową" czy też "brutalną". Jak sobie radzić w takim razie z problemem haseł? Zalecane rozwiązania są w zasadzie dwa.
Pierwsze dla osób, które mają bardzo mało haseł do zapamiętania i mają do tego znakomitą pamięć. Zaleca się tworzyć hasła jak najbardziej skomplikowane, ale w dalszym ciągu łatwe do zapamiętania. Metoda ta jednak nie daje tak dobrych rezultatów, jak tworzenie haseł z losowo wybranych ciągów znaków - jednak w tym wypadku zapamiętanie takiego ciągu jest bardzo trudne, nie mówiąc już o zapamiętaniu kilku lub kilkunastu.
Dla przykładu hasło typu: "TjmbshdSI!ZwR19" - wygląda skomplikowanie? Spróbujmy sobie rozwinąć to hasło w celu łatwiejszego przyswojenia sobie do pamięci: "To jest moje bardzo skomplikowane hasło do Systemu Informatycznego! Założone w Roku 19". Na pewno taki ciąg znaków nie będzie występował w słowniku, zawiera małe, duże litery, znaki specjalne i liczby oraz ma długość 15-tu znaków. Minusem tego pomysłu jest choćby niezalecane zostawianie liczb na samym końcu. Zawsze można taki pomysł potraktować, jako bazę wyjściową do tworzenia swojego hasła na podobnej zasadzie.
Pomimo niezalecania tworzenia haseł na podstawie wierszy, tekstów piosenek jest to metoda dobra dla osób, które mają więcej haseł do zapamiętania lub problemy z ich zapamiętaniem.
Hasło typu "Nswdt,Tssr:". Rozwinięcie jest bardzo proste i wszystkim pewnie znane, pochodzące z wiersza J. Brzechwy "Na straganie": "Na straganie w dzień targowy, Takie słyszy się rozmowy:".
Jest to tylko przykład, tworzenia haseł na podstawie wierszyków (niekoniecznie trzeba wykorzystywać pierwsze wersy, które każdy zna). Można także tworząc takie hasła łączyć wierszyki z tekstami piosenek, ulubionych sekwencji itp. Im bardziej skomplikujemy hasło, tym lepiej.
Drugie rozwiązanie zakłada zapamiętanie jednego lub góra dwóch haseł, a reszta z nich będzie tworzona losowo na podstawie wybranych, bardzo skomplikowanych wzorców. Takie rozwiązanie zakłada użycie specjalnego oprogramowania tak zwanego managera haseł. Manager taki jest wstanie generować i zapamiętywać nasze hasła dla wybranych miejsc w sieci. Wszystkie hasła są przechowywane w zaszyfrowanej bazie danych, a dostęp do niej gwarantowany jest poprzez podanie tylko jednego hasła, które użytkownik musi zapamiętać. Baza danych z hasłami może być przechowywana lokalnie lub w bezpiecznej chmurze i współdzielona między komputerem, telefonem i tabletem.
Dobre rozwiązania tego typu pozwalają na instalację na dowolnym systemie operacyjnym i synchronizowanie zawartości bazy pomiędzy inne urządzenia. W związku z tym nie ma problemu czy logujemy się do banku poprzez telefon czy komputer - aplikacja po podaniu właściwego hasła umożliwi nam dostęp do bazy haseł. Użytkownik musi tylko zapamiętać hasło do managera haseł oraz do swojego głównego konta pocztowego na wypadek gdyby zapomniał hasła do menadżera.
Jak widać kwestia haseł jest nadal aktualna i wydaje się mieć szczególne znaczenie w obecnych czasach. Ponieważ w szeroko rozumianych zasobach sieciowych coraz częściej zostawiamy kawałki naszego życia, wypadałoby zadbać o ich bezpieczeństwo, a przynajmniej o bezpieczeństwo jednego z głównych mechanizmów, jakim jest uwierzytelnianie.
Jak postępować w takich sytuacjach oraz o wielu innych zagadnieniach związanych z bezpieczeństwem i ochroną danych (i nie tylko) można dowiedzieć się studiując na kierunku "Cyfryzacja i zarządzanie danymi w biznesie" na Wydziale Zarządzania UŁ. Kierunek ten jest odpowiedzią na szybki rozwój technologii informacyjnych i komunikacyjnych oraz ich wpływu na współczesne środowisko biznesowe.
Dr Grzegorz Podgórski - adiunkt w Katedrze Informatyki na Wydziale Zarządzania UŁ. Główne zainteresowania naukowe oraz zawodowe skupiają się wokół bezpieczeństwa i ochrony danych oraz zagadnień z nimi związanych również w aspekcie nowoczesnych technologii. Zawodowo zajmujący się ochroną danych w organizacjach oraz administracją sieciami i systemami informatycznymi.
Uniwersytet Łódzki to największa uczelnia badawcza w centralnej Polsce. Jej misją jest kształcenie wysokiej klasy naukowców i specjalistów w wielu dziedzinach humanistyki, nauk społecznych i ścisłych. UŁ współpracuje z biznesem, zarówno na poziomie kadrowym, zapewniając wykwalifikowanych pracowników, jak i naukowym, oferując swoje know-how przedsiębiorstwom z różnych gałęzi gospodarki. Uniwersytet Łódzki jest uczelnią otwartą na świat - wciąż rośnie liczba uczących się tutaj studentów z zagranicy, a polscy studenci, dzięki programom wymiany, poznają Europę, Azję, wyjeżdżają za Ocean. Uniwersytet jest częścią Łodzi, działa wspólnie z łodzianami i dla łodzian, angażując się w wiele projektów społeczno-kulturalnych.
Zobacz nasze projekty naukowe na https://www.facebook.com/groups/dobranauka/
tekst: dr Grzegorz Podgórski, WZ UŁredakcja: Centrum Promocji UŁ