ISM

Metody uwierzytelnienia – hasła

Uwierzytelnianie to proces identyfikacji użytkowników, którzy żądają dostępu do systemu, sieci lub urządzenia. Dostęp do systemów informatycznych w najprostszym wypadku jest realizowany za pomocą użytkownika i hasła. Systemy informatyczne najczęściej są dostępne dla użytkowników dopiero po ich przedstawieniu się (nazwa, użytkownik, login) oraz sprawdzeniu czy są osobami uprawnionymi do dostępu (hasło). Po wprowadzeniu poprawnych danych użytkownik uzyskuje dostęp do określonego systemu. W przypadku podania niepoprawnych danych użytkownik nie uzyska dostępu. Inna kwestia to sposób przechowywania haseł i częstotliwość ich zmiany.

2 strony haseł

W tym miejscu warto zauważyć, że występują tu dwie strony – klient i system do którego klient (użytkownik) próbuje się zalogować. Po stronie systemu najpierw należy dodać użytkowników, którzy mają mieć do niego dostęp. Wiąże się to z zapisaniem danych tych użytkowników (login + hasło) w systemie, najczęściej w jakiejś bazie danych. Hasła mogą być kradzione w każdym stanie (w spoczynku, w ruchu i w użyciu) zarówno po stronie klienta jak i po stronie systemu. Dlatego w wielu przypadkach po stronie systemu należy zapisywać w logach próby logowania aby mogły służyć do analizy anomalii, ataków czy analizy śledczej, powłamaniowej.

Możliwości zmiany haseł

Hasła po stronie klienta

Na temat sposobu tworzenia haseł istnieje wiele publikacji, które warto na bieżąco przeglądać i przyswoić sobie podstawowe zasady higieny technicznej związanej z hasłami. Nie należy zapominać, że jeśli dany użytkownik odchodzi od urządzenia (komputer, system) to powinien co najmniej zablokować dostęp do systemu podczas swojej nieobecności. Ryzyka związane z hasłami obejmują wiele czynników, przedstawiam je na załączonej grafice.

Warto wspomnieć o niehigienicznych zwyczajach użytkowników takich jak:
-współdzielenie hasła przez kilka osób,
-używanie tego samego hasła w wielu systemach,
-zachowywanie haseł w mailu lub aplikacji SMS (nie w szyfrowanym komunikatorze, też źle)
-wysyłanie hasła mailem do innej osoby,
-zachowywanie maili z hasłem w poczcie przychodzącej,
-przekazywanie hasła drogą telefoniczną podczas rozmowy,
-zapisywanie hasła w notatniku czy w arkuszu excela,
-nie korzystanie z programu typu menedżer haseł.

W przypadku haseł należy odróżnić różne tryby ich tworzenia:
hasła do systemów firmowych nadawane użytkownikom przez administratora systemów.
hasła tworzone przez użytkowników na potrzeby logowania do różnych systemów (np. sklep internetowy, bank (?), blog, forum, serwer, router, lodówka, telewizor).

W w/w przypadkach równie istotne znaczenie ma sposób odzyskiwania wygasłego lub zapomnianego hasła. Wielu administratorów stosuje identyczne hasło początkowe dla wszystkich użytkowników, co rodzi ryzyko przejęcia konta jednego użytkownika przez innego użytkownika. Po drugiej stronie (system), sposób odzyskiwania hasła opiera się na wysłaniu maila z nowym hasłem do użytkownika. To również nie najlepsza praktyka, zważając na fakt, iż taki mail z hasłem może być przejęty w trakcie swojej drogi względnie poprzez dostęp nieuprawnionej osoby do skrzynki mailowej użytkownika.

Na ten temat istnieje wiele publikacji (NIST, ISO27001PCI DSS).

Podstawowe zalety haseł to:

-są darmowe,
-łatwe do stworzenia (w umyśle względnie w programie typu menedżer haseł),
-nie wymagają specjalistycznego przeszkolenia.

Wady:

-często łatwe do odgadnięcia,
-trudność zapamiętania wielu haseł,
-jedno hasło jest często używane w wielu serwisach i systemach
-możliwość zapomnienia hasła,
-konieczność zmiany hasła po pewnym okresie.

Architektura systemów IT

Architektura systemu IT implikuje ryzyka, w tym momencie należy zadać sobie wiele pytań:
-czy system wymusza hasła o minimalnej długości?
-czy system wymusza hasła bardziej skomplikowane niż ciąg liter lub cyfr?
-czy system narzuca ograniczenie na maksymalną długość hasła?
-w jaki sposób są zapisywane hasła w bazie (plain text)?
-czy baza z hasłami jest szyfrowana?
-czy połączenia klienta z systemem i z bazą są szyfrowane?
-czy są hashowane (zapisywane jako skrót, utworzony za pomocą bezpiecznej funkcji mieszającej)?
-czy są solone (dodawanie losowych danych do hasła przed użyciem bezpiecznej funkcji mieszającej)?
-czy błędnie podawane dane dostępowe spowodują blokadę klienta (jego adresu IP)?
-czy błędnie podawane dane dostępowe spowodują czasową lub stałą blokadę klienta?
-czy błędnie podawane dane dostępowe spowodują blokadę użytkownika (w bazie systemu)?
-jaka jest polityka odzyskiwania przez użytkownika zapomnianych, wygasłych haseł?
-czy system zapisuje w logach udane i nieudane próby zalogowania?
-czy system pozwala na ograniczenie logowania z danego adresu IP, lub w określonych godzinach?
-czy system pozwala na skopiowanie hasła ze schowka (CTRL+C >> CTRL+V)?
-czy hasła są przechowywane na publicznie dostępnych udziałach sieciowych?
-czy hasła statyczne są „zaszyte” na stałe w oprogramowaniu systemów?
-czy backupy baz danych zawierających hasła są zaszyfrowane?

Człowiek bez strategii, który lekceważy sobie przeciwnika, nieuchronnie skończy jako jeniec – Sun Tzu – „Sztuka Wojny”

Po stronie systemu można uwzględnić stosowanie jakiegoś systemu captcha, który prosi klienta o przepisanie dodatkowych informacji, jeśli uprzednio wpisywał do systemu błędne dane dostępowe. Po stronie systemu można również zaimplementować system WAF, który może wykorzystywać czarną listę adresów IP, pozyskaną z własnych logów jak i z zewnętrznych źródeł. Taka lista często zawiera adresy IP z których prowadzone były ataki typu brute force, najczęściej przez boty. Warto zauważyć, że ta lista cały czas będzie zmienna, może również zawierać adresy IP zainfekowanych komputerów Internautów lub adresy IP zainfekowanych systemów (serwery i inne urządzenia sieciowe). Warto pamiętać, aby również backupy baz danych zawierających hasła były zaszyfrowane, co utrudni napastnikowi poznanie ich zawartości.

Producenci urządzeń

W wielu przypadkach producenci lub dostawcy urządzeń dostarczają urządzenia z domyślnymi hasłami dostępowymi, co powoduje, że osoba mająca fizyczny dostęp do urządzenia może uzyskać do niego dostęp, często z uprawnieniami administracyjnymi.
Producenci powinni rozważyć zmianę podejścia do bezpieczeństwa urządzeń:
-brak domyślnego hasła,
-zaszywanie statycznego hasła w oprogramowaniu,
-hasło ustawiane przez użytkownika w momencie pierwszego uruchomienia (+jasna instrukcja),
-implementacja polityki bezpieczeństwa zapisu i przechowywania haseł w urządzeniu,
-ograniczenie liczby nieudanych prób logowania,
-blokowanie użytkownika w urządzeniu po X próbach nieudanego zalogowania,
-nie podawanie szczegółowych komunikatów na ekranie (np. błędne hasło),
-stosowanie aktualnych algorytmów kryptograficznych (silne hasła).

Podsumowanie

Hasła statyczne nadal należą do popularnych metod uwierzytelniania w urządzeniach lub systemach informatycznych. Hasła stanowią jeden z podstawowych elementów higieny technicznej, który powinien być wdrażany od najmłodszych lat człowieka. Gorąco zachęcam aby w czasach pracy zdalnej, w ramach edukacji swoich dzieci, rodzice poświęcali nieco czasu na wykształcenie techniczne swoich pociech.

Statyczne hasła są często używane w serwisach internetowych (banki, sklepy, blogi, strony internetowe). Zachęcam webdeweloperów do edukowania swoich klientów poprzez podzielenie się z nimi swoją wiedzą, a jeśli nie mają na to czasu – do odesłania ich do tego wpisu.

Z kolei Audytorzy RODO zapewne mają świadomość znaczenia haseł dla ochrony zasobów informacji, zwłaszcza do ochrony informacji wrażliwych które są zapisywane w systemach firm. IOD zajmujący się tematyką RODO we współpracy z architektem systemów może przyczynić się do zapewnienia wyższego poziomu bezpieczeństwa wrażliwych danych.

Wydaje się, że producenci urządzeń IT nadal mają sporo do poprawy bezpieczeństwa urządzeń które dostarczają na rynek. Architektura IT w wielu urządzeniach, często oferuje niski poziom zabezpieczeń (IT, IoT, SCADA, automotive), o czym może my się dowiedzieć z informacji serwisów opisujących bezpieczeństwo IT.

Reasumując – warto stosować hasła długie, zawierające różne znaki i zapisywać je w programie typu menedżer haseł (np. KeePass). Nie stosuj takiego samego hasła do wielu systemów, serwisów internetowych. Nie pozwalasz aby podczas wpisywania hasła ktoś inny zaglądał Ci przez ramię i mógł odczytać hasło, prawda? Jeśli jesteś użytkownikiem prywatnym, którego nie obowiązują różne standardy dot. bezpieczeństwa haseł – możesz zmieniać hasła rzadziej niż raz na miesiąc. Wypracuj sobie samodzielnie częstotliwość zmiany hasła, jednak nie dłuższą niż kilka miesięcy, dobrze?

Nie zapisuj haseł w przeglądarce internetowej i nie podawaj swojego hasła innym osobom, nawet najbliższym członkom rodziny. Miej świadomość, że ok.81% naruszeń bezpieczeństwa ma źródło w zhackowanych hasłach (Raport: Verizon Data Breach Investigations Report z 2020 r. https://enterprise.verizon.com/resources/reports/2020-data-breach-investigations-report.pdf ). Ten fakt powinien stanowić wystarczającą zachętę do poważnego traktowania tematyki haseł. Od czasu do czasu samodzielnie możesz sprawdzić najbardziej popularne hasła, wpisując w wyszukiwarce: „most popular passwords”. Oczywiście – Ty nie stosuj tych haseł 🙂

Uwierzytelnianie za pomocą statycznych haseł stwarza wiele ryzyk. Można je zniwelować poprzez wykorzystanie drugiego (lub więcej) składnika uwierzytelnienia (2FA, MFA). W kolejnym wpisie poruszę tematy związane z wieloskładnikowym uwierzytelnieniem (OTP, TOTP).

Notka o 
W zamierzeniu autora blog ma pełnić funkcję notatnika podczas zgłębiania różnych obszarów ICT, szczególnie w zakresie architektury i ochrony informacji. Poruszana tematyka ma źródło w zainteresowaniach autora. Skomentuj i dodaj swoją opinię! Dziękuję za Twój czas.

0 komentarzy

Zostaw komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

ISM