IEEE 802.1X

IEEE 802.1X to standard IEEE dotyczący kontroli dostępu do sieci opartej na portach (PNAC). Jest częścią grupy protokołów sieciowych IEEE 802.1 . Zapewnia mechanizm uwierzytelniania urządzeniom, które chcą podłączyć się do sieci LAN lub WLAN .

IEEE 802.1X definiuje enkapsulację protokołu Extensible Authentication Protocol (EAP) w sieciach przewodowych IEEE 802 oraz w sieciach bezprzewodowych 802.11, co jest znane jako „EAP przez LAN” lub EAPOL. EAPOL został pierwotnie określony dla IEEE 802.3 Ethernet, IEEE 802.5 Token Ring i FDDI (ANSI X3T9.5/X3T12 i ISO 9314) w 802.1X-2001, ale został rozszerzony, aby pasował do innych technologii IEEE 802 LAN, takich jak IEEE 802.11 wireless w 802.1 X-2004. EAPOL został również zmodyfikowany do użytku z IEEE 802.1AE („MACsec”) i IEEE 802.1AR (Secure Device Identity, DevID) w standardzie 802.1X-2010 do obsługi identyfikacji usług i opcjonalnego szyfrowania punkt-punkt w wewnętrznym segmencie sieci LAN.

Przegląd

Dane EAP są najpierw enkapsulowane w ramkach EAPOL między Supplicantem a Authenticatorem, a następnie ponownie enkapsulowane między Authenticatorem a serwerem uwierzytelniającym przy użyciu RADIUS lub Diameter .

Uwierzytelnianie 802.1X obejmuje trzy strony: suplikanta, wystawcę uwierzytelnienia i serwer uwierzytelniania. Suplikant to urządzenie klienckie (takie jak laptop) , które chce się podłączyć do sieci LAN/WLAN. Termin „suplikant” jest również używany zamiennie w odniesieniu do oprogramowania działającego na kliencie, które dostarcza poświadczenia podmiotowi uwierzytelniającemu. Autentyfikator to urządzenie sieciowe, które zapewnia łącze danych między klientem a siecią i może zezwalać lub blokować ruch sieciowy między nimi, na przykład przełącznik Ethernet lub punkt dostępu bezprzewodowego ; a serwer uwierzytelniania jest zwykle zaufanym serwerem, który może odbierać żądania dostępu do sieci i odpowiadać na nie, a także może informować podmiot uwierzytelniający, czy połączenie ma być dozwolone, oraz różne ustawienia, które powinny mieć zastosowanie do połączenia lub ustawienia tego klienta. Na serwerach uwierzytelniających zazwyczaj działa oprogramowanie obsługujące RADIUS i EAP . W niektórych przypadkach oprogramowanie serwera uwierzytelniania może działać na sprzęcie uwierzytelniającym.

Autentyfikator działa jak strażnik chronionej sieci. Suplikant (tj. urządzenie klienckie) nie ma dostępu za pośrednictwem modułu uwierzytelniającego do chronionej części sieci, dopóki jego tożsamość nie zostanie zweryfikowana i autoryzowana. W przypadku uwierzytelniania opartego na porcie 802.1X suplikant musi najpierw podać autoryzacji wymagane poświadczenia — zostaną one określone z wyprzedzeniem przez administratora sieci i mogą obejmować nazwę użytkownika/hasło lub dozwolony certyfikat cyfrowy . Autentyfikator przekazuje te poświadczenia do serwera uwierzytelniającego, aby zdecydować, czy ma zostać przyznany dostęp. Jeśli serwer uwierzytelniający stwierdzi, że poświadczenia są prawidłowe, informuje o tym podmiot uwierzytelniający, co z kolei umożliwia suplikantowi (urządzeniu klienckiemu) dostęp do zasobów znajdujących się po chronionej stronie sieci.

Działanie protokołu

EAPOL działa w warstwie łącza danych , aw protokole ramkowania Ethernet II ma wartość EtherType równą 0x888E.

Podmioty portowe

Standard 802.1X-2001 definiuje dwa porty logiczne dla portu uwierzytelnionego — „port kontrolowany” i „port niekontrolowany”. Kontrolowany port jest manipulowany przez 802.1X PAE (Port Access Entity) w celu umożliwienia (w stanie autoryzowanym) lub uniemożliwienia (w stanie nieautoryzowanym) ruchu sieciowego przychodzącego i wychodzącego do/z kontrolowanego portu. Port niekontrolowany jest używany przez 802.1X PAE do wysyłania i odbierania ramek EAPOL.

802.1X-2004 definiuje równoważne jednostki portu dla suplikanta; więc suplikant wdrażający standard 802.1X-2004 może uniemożliwić użycie protokołów wyższego poziomu, jeśli uwierzytelnianie nie zakończyło się pomyślnie. Jest to szczególnie przydatne, gdy używana jest metoda EAP zapewniająca wzajemne uwierzytelnianie , ponieważ suplikant może zapobiec wyciekowi danych po podłączeniu do nieautoryzowanej sieci.

Typowy postęp uwierzytelniania

Typowa procedura uwierzytelniania składa się z:

Diagram sekwencji postępu 802.1X
  1. Inicjalizacja Po wykryciu nowego suplikanta port na przełączniku (uwierzytelniacz) zostaje włączony i ustawiony w stan „nieautoryzowany”. W tym stanie dozwolony jest tylko ruch 802.1X; inny ruch, taki jak protokół internetowy (a wraz z nim TCP i UDP ), jest odrzucany.
  2. Inicjacja Aby zainicjować uwierzytelnienie, wystawca uwierzytelnienia będzie okresowo przesyłać ramki EAP-Request Identity na specjalny adres warstwy 2 (01:80:C2:00:00:03) w segmencie sieci lokalnej. Suplikant nasłuchuje pod tym adresem i po odebraniu ramki EAP-Request Identity odpowiada ramką EAP-Response Identity zawierającą identyfikator suplikanta, taki jak identyfikator użytkownika. Następnie wystawca uwierzytelnienia hermetyzuje tę odpowiedź tożsamości w promieniu RADIUS pakiet Access-Request i przesyła go dalej do serwera uwierzytelniającego. Suplikant może również zainicjować lub wznowić uwierzytelnianie, wysyłając ramkę EAPOL-Start do wystawcy uwierzytelnienia, który następnie odpowie ramką EAP-Request Identity.
  3. Negocjacje (technicznie negocjacja EAP) Serwer uwierzytelniający wysyła odpowiedź (zawartą w pakiecie RADIUS Access-Challenge) do podmiotu uwierzytelniającego, zawierającą żądanie EAP określające metodę EAP (rodzaj uwierzytelniania opartego na protokole EAP, które ma wykonać suplikant). Autentyfikator hermetyzuje żądanie EAP w ramce EAPOL i przesyła je do suplikanta. W tym momencie petent może zacząć korzystać z żądanej metody EAP lub wykonać NAK („negatywne potwierdzenie”) i odpowiedzieć metodami EAP, które chce zastosować.
  4. Uwierzytelnianie Jeśli serwer uwierzytelniający i suplikant uzgodnią metodę EAP, żądania i odpowiedzi EAP są przesyłane między suplikantem a serwerem uwierzytelniającym (przetłumaczone przez podmiot uwierzytelniający), dopóki serwer uwierzytelniający nie odpowie komunikatem EAP-Success ( zawartym w -Akceptuj pakiet) lub komunikat EAP-Failure (zawarty w RADIUS pakiet Access-Reject). Jeśli uwierzytelnianie się powiedzie, wystawca uwierzytelnienia ustawia port w stan „autoryzowany” i dozwolony jest normalny ruch, jeśli się nie powiedzie, port pozostaje w stanie „nieautoryzowany”. Gdy suplikant wylogowuje się, wysyła komunikat EAPOL-logoff do wystawcy uwierzytelnienia, który następnie ustawia port w stan „nieautoryzowany”, ponownie blokując cały ruch inny niż EAP.

Implementacje

Projekt open source o nazwie Open1X tworzy klienta Xsupplicant . Ten klient jest obecnie dostępny zarówno dla systemów Linux, jak i Windows. Głównymi wadami klienta Open1X jest to, że nie zapewnia on zrozumiałej i obszernej dokumentacji użytkownika oraz to, że większość dostawców Linuksa nie zapewnia dla niego pakietu. Bardziej ogólny wpa_supplicant może być używany w sieciach bezprzewodowych 802.11 i sieciach przewodowych. Oba obsługują bardzo szeroki zakres typów EAP.

iPhone i iPod Touch obsługują 802.1X od czasu wydania iOS 2.0. Android obsługuje standard 802.1X od wydania wersji 1.6 Donut. ChromeOS obsługuje standard 802.1X od połowy 2011 roku.

macOS oferuje natywną obsługę od wersji 10.3 .

Avenda Systems dostarcza suplicant dla systemów Windows , Linux i macOS . Mają też wtyczkę do środowiska Microsoft NAP . Avenda oferuje również agentów kontroli zdrowia.

Okna

Domyślnie system Windows nie odpowiada na żądania uwierzytelnienia 802.1X przez 20 minut po nieudanym uwierzytelnieniu. Może to spowodować znaczne zakłócenia dla klientów.

Okres blokady można skonfigurować za pomocą wartości DWORD HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\dot3svc\BlockTime (HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\wlansvc\BlockTime dla sieci bezprzewodowych) w rejestrze (w minutach). Aby umożliwić konfigurowanie okresu, wymagana jest poprawka dla systemów Windows XP z dodatkiem SP3 i Windows Vista z dodatkiem SP2 .

Wildcard nie są obsługiwane przez EAPHost, składnik systemu Windows, który zapewnia obsługę protokołu EAP w systemie operacyjnym. Oznacza to, że w przypadku korzystania z komercyjnego urzędu certyfikacji należy zakupić indywidualne certyfikaty.

Windows XP

System Windows XP ma poważne problemy z obsługą zmian adresów IP wynikających z uwierzytelniania 802.1X opartego na użytkownikach, które zmienia sieć VLAN, a tym samym podsieć klientów. Firma Microsoft oświadczyła, że ​​nie będzie przenosić logowania jednokrotnego z systemu Vista, która rozwiązuje te problemy.

Jeśli użytkownicy nie logują się przy użyciu profili roamingowych, należy pobrać i zainstalować poprawkę w przypadku uwierzytelniania za pośrednictwem protokołu PEAP przy użyciu protokołu PEAP-MSCHAPv2.

Windows Vista

Komputery z systemem Windows Vista połączone za pośrednictwem telefonu IP mogą nie uwierzytelniać się zgodnie z oczekiwaniami, w wyniku czego klient może zostać umieszczony w niewłaściwej sieci VLAN. Poprawka jest dostępna, aby to naprawić.

System Windows 7

Komputery z systemem Windows 7, które są połączone przez telefon IP, mogą nie uwierzytelniać się zgodnie z oczekiwaniami, w wyniku czego klient może zostać umieszczony w niewłaściwej sieci VLAN. Poprawka jest dostępna, aby to naprawić.

System Windows 7 nie odpowiada na żądania uwierzytelnienia 802.1X po niepowodzeniu wstępnego uwierzytelnienia 802.1X. Może to spowodować znaczne zakłócenia dla klientów. Poprawka jest dostępna, aby to naprawić.

Windows PE

W przypadku większości przedsiębiorstw wdrażających i wdrażających zdalnie systemy operacyjne warto zauważyć, że Windows PE nie ma natywnej obsługi standardu 802.1X. Jednak obsługę środowiska WinPE 2.1 i WinPE 3.0 można dodać za pomocą poprawek udostępnianych przez firmę Microsoft. Chociaż pełna dokumentacja nie jest jeszcze dostępna, wstępna dokumentacja dotycząca korzystania z tych poprawek jest dostępna za pośrednictwem blogu firmy Microsoft.

Linuks

Większość dystrybucji Linuksa obsługuje 802.1X przez wpa_supplicant i integrację z komputerami stacjonarnymi, taką jak NetworkManager .

Federacje

eduroam (międzynarodowa usługa roamingu) wymaga użycia uwierzytelniania 802.1X podczas zapewniania dostępu do sieci gościom odwiedzającym z innych instytucji obsługujących eduroam.

BT (British Telecom, PLC) wykorzystuje Identity Federation do uwierzytelniania w usługach dostarczanych do wielu różnych branż i rządów.

Własne rozszerzenia

MAB (obejście uwierzytelniania MAC)

Nie wszystkie urządzenia obsługują uwierzytelnianie 802.1X. Przykłady obejmują drukarki sieciowe, elektronikę opartą na sieci Ethernet, taką jak czujniki środowiskowe, kamery i telefony bezprzewodowe. Aby urządzenia te mogły być używane w chronionym środowisku sieciowym, należy zapewnić alternatywne mechanizmy ich uwierzytelniania.

Jedną z opcji byłoby wyłączenie 802.1X na tym porcie, ale to pozostawia ten port niezabezpieczony i otwarty na nadużycia. Inną, nieco bardziej niezawodną opcją jest użycie opcji MAB. Gdy MAB jest skonfigurowany na porcie, ten port najpierw spróbuje sprawdzić, czy podłączone urządzenie jest zgodne ze standardem 802.1X, a jeśli nie otrzyma żadnej reakcji z podłączonego urządzenia, spróbuje uwierzytelnić się na serwerze AAA przy użyciu adresu MAC podłączonego urządzenia jako nazwa użytkownika i hasło. Administrator sieci musi wtedy zapewnić dostępność RADIUS serwer w celu uwierzytelnienia tych adresów MAC, dodając ich jako zwykłych użytkowników lub implementując dodatkową logikę w celu rozwiązania ich w bazie danych inwentaryzacji sieci.

Wiele zarządzanych przełączników Ethernet oferuje takie opcje.

Luki w zabezpieczeniach 802.1X-2001 i 802.1X-2004

Udostępnione multimedia

Latem 2005 roku Steve Riley z Microsoft opublikował artykuł (oparty na oryginalnych badaniach Microsoft MVP Svyatoslav Pidgorny) szczegółowo opisujący poważną lukę w protokole 802.1X, obejmującą atak typu „man in the middle . Podsumowując, wada wynika z faktu, że 802.1X uwierzytelnia się tylko na początku połączenia, ale po tym uwierzytelnieniu atakujący może użyć uwierzytelnionego portu, jeśli ma możliwość fizycznego wstawienia się (być może przy użyciu grupy roboczej hub) między uwierzytelnionym komputerem a portem. Riley sugeruje, że w przypadku sieci przewodowych należy używać protokołu IPsec lub kombinacja IPsec i 802.1X byłaby bezpieczniejsza.

Ramki EAPOL-Logoff przesyłane przez suplikanta 802.1X są wysyłane w postaci jawnej i nie zawierają żadnych danych pochodzących z wymiany poświadczeń, która początkowo uwierzytelniła klienta. W związku z tym są bardzo łatwe do sfałszowania na współdzielonych nośnikach i mogą być używane jako część ukierunkowanego ataku DoS zarówno w przewodowych, jak i bezprzewodowych sieciach LAN. W przypadku ataku EAPOL-Logoff złośliwa strona trzecia, mająca dostęp do nośnika, do którego jest podłączony moduł uwierzytelniający, wielokrotnie wysyła sfałszowane ramki EAPOL-Logoff z adresu MAC docelowego urządzenia. Autoryzator (wierząc, że docelowe urządzenie chce zakończyć sesję uwierzytelniania) zamyka sesję uwierzytelniania celu, blokując ruch przychodzący z celu, odmawiając mu dostępu do sieci.

Specyfikacja 802.1X-2010, która rozpoczęła się jako 802.1af, eliminuje luki w poprzednich specyfikacjach 802.1X, wykorzystując MACSec IEEE 802.1AE do szyfrowania danych między portami logicznymi (działającymi na porcie fizycznym) i IEEE 802.1AR (Secure Device Identity / DevID) uwierzytelnionych urządzeń.

Na wszelki wypadek, dopóki te ulepszenia nie zostaną powszechnie wdrożone, niektórzy dostawcy rozszerzyli protokoły 802.1X-2001 i 802.1X-2004, umożliwiając wiele jednoczesnych sesji uwierzytelniania na jednym porcie. Chociaż zapobiega to wchodzeniu ruchu z urządzeń z nieuwierzytelnionymi adresami MAC na port uwierzytelniony 802.1X, nie zatrzymuje złośliwego urządzenia podsłuchującego ruch z uwierzytelnionego urządzenia i nie zapewnia ochrony przed fałszowaniem adresów MAC ani atakami EAPOL-Logoff.

Alternatywy

Alternatywą wspieraną przez IETF jest Protocol for Carrying Authentication for Network Access (PANA), który obsługuje również EAP, chociaż działa w warstwie 3, używając UDP, a zatem nie jest powiązany z infrastrukturą 802.

Zobacz też

Linki zewnętrzne