Jak uwierzytelnić bezprzewodowego użytkownika?

Sieci bezprzewodowe są szczególnie narażone na próby nieuprawnionego dostępu do ich zasobów. Choć celem ataków jest najczęściej darmowy dostęp do Internetu, to nierzadko dochodzi do utraty danych, przeciążenia infrastruktury, a w konsekwencji wymiernych strat finansowych.

Sieci bezprzewodowe są szczególnie narażone na próby nieuprawnionego dostępu do ich zasobów. Choć celem ataków jest najczęściej darmowy dostęp do Internetu, to nierzadko dochodzi do utraty danych, przeciążenia infrastruktury, a w konsekwencji wymiernych strat finansowych.

Metody uwierzytelnienia użytkownika opierają się na wielu zabiegach programowych, sprzętowych i konfiguracyjnych. Obecnie w sieciach dostępowych uwierzytelnienie staje się już nie opcją, lecz koniecznością.

Uwierzytelnienie ustala tożsamość użytkownika i jest podstawowym elementem bezpiecznej sieci komputerowej.

Architektura systemów uwierzytelnienia

Funkcjonują dwie architektury systemów uwierzytelnienia. Pierwsza zakłada przeniesienie całkowitej kontroli uwierzytelnienia do urządzenia NAS (Network Access Server). Takie urządzenie jest systemem pozwalającym na transmisję lub blokadę ruchu określonych użytkowników. Urządzenie NAS w tej architekturze ma pełną funkcjonalność i decyzyjność uwierzytelniania, wykorzystując różne formy baz danych.

Druga architektura przekazuje do urządzenia NAS wyłącznie funkcjonalność blokowania/dopuszczania ruchu. Wymagana jest komunikacja z zewnętrzną bazą danych w celu pobrania informacji o użytkownikach, którzy mogą zostać uwierzytelnieni. Działanie tej architektury można przedstawić w kilku etapach:

Architektura uwierzytelnienia z wykorzystaniem serwera RADIUS

Architektura uwierzytelnienia z wykorzystaniem serwera RADIUS

  1. Użytkownik inicjuje połączenie.
  2. Urządzenie NAS prosi użytkownika o dane uwierzytelniające.
  3. Użytkownik przekazuje dane do NAS.
  4. NAS przekazuje dane do centralnej bazy danych.
  5. Baza danych zwraca informacje o uwierzytelnieniu bądź blokadzie użytkownika.

Elementy architektury muszą idealnie współpracować ze sobą oraz obsługiwać identyczne mechanizmy uwierzytelnienia. Proces uwierzytelnienia można podzielić na dwa etapy - komunikację pomiędzy klientem i NAS oraz komunikację pomiędzy NAS a serwerem uwierzytelniającym.

Protokół RADIUS i TACACS

Komponenty standardu WPA/WPA2

Komponenty standardu WPA/WPA2

RADIUS (Remote Authentication Dial-In User Service) jest powszechnie stosowanym protokołem, umożliwiającym centralne uwierzytelnienie oraz ewidencjonowanie dostępu sieciowego. RADIUS jest opisany w RFC2865 (Remote Authentication Dial-In User Services) oraz RFC2866 (RADIUS Accounting). Pierwotnie protokół był przeznaczony do kontroli dostępu wdzwanianego, obecnie jest stosowany w przełącznikach Ethernet, punktach dostępowych, dostępie DSL oraz innych urządzeniach.

Klient RADIUS jest przeważnie urządzeniem, przez które jest przesyłany cały ruch sieciowy. Może to być bezprzewodowy punkt dostępowy, serwer dial-in, router czy przełącznik sieciowy. Klient wysyła do serwera RADIUS w specyficznym formacie wiadomość, zawierającą niezbędne parametry uwierzytelniające. Serwer RADIUS uwierzytelnia zapytanie klienta, a następnie przekazuje wiadomość zwrotną. Klient RADIUS wysyła także do serwera RADIUS wiadomości niezbędne do zliczania ruchu.

Komunikaty RADIUS są przesyłane za pomocą protokołu UDP (User Datagram Protocol). Port 1812 jest używany do przesyłania wiadomości uwierzytelniających, a port 1813 - wiadomości zliczających. Tylko jedna wiadomość RADIUS jest przesyłana w nagłówku pojedynczego pakietu UDP.

Podstawowe komunikaty RADIUS zdefiniowane w RFC2865 oraz RFC2866

Podstawowe komunikaty RADIUS zdefiniowane w RFC2865 oraz RFC2866

Wiadomość RADIUS zawiera nagłówek oraz atrybuty. Każdy atrybut określa część informacji zawartej w żądaniu połączenia: nazwę użytkownika, hasło użytkownika czy adres IP serwera dostępowego. Atrybuty są opisane przez następujące RFC: 2865, 2866, 2867, 2868, 2969, 3162. Bezpieczeństwo wiadomości RADIUS, przekazywanych pomiędzy klientem i serwerem jest chronione przez hasło dostępu do serwera.

Podobnym protokołem autoryzacji jest TACACS. TACACS realizuje kontrolę dostępu dla routerów, przełączników, punktów dostępowych, czy sieciowych dostępu. TACACS umożliwia autoryzację, uwierzytelnienie i zliczanie ruchu.

TACACS pozwala klientowi zaakceptować nazwę użytkownika i hasło, a następnie odpytać serwer uwierzytelniający. Serwer określa akceptację lub odrzucenie zapytania, a następnie zwraca odpowiedź. Klient TACACS może umożliwić lub zablokować dostęp, opierając się na otrzymanej odpowiedzi. Na tym etapie podjęcie decyzji zależy od algorytmów i danych użytych w konkretnym wdrożeniu serwera. Rozszerzenie protokołu umożliwia użycie większej liczby typów zapytań i odpowiedzi uwierzytelniających.

Zarówno RADIUS, jak i TACACS są powszechnie wykorzystywane w metodach uwierzytelnienia użytkownika końcowego. Są także kluczowym elementem architektury WPA/WPA2.