Jak uwierzytelnić bezprzewodowego użytkownika?

Dlaczego 802.1x?

Jak uwierzytelnić bezprzewodowego użytkownika?

Przebieg typowej sesji uwierzytelniającej RADIUS

Bezpieczeństwo sieci bezprzewodowych standardu 802.11 nigdy nie było wzorowe. W przypadku WEP (Wired Equivalent Privacy) wszystkie punkty dostępowe i urządzenia klienckie używają tego samego klucza szyfrującego w bezprzewodowej sieci LAN. Każda wysyłająca stacja szyfruje dane w ramce kluczem WEP jeszcze przed transmisją. Stacja odbierająca deszyfruje dane, używając identycznego klucza. Ten proces redukuje ryzyko, że stacja pasywnie monitorująca transmisję zdobędzie dostęp do informacji zawartych w szyfrowanych ramkach.

Podstawowym problemem z WEP jest to, że administratorzy niezbyt często zmieniają klucze. Atakujący - używając odpowiednich narzędzi, takich jak AirSnort lub WEPcrack - może monitorować sieć częściej niż zmienia się klucz. Bez problemu będzie mógł wówczas dekodować zaszyfrowane wiadomości. Częsta zmiana kluczy jest jednak w WEP uciążliwa dla administratora. W przypadku użycia nowego klucza należy ręcznie rekonfigurować każdy punkt dostępowy i każde urządzenie klienckie. Tanie produkty WiFi oferują administratorom wyłącznie mało efektywne sposoby zmiany klucza. O ile standardowe rozwiązania mogą być wystarczające w sieci przeznaczonej dla kilku użytkowników, o tyle zmiana klucza w kilkuset lokalizacjach wydaje się wręcz niemożliwa.

Użycie 802.1x pozwala na efektywne uwierzytelnianie i kontrolę ruchu użytkownika. Standard wykorzystuje protokół EAP (Extensible Authentication Protocol), zarówno do przewodowych, jak i bezprzewodowych sieci. EAP obsługuje wiele metod uwierzytelniania, takich jak hasła jednorazowe, certyfikaty, czy publiczne klucze uwierzytelniające. Szczegółowe informacje o EAP można znaleźć w RFC2284.

Jak działa 802.11x? Komunikację rozpoczyna klient żądający uwierzytelnienia. Klient łączy się z urządzeniem autoryzującym, np. punktem dostępowym. Odpowiedzią punktu dostępowego będzie otworzenie przekazu pakietów EAP od klienta do serwera uwierzytelniającego, umieszczonego po kablowej stronie punktu dostępowego. Punkt dostępowy blokuje całkowicie pozostały ruch do czasu, gdy nie zidentyfikuje klienta przy użyciu serwera uwierzytelniającego. Serwerem może być opisany już RADIUS lub TACACS. W przypadku prawidłowego uwierzytelnienia punkt dostępowy otwiera porty dla innych typów ruchu.

Aby lepiej wyjaśnić zasadę działania 802.1x, warto prześledzić kolejne procesy zachodzące przy tego rodzaju uwierzytelnieniu:

  1. Klient wysyła wiadomość startową EAP. Rozpoczyna się seria wymiany wiadomości w celu uwierzytelnienia klienta.
  2. Punkt dostępowy odpowiada wiadomością identyfikacyjną na zapytanie EAP.
  3. Klient wysyła do serwera uwierzytelniającego pakiet EAP zawierający dane identyfikacyjne.
  4. Serwer uwierzytelniający używa specyficznego algorytmu w celu weryfikacji tożsamości klienta. Może to realizować przy użyciu cyfrowego certyfikatu lub innej formy uwierzytelnienia EAP.
  5. Serwer uwierzytelniający wyśle wiadomość akceptacji bądź odrzucenia do punktu dostępowego.
  6. Punkt dostępowy wysyła pakiet EAP-success lub pakiet odrzucający do klienta.
  7. Jeżeli serwer uwierzytelniający zaakceptuje klienta, punkt dostępowy umożliwi przekazywanie ruchu od określonego klienta.

Prostota protokołu 802.1x pozwala na stworzenie efektywnego uwierzytelnienia, niezależnie od tego czy korzystamy z WEP. Większość producentów bezprzewodowego sprzętu LAN oferuje dynamiczne zarządzenie kluczami przy użyciu 802.1x jako mechanizmu transportowego. Jeżeli skonfigurujemy dynamiczną wymianę kluczy, serwer uwierzytelniający 802.1x będzie zwracał klucze sesji do punktu dostępowego razem z komunikatem akceptacji.

Należy podkreślić, że 802.1x nie dostarcza mechanizmu uwierzytelnienia. Kiedy używamy 802.1x musimy wybrać jeden z typów uwierzytelnienia EAP. Specyficzny typ EAP musi być obsługiwany przez serwer uwierzytelniający oraz przez system operacyjny lub aplikację po stronie klienta. Punkt dostępowy pracuje jako przekaźnik wiadomości 802.1x, możemy więc użyć dowolnej metody EAP bez potrzeby aktualizacji oprogramowania AP.

Użycie 802.1x jest dobrym rozwiązaniem w przypadku standardów korporacyjnych. To łatwy sposób na zwiększenie bezpieczeństwa sieci LAN. Wśród popularnych systemów operacyjnych obsługę 802.1x można znaleźć m.in. w Windows XP.

Metody uwierzytelnienia

Jak uwierzytelnić bezprzewodowego użytkownika?

Przebieg typowej sesji uwierzytelniającej 802.1X

Metody bezpiecznego uwierzytelnienia są stosowane na etapie wymiany informacji pomiędzy użytkownikiem a NAS (Network Access Server). Głównym zadaniem jest zainicjowanie dialogu z NAS oraz przesłanie danych uwierzytelniających. Do metod uwierzytelniania wspieranych przez IEEE 802.1x należą m.in. EAP-MD5, EAP-TLS, EAP-TTLS, PEAP, LEAP, EAP-FAST. Każda z nich została stworzona w celu rozwiązywania różnych problemów. Część jest przeznaczona do kontroli dostępu przez proste hasła, pozostałe obsługują uwierzytelnianie certyfikatami.

W przypadku EAP-MD5 nazwa użytkownika i hasło szyfrowane są funkcją skrótu MD5. Z tego powodu w sieciach bezprzewodowych ta metoda jest zbyt podatna na podsłuch, łamanie haseł oraz ataki typu man-in-the-middle. Podobnym algorytmem jest MS-CHAPv2 opracowany przez Microsoft. W tym algorytmie jest wykorzystywana funkcja skrótu MD4. Powszechnym standardem stosowanym w sieciach bezprzewodowych jest EAP-TLS - metoda oparta na kluczach PKI i tunelowaniu TLS/SSL. EAP-MD5-Tunneled używa nazw użytkownika i haseł, ale w połączeniu z bezpiecznym tunelowaniem TLS/SSL. EAP-FAST wykorzystuje tunelowanie przy każdej próbie logowania. PEAP jest rozwiązaniem podobnym do EAP-TTLS, ale pozwalającym na tunelowanie w TLS tylko protokołów uwierzytelniania opartych na EAP. Również Cisco opracowało własną metodę uwierzytelniania o nazwie LEAP (Lightweight EAP). Okazała się jednak podatna na ataki trapiące EAP-MD5.


TOP 200