Co robi serwer RADIUS w konfiguracji WPA2 Enterprise?

17

Chciałbym zaktualizować swoje WiFi z trybu „WPA2 Personal” do trybu „WPA2 Enterprise”, ponieważ wiem, że w zasadzie w sieci Wi-Fi zabezpieczonej za pomocą „WPA2 Personal” urządzenia, które znają PSK, mogą wąchać nawzajem ruch po ich przechwyceniu powiązanie między stacją a punktem dostępowym. Aby zmniejszyć efekt, jaki miałoby jedno zhakowane urządzenie w sieci WiFi (w trybie „WPA2 Personal”, byłby w stanie odszyfrować ruch innego, niezakłóconego klienta WiFi, gdyby wcześniej przechwycił „powiązane żądania” od drugiego klienci w trybie rozwiązanym / monitorowania) Chciałbym zaktualizować swoje WiFi do bezpieczeństwa „WPA2 Enterprise”, gdzie, zgodnie z moim zrozumieniem, nie jest to już możliwe.

Niestety, w przypadku „WPA2 Enterprise” potrzebujesz serwera RADIUS.

Teraz, o ile rozumiem, serwer RADIUS wykonuje tylko uwierzytelnianie, ale nie wykonuje szyfrowania ani wymiany klucza. Zasadniczo więc AP otrzymuje żądanie powiązania od STA, klient podaje poświadczenia, następnie AP przekazuje je do serwera RADIUS, serwer RADIUS mówi „poświadczenia są OK”, a następnie AP umożliwia STA skojarzenie, w przeciwnym razie nie.

Czy to odpowiedni model? Jeśli tak, to serwer RADIUS to po prostu baza danych pełna danych uwierzytelniających użytkownika (pary nazwa użytkownika i hasło). Jeśli tak, to jestem ciekawy, dlaczego wymagają do tego w pełni funkcjonalnej maszyny serwerowej, ponieważ nawet dla tysięcy użytkowników nazwy użytkowników i hasła nie zawierają zbyt wielu danych, a weryfikacja poświadczeń jest dość podstawowym zadaniem, więc wydaje się, że jest to rzecz, którą może łatwo zrobić sam AP. Dlaczego więc wymaga do tego dedykowanego serwera?

Może więc pomyliłem się i serwer RADIUS służy nie tylko do uwierzytelniania, ale do faktycznego szyfrowania? Jeśli STA wysyła dane do sieci za pomocą „WPA2 Enterprise”, szyfruje je pewnym kluczem sesji, wówczas AP odbiera zaszyfrowane dane, ale w przeciwieństwie do „WPA2 Personal”, nie może ich odszyfrować, więc przekazuje dane na do serwera RADIUS, który ma kluczowy materiał (i moc obliczeniową) do jego odszyfrowania. Po uzyskaniu czystego tekstu RADIUS przesyła niezaszyfrowany materiał z powrotem do sieci przewodowej. Czy tak to się robi?

Powód, dla którego chcę to wiedzieć, jest następujący. Mam tutaj dość stare urządzenie, na którym działa serwer RADIUS. Ale, jak powiedziałem, urządzenie jest dość stare i dlatego implementuje starą wersję RADIUS ze znanymi słabościami bezpieczeństwa. Teraz chciałbym wiedzieć, czy zagrażałoby to mojemu bezpieczeństwu Wi-Fi, jeśli zostanie użyte do szyfrowania w trybie „WPA2 Enterprise”. Jeśli osoba atakująca może rozmawiać z serwerem RADIUS, gdy nie jest uwierzytelniona, może to zagrozić bezpieczeństwu mojej sieci, więc nie powinienem tego robić. Z drugiej strony, jeśli atakujący może rozmawiać tylko z AP, który z kolei rozmawia z serwerem RADIUS w celu sprawdzenia poświadczeń, wówczas „wrażliwy serwer RADIUS” może nie stanowić większego problemu, ponieważ atakujący nie uzyska do sieci Wi-Fi, a tym samym nie byłby w stanie rozmawiać z serwerem RADIUS. Jedynym urządzeniem komunikującym się z serwerem RADIUS byłby sam AP, do sprawdzania poświadczeń, z wygenerowanym całym kluczem i kryptografią na samym (bezkompromisowym) AP. Osoba atakująca zostanie odwołana, a tym samym nie będzie w stanie dołączyć do sieci i wykorzystać słabości potencjalnie podatnego na zagrożenia serwera RADIUS.

Jak dokładnie serwer RADIUS jest zaangażowany w bezpieczeństwo „WPA2 Enterprise”?

nie. ludzka istota
źródło

Odpowiedzi:

16

WPA2 Enterprise jest oparty na częściach 802.11i opartych na 802.1X. 802.1X NIE wymaga serwera RADIUS, ale tak się zwykle robi ze starszych powodów.

Rola serwera RADIUS występuje tylko na początku połączenia, ale robi o wiele więcej niż wspomniałeś. W ramach mechanizmu uwierzytelniania materiał klucza jest bezpiecznie generowany na serwerze RADIUS (i ten sam materiał klucza jest również generowany na kliencie WPA2). Po tym, jak serwer RADIUS powie AP, aby zaakceptował to żądanie połączenia, serwer RADIUS wysyła ten klucz w komunikacie RADIUS „klucz” (ponownie użył komunikatu / atrybutu RADIUS MPPE-KEY, który Microsoft wprowadził) do AP, więc AP wie, jakich kluczy dla użytkownika na sesję (w tym klucza czasowego lub PTK) należy użyć w tej sesji. To kończy zaangażowanie serwera RADIUS.

Masz całkowitą rację, że tak naprawdę serwer RADIUS nie wymaga dużej mocy. Podobnie jak serwer DHCP lub serwer DNS dla małej sieci lub domeny, tak naprawdę nie potrzebujesz sprzętu „klasy serwera”, aby go uruchomić. Prawdopodobnie zrobi to każdy mały wbudowany moduł sieciowy o niskiej mocy. Istnieje wiele protokołów we współczesnych sieciach, w których „serwer” nie wymaga dużej mocy według dzisiejszych standardów. Tylko dlatego, że słyszysz termin „serwer”, nie zakładaj, że wymaga on wytrzymałego sprzętu serwerowego.


Historia

Widzisz, RADIUS był pierwotnie sposobem na przeniesienie uwierzytelnienia z serwerów modemowych PPP na modem telefoniczny na serwer scentralizowany. Właśnie dlatego oznacza „usługę zdalnego uwierzytelniania użytkownika telefonicznego” (powinna to być „usługa zdalnego uwierzytelniania użytkownika telefonicznego”, ale DIURAS nie brzmi tak dobrze jak RADIUS). Kiedy PPP zaczęło być używane do uwierzytelniania DSL (PPPoE, PPPoA) i uwierzytelniania VPN (PPTP i L2TP-over-IPSec są „PPP wewnątrz zaszyfrowanego tunelu”), było naturalne, aby nadal używać tych samych serwerów RADIUS do scentralizowanego uwierzytelniania dla wszystkie serwery zdalnego dostępu w przedsiębiorstwie.

Brakowało oryginalnych mechanizmów uwierzytelniania PPP i wymagało zaangażowania wielu organów normalizacyjnych w celu stworzenia nowych, dlatego ostatecznie opracowano protokół EAP (Extensible Authentication Protocol), który jest systemem wtyczek typu uwierzytelniania do uwierzytelniania PPP. Oczywiście serwery RADIUS i klienci PPP to pierwsze miejsca, które musiały obsługiwać protokół EAP. Oczywiście możesz mieć modem modemowy / serwer PPP, serwer VPN, serwer PPPoE / PPPoA (naprawdę, L2TP PPP) lub cokolwiek innego, implementować protokół EAP lokalnie, ale do tej pory RADIUS był tak szeroko wdrażany że zaimplementowały go głównie serwery RADIUS.

W końcu ktoś chciał sposobu na uwierzytelnienie za każdym razem, gdy ktoś podłącza się do niestrzeżonego portu Ethernet w holu lub sali konferencyjnej, dlatego stworzono do tego „EAP przez LAN”. „EAPoL”, jak wiadomo, został znormalizowany jako 802.1X. 802.1X został później zastosowany do sieci 802.11 w IEEE 802.11i. A Wi-Fi Alliance stworzył program certyfikacji / brandingu / marketingu interoperacyjności wokół 802.11i i nazwał go Wi-Fi Protected Access 2 (WPA2).

Tak więc, chociaż sam punkt dostępowy 802.11 może sam spełniać całą rolę „Authenticator” 802.1X (WPA2-Enterprise) (bez pomocy serwera RADIUS), to po prostu nie jest to często wykonywane. W rzeczywistości, w niektórych punktach dostępowych, które są zdolne do samodzielnego działania w standardzie 802.1X, w rzeczywistości wbudowały serwer RADIUS typu open source do swojego oprogramowania wewnętrznego i wykonują uwierzytelnianie 802.1X za pośrednictwem RADIUS za pośrednictwem pętli zwrotnej, ponieważ łatwiej jest podłączyć go w ten sposób niż próbować zaimplementuj własny kod uwierzytelniający EAP lub skopiuj kod z jakiegoś oprogramowania serwera RADIUS typu open source i spróbuj bezpośrednio zintegrować go z demonami oprogramowania układowego AP 802.11.


Biorąc pod uwagę tę historię oraz w zależności od tego, ile lat ma proponowany serwer RADIUS, ważnym pytaniem jest, czy implementuje on typy EAP, których chcesz używać do uwierzytelniania w sieci. PEAP? TTLS?

Należy również pamiętać, że RADIUS tradycyjnie używa „Shared Secret” znanego klientowi RADIUS (klient RADIUS to „Network Access Server”: w tym przypadku AP, serwer VPN lub PPP lub inny „Remote Access Server” w innym przypadki) i serwer RADIUS, zarówno w celu uwierzytelnienia klienta i serwera RADIUS, jak i szyfrowania komunikacji. Większość serwerów RADIUS pozwala określić różne wspólne tajne hasła dla każdego punktu dostępowego na podstawie adresu IP punktu dostępowego. Dlatego osoba atakująca w Twojej sieci musiałaby móc przejąć ten adres IP i odgadnąć ten wspólny sekret, aby serwer RADIUS mógł z nim porozmawiać. Gdyby atakujący nie był jeszcze w sieci, atakujący mógłby jedynie spróbować wysłać specjalnie spreparowane / uszkodzone wiadomości EAP, które AP przekaże za pośrednictwem RADIUS do serwera RADIUS.

Spiff
źródło
Prawdopodobnie użyłbym EAP-EKE lub alternatywnie EAP-PWD, jeśli mogę. Chcę przede wszystkim chronić użytkowników, którzy mogą łączyć się z siecią, przed przechwytywaniem ruchu innych użytkowników. Jeśli WPA2-PSK ustanowi „klucze sesji” przez DH, byłoby to dla mnie idealne, ale niestety (z jakiegokolwiek powodu) tak nie jest. Nie potrzebuję żadnych wyrafinowanych metod uwierzytelniania. Chcę tylko, aby stacje nie przechwytywały się nawzajem. Jeśli chodzi o wszystko inne, nie mam nic przeciwko bezpieczeństwu WPA2-PSK.
no.human.being
@ no.human.being Strzeż się, że nie wszystkie metody EAP obsługują tworzenie materiału klucza niezbędnego dla 802.11i / WPA2-Enterprise. Nie znam tych dwóch typów, o których wspomniałeś, więc możesz sprawdzić gdzie indziej, aby upewnić się, że będą odpowiednie do tego celu.
Spiff
1
Miło napisać. Nie podałeś żadnego ważnego powodu, dla którego istnieje osobny serwer. Nie dotyczy to wdrożeń domowych, ale jest to duża część „dlaczego to istnieje”. W każdym wdrożeniu korporacyjnym punkty dostępu są w rzeczywistości niezaufane, ponieważ znajdują się w miejscach publicznych i dlatego nie powinny zawierać żadnych informacji o użytkowniku. Ponadto, w przypadku każdego typu protokołu EAP zapewniającego bezpieczny tunel dla klienta (PEAP, TTLS, TLS), punkt dostępowy w ogóle nie uczestniczy w uwierzytelnianiu, więc nie może przechwytywać poświadczeń użytkownika, nawet jeśli zostanie naruszony przez osobę z drabina :)
Ammo Goettsch
3

WPA Enterprise (WPA z EAP) pozwala na stosowanie wielu innych metod uwierzytelniania, takich jak certyfikaty cyfrowe, tokeny RSA itp. Należy je zaimplementować za pomocą serwera radius, ponieważ wszystkie te metody wykraczają poza proste nazwy użytkowników + hasła, a protokołem radius jest de facto standard dla większości systemów wymagających AAA (uwierzytelnianie, autoryzacja, księgowość).

To powiedziawszy,

1) serwer radius może być łatwo chroniony przez reguły zapory ogniowej, przyjmując pakiety tylko od AP (klient Wi-Fi nigdy nie będzie rozmawiać bezpośrednio z serwerem radius)

2) użycie starego promienia może nie działać, polecam jeden z najnowszych serwerów Freeradius

Więcej szczegółów na temat tego, jak to działa i co musisz zrobić: http://wiki.freeradius.org/guide/WPA-HOWTO#Why-Would-I-Want-WPA ?

claudiuf
źródło
Tak. Pomyślałem, że mogę oszczędzić energię (i hałas), nie stawiając rzeczywistego serwera dla RADIUS, ponieważ nie potrzebuję „wyrafinowanych metod uwierzytelniania”, chciałbym tylko, aby klienci bezprzewodowi nie „obwąchali się nawzajem” ( prawdopodobnie nie, to tylko dodatkowa paranoja ;-)). Tak więc w zasadzie chcę prywatności „przełączanej sieci” w sieci bezprzewodowej (która jest z natury nadawanym medium), więc potrzebuję rzeczywistych kluczy „na łącze” lub „na klienta”. „WPA2 Enterprise” prawdopodobnie odpowiada moim potrzebom. Mogę spróbować skonfigurować RADIUS na płycie wbudowanej z systemem Linux.
Ludzki. Będąc
-2

FreeRadius z radością będzie działał na Raspberry PI. Zwykłym systemem operacyjnym jest Raspbian, który jest smakiem Debiana, więc zrobi wszystko, co powinien zrobić serwer, np. DHCP / DNS. Jest tani - 40 dolarów za gołe wyżywienie - ale budżet 80 lub 90 dolarów na dodatkowe „opcje” - takie jak obudowa i zasilacz ... Od kilku lat działam w promieniu na Pi / 7. Ma również zenmap i Wireshark. Jest to platforma do testowania, ponieważ działa na karcie SD i można skopiować kartę SD na komputer. Spróbuj czegoś i przywróć kartę SD z komputera, jeśli ją zepsułeś.

Sean
źródło
2
Ta odpowiedź nie wyjaśnia roli serwera RADIUS
janv8000,