Menu
Jest wolny
rejestracja
Dom  /  Instalacja i konfiguracja/ Psk eap co wybrać. EAP (Extensible Authentication Protocol)

Psk eap co wybrać. EAP (Extensible Authentication Protocol)

7 protokół EAP

EAP (Extensible Authentication Protocol) to rozszerzenie protokołu PPP. Zawiera standardowy mechanizm obsługujący szereg metod uwierzytelniania, w tym tokeny, Kerberos, klucze publiczne oraz S/Key. Ten mechanizm jest w pełni obsługiwany zarówno przez serwery dial-up systemu Windows NT, jak i klienci sieci Klient Dial-Up Networking dostępu zdalnego. EAP to krytyczny element bezpiecznej sieci VPN, zapewniający ochronę przed atakami siłowymi, zgadywaniem słowników i odgadywaniem haseł.

EAP rozszerza możliwości sieci VPN usługi zdalnego dostępu w systemie Windows NT, umożliwiając uwierzytelnianie przy użyciu modułów innych firm. Implementacja tego protokołu w środowisku Windows NT była odpowiedzią Microsoftu na liczne prośby użytkowników, którzy nie chcą rezygnować ze zwykłego sprzętu zabezpieczającego.

EAP został zaproponowany przez Internet Support Task Force jako rozszerzenie PPP. Zawiera dodatkowe mechanizmy uwierzytelniania wymagane do walidacji połączeń PPP. Głównym celem EAP jest dynamiczne łączenie modułów uwierzytelniania zarówno po stronie klienta, jak i serwera takiego połączenia. Protokół ten jest bardzo elastyczny, zapewniając unikalność i zmienność uwierzytelniania. Praktyczna implementacja EAP jest zawarta w Microsoft Windows 2000.

7.1 Zapewnienie bezpieczeństwa na poziomie transakcji

Bardzo wysoki poziom bezpieczeństwa VPN jest zapewniony dzięki zastosowaniu kart mikroprocesorowych oraz tokenów uwierzytelniających. Karty mikroprocesorowe to miniaturowe urządzenia wielkości karty kredytowej z wbudowanymi procesorami i małą objętością pamięć o dostępie swobodnym... Zwykle jest to miejsce, w którym wprowadza się tożsamość użytkownika (np. certyfikaty klucza publicznego), klucze szyfrowania i ustawienia konta. Niektóre karty mikroprocesorowe zawierają również algorytm szyfrowania, dzięki któremu klucze kryptograficzne nigdy nie są przesyłane na zewnątrz. W systemach zabezpieczeń zdalnego dostępu karty mikroprocesorowe są dziś rzadko stosowane, gdyż obsługują je tylko nieliczne pakiety tego typu. Sytuacja powinna się zmienić od nadejście Windows 2000. Ten system operacyjny umożliwi korzystanie z takich kart dla szerokiej gamy typów uwierzytelniania, w tym RAS, L2TP i PPTP.

Tokeny uwierzytelniające są wydawane przez różnych producentów, z których każdy umieszcza w nich własny algorytm pracy. Ale wszystkie one są niczym więcej jak generatorem haseł sprzętowych. Niektóre tokeny wyposażone są w miniaturowy wyświetlacz LCD oraz klawiaturę, przypominającą wygląd zewnętrzny kalkulatory. Po wprowadzeniu przez użytkownika swojego cyfrowego numeru identyfikacyjnego, na ekranie wyświetlacza pojawia się tajny kod cyfrowy, który działa jak hasło. Zwykle tajny kod jest unikalny i nigdy nie jest powtarzany nawet w dniu to urządzenie... Tokeny uwierzytelniania są bardzo przydatne w przypadku dostępu telefonicznego (na przykład podczas pracy z usługą dostępu zdalnego), a także do uwierzytelniania komputerów hostów. Sieciowe zastosowanie takich tokenów, co do zasady, oparte jest na technologiach klient-serwer (lub zbudowane według innych schematów z wykorzystaniem haseł), dlatego nie wyklucza przechwycenia przesyłanych tajnych informacji.

Protokół syntetyczny EAP-TLS (Extended Authentication Protocol-Transaction Layer Security) zapewni obsługę tokenów uwierzytelniających, a także certyfikatów użytkowników z kluczem publicznym. Został już złożony do rozpatrzenia Grupa docelowa wsparcie techniczne dla Internetu jako szkic specyfikacji metody uwierzytelniania o wysokim poziomie bezpieczeństwa przy użyciu certyfikatów klucza publicznego. W schemacie EAP-TLS klient wysyła certyfikat użytkownika do serwera zdalnego dostępu, aw zamian otrzymuje od niego certyfikat serwera. Pierwszy z nich zapewnia niezawodne uwierzytelnianie użytkownika na serwerze, a drugi zapewnia, że ​​klient nawiązał kontakt z dokładnie tym serwerem, którego potrzebuje. Obie strony takiej wymiany polegają na łańcuchu zaufanych jednostek certyfikujących w celu weryfikacji otrzymanych danych.

Certyfikat użytkownika może być przechowywany bezpośrednio na komputerze klienckim, z którego wykonywany jest zdalny dostęp, lub na zewnętrznej karcie mikroprocesorowej. W obu przypadkach certyfikat może być używany tylko po identyfikacji użytkownika, która odbywa się poprzez wymianę jednej lub drugiej informacji (numer identyfikacyjny, kombinacja nazwy użytkownika i hasła itp.) między użytkownikiem a komputerem klienckim. Takie podejście jest w pełni zgodne z zasadą ochrony sprzętu i oprogramowania zalecaną przez większość ekspertów w dziedzinie bezpieczeństwa komunikacji.

EAP-TLS jest zasadniczo formą EAP zaimplementowaną w systemie Windows 2000. Podobnie jak MS-CHAP, pobiera klucz kryptograficzny, którego MPPE używa do szyfrowania wszystkich kolejnych danych.

7.2 Uwierzytelnianie RADIUS

RADIUS (Remote Authentication Dial-in User Service) to centralny serwer z bazą danych uwierzytelniania, który uzupełnia inne protokoły uwierzytelniania żądań. Usługa ta oparta jest na protokole UDP, obsługującym protokoły PPP, PAP i CHAP oraz o funkcji logowania do Systemy uniksowe oraz szereg innych mechanizmów uwierzytelniania. Oprócz swojego bezpośredniego celu, usługa RADIUS pozwala również na śledzenie budżetu VPN.

Otrzymawszy od usługa sieciowaŻądanie uwierzytelnienia NAS w celu połączenia użytkownika, serwer RADIUS porównuje otrzymane dane z informacjami ze swojej bazy danych. Istnieje również centralne repozytorium ustawień połączeń dla wszystkich zarejestrowanych użytkowników. W razie potrzeby serwer nie ogranicza się do prostej odpowiedzi na zapytanie (TAK/NIE), ale zgłasza do NAS szereg informacji dotyczących określony użytkownik... W szczególności może określić najdłuższy czas sesji, przydzielony statyczny adres IP oraz informacje umożliwiające oddzwonienie do użytkownika.

Usługa RADIUS może nie tylko uzyskiwać dostęp do własnej bazy danych w celu autonomicznego przetwarzania żądań uwierzytelnienia, ale także udostępniać ją innym serwerom baz danych. W szczególności może być używany przez generała otwarty serwer połączenia sieciowe lub główny kontroler domeny. Ten ostatni często znajduje się na tym samym komputerze co serwer RADIUS, chociaż nie jest to wymagane. Między innymi serwer RADIUS może pełnić rolę klienta proxy dla zdalnego serwera RADIUS.

7.3 Budżetowanie VPN za pomocą RADIUS

RADIUS umożliwia scentralizowaną administrację i budżetowanie wielu serwerów tunelowych. Większość serwerów RADIUS można skonfigurować do rejestrowania żądań uwierzytelnienia w specjalnym pliku konta. Specyfikacja zawiera zestaw standardowych wiadomości, za pomocą których NAS powiadamia serwer RADIUS o wysłaniu konto użytkownika na początku każdego połączenia, na jego zakończenie lub powtarzać je w trakcie sesji komunikacyjnej w określonych odstępach czasu. Zewnętrzni dostawcy oferują szereg pakietów rozliczeniowych i audytowych, które generują różne dokumenty analityczne na podstawie kont RADIUS.

7.4 EAP i PROMIEŃ

Aby udostępnić EAP serwerowi RADIUS, należy wprowadzić poprawki zarówno w usługach NAS, jak i RADIUS. W tradycyjnym schemacie uwierzytelniania usługi te wykonują pojedynczą transakcję, składającą się z żądania i odpowiedzi na nie. Jednak w przypadku uwierzytelniania EAP serwer NAS nie może niezależnie gromadzić informacji o kliencie wymaganych do uwierzytelnienia na serwerze RADIUS. By rozwiązać ten problem Administrator systemu może skonfigurować NAS tak, aby wysyłał identyfikator do klienta, umieszczając go w komunikacie EAP. Ten ostatni odpowie, podając nazwę użytkownika i informacje o domenie do usługi uwierzytelniania sieciowego. Usługa NAS uwzględnia je w żądaniu EAP-start i jako takie przekazuje je do serwera RADIUS. Dalszy proces uwierzytelniania odbywa się jak zwykle: usługa RADIUS wysyła do klienta komunikaty EAP za pośrednictwem usługi NAS i odpowiada na nie, dopóki uwierzytelnienie nie da pozytywnego (lub negatywnego) wyniku.




Jego nazwa i hasło oraz daje uprawnienia dostępu do serwera autoryzacji, co z kolei daje zgodę na korzystanie z niezbędnych zasobów sieciowych. Model ten nie odpowiada jednak na pytanie o wiarygodność ochrony informacji, gdyż z jednej strony użytkownik nie może przesłać swojego hasła do serwera identyfikującego przez sieć, a z drugiej uprawnienia dostępu do usług w sieci ...



VPN to protokół tunelowania punkt-punkt (PPTP). Został opracowany przez 3Com i Microsoft w celu zapewnienia bezpiecznego zdalnego dostępu do sieci korporacyjnych przez Internet. PPTP wykorzystuje istniejące otwarte standardy TCP/IP iw dużym stopniu opiera się na starszym protokole PPP typu punkt-punkt. W praktyce PPP pozostaje tak ...

ANDRIEJ PLATONOV

Budowanie bezpiecznej sieci bezprzewodowej: WPA-Enterprise, 802.1x EAP-TLS

istnieje dobre sto klauzule niepewności sieci bezprzewodowe... Co więcej, wiele jest zupełnie identycznych i bezużytecznych: mówią, że WEP jest zły, że adresy MAC można łatwo zmienić, a na koniec piszą: „Jest tylko jedno wyjście i zbawienie. Musisz użyć WPA.” I o to chodzi. Ten materiał zawiera dokładnie to, co chciałeś usłyszeć po „kropce” – praktyczny przewodnik po organizacji dobrze zabezpieczonej sieci bezprzewodowej.

Bezpieczne i niebezpieczne Wi-Fi

Dziś staje się oczywiste, że pomimo wszystkich problemów związanych z bezpieczeństwem, niezawodnością i złożonością działania, rozwiązania bezprzewodowe z rodziny 802.11a/b/g stały się jednak integralną częścią infrastruktury wielu sieci korporacyjnych, domowych, a nawet operatorskich. Dzieje się tak częściowo dlatego, że większość tych problemów należy już do przeszłości w dzisiejszym rozwoju Wi-Fi. Sieci bezprzewodowe pod każdym względem stały się znacznie inteligentniejsze i szybsze: pojawił się QoS, inteligentne anteny (technologia MIMO), rzeczywiste prędkości osiągnęły 40 Mb/s (na przykład technologie SuperG, SuperAG firmy Atheros). Poza tym duże zmiany zaszły w zestawie technologii zapewniających bezpieczeństwo sieci bezprzewodowych. Porozmawiajmy o tym bardziej szczegółowo.

W czasach, gdy Wi-Fi było tylko dla elity, do ochrony sieci bezprzewodowych stosowano szyfrowanie WEP i filtry MAC. Wszystko to szybko stało się niewystarczające, WEP uznano za niepewny ze względu na statyczny charakter kluczy szyfrujących i brak mechanizmów uwierzytelniania, filtry MAC również nie zapewniały specjalnego bezpieczeństwa. Opracowanie nowego Standard IEEE 802.11i, który został zaprojektowany w celu rozwiązania wszystkich palących problemów związanych z bezpieczeństwem. W połowie drogi do 802.11i pod ogólną nazwą WPA (Wi-Fi Protected Access) pojawił się zestaw technologii – część jeszcze nie gotowego standardu 802.11i. WPA zawiera środki do uwierzytelniania użytkowników, szyfrowania za pomocą dynamicznych kluczy WEP (TKIP/MIC). Potem wreszcie ukończono 802.11i i narodziło się WPA2. Do wszystkich powyższych dodano obsługę silniejszego szyfrowania AES (Advanced Encryption Standard), które działa w połączeniu z protokołem bezpieczeństwa CCMP (Counter with Cipher Block Chaining Message Authentication Code Protocol - jest to bardziej zaawansowany odpowiednik TKIP w WPA ). WPA2 stopniowo zaczęło pojawiać się w nowych modelach punktów dostępowych (np. D-Link DWL-3200AP), ale na razie jest raczej egzotyczne. Wszystkie produkty obsługujące WPA2 są wstecznie kompatybilne ze sprzętem obsługującym WPA.

Zarówno WPA, jak i WPA2 obejmują zaawansowaną kontrolę dostępu bezprzewodowego w oparciu o standard IEEE 802.1x. Architektura 802.1x wykorzystuje kilka wymaganych bramek logicznych:

  • Klient. Klientem jest Suplikant - program na komputerze klienckim, który kontroluje proces uwierzytelniania.
  • Uwierzytelniający. Jest to punkt dostępowy, który działa jako pośrednik między klientem a serwerem uwierzytelniającym. Przełącznik przewodowy może również pełnić funkcję uwierzytelniającą, ponieważ 802.1x jest używany w różnych sieciach.
  • Serwer uwierzytelniania — serwer RADIUS.

IEEE 802.1x umożliwia korzystanie z różnych metod i algorytmów uwierzytelniania. Jest to możliwe dzięki Extensible Authentication Protocol (EAP), w którym „zagnieżdżone” są atrybuty odpowiadające konkretnej metodzie uwierzytelniania. Dlatego istnieje wiele odmian 802.1x EAP: EAP-MD5, EAP-PEAP, EAP-LEAP, EAP-SIM itp. W tym artykule opisano implementację uwierzytelniania w sieci bezprzewodowej w oparciu o certyfikaty cyfrowe - 802.1x EAP- TLS. Ta metoda jest najczęściej stosowana w korporacyjnych sieciach bezprzewodowych i ma dość wysoki stopień bezpieczeństwa. Ponadto EAP-TLS jest czasami jedną z głównych metod ochrony w sieciach dostawców bezprzewodowych.

Uwierzytelnianie 802.1x EAP-TLS

EAP-TLS jest oparty na protokole SSL v3.0, ale w przeciwieństwie do tradycyjnego uwierzytelniania over SSL(na przykład podczas nawiązywania bezpiecznego połączenia http - HTTPS) w EAP-TLS, klient i serwer są wzajemnie uwierzytelniani. Klient (suplikant) i serwer RADIUS muszą obsługiwać metodę uwierzytelniania EAP-TLS; punkt dostępowy musi obsługiwać uwierzytelnianie 802.1x / EAP i nie musi wiedzieć, która metoda uwierzytelnienia jest używana w konkretny przypadek... Poniższy rysunek przedstawia proces uwierzytelniania w sieci bezprzewodowej przy użyciu protokołu EAP-TLS.

Tutaj wypada zakończyć małą liryczną i teoretyczną dygresję, która jest konieczna, aby z grubsza zorientować się, co kryje się w czeluściach bezpiecznej sieci bezprzewodowej. Dalej będzie oferowany praktyczne wdrożenie koncepcje opisane powyżej. Komputer z systemem FreeBSD 5.3 z pakietem FreeRADIUS będzie używany jako serwer RADIUS. Do uporządkowania infrastruktury PKI (Public Key Infrastructure) zostanie wykorzystany pakiet OpenSSL. Cała sieć bezprzewodowa zostanie zbudowana w oparciu o niedrogi i niezawodny sprzęt bezprzewodowy D-Link. Zakłada się, że system Windows XP SP2 jest zainstalowany na komputerach klienckich. w tym system operacyjny jest wbudowany superlicant, a ostatnia aktualizacja firmy Microsoft dodaje obsługę WPA2.

Zainstaluj i skonfiguruj OpenSSL i FreeRADIUS

Zakłada się, że w System FreeBSD 5.3 zainstalowana jest jedna karta sieciowa, zaktualizowany jest zbiór portów, obecny jest Midnight Commander, a sam komputer jest podłączony do Internetu. W dalszej części założymy, że sieć bezprzewodowa jest wdrożona w sieci korporacyjnej o masce 192.168.0.0/24.

Na początek kilka słów o konfiguracji sieci bezprzewodowej, a następnie podamy przykład konfiguracji D-Link DWL-2100AP w celu zapewnienia interakcji z serwerem RADIUS.

Wewnątrzbiurowa sieć bezprzewodowa zwykle składa się z kilku punktów dostępowych (cały zasięg jest podzielony na małe komórki), które są podłączone do przewodowego przełącznika. Często do budowy sieci WLAN przełączniki z wbudowanym Wsparcie zasilania przez Ethernet (802.3af) na portach (na przykład D-Link DES-1316K). Z ich pomocą wygodnie jest zasilać punkty dostępowe rozsiane po całym biurze. Punkty znajdujące się w pobliżu są dostrojone do kanałów o nienakładającym się zasięgu, aby nie kolidowały ze sobą. W paśmie 2,4 GHz, w którym pracuje sprzęt 802.11b/g, dostępne są 3 nienakładające się kanały dla sprzętu z 11 kanałami oraz 4 nienakładające się kanały dla sprzętu w którym można wybrać 13 kanałów (szerokopasmowy sygnał dostępu punkt zajmuje 3 kanały zakresu). Punkty dostępowe D-Link DWL-2100AP i DWL-2700AP można dostroić do dowolnego z 13 kanałów, dodatkowo można włączyć funkcję automatycznego dostrajania do pustego kanału. Więc zrobimy to.

Jeśli sieć ma abonentów mobilnych które poruszają się po całym obszarze zasięgu można ustawić wszystkie punkty o tej samej nazwie sieci bezprzewodowej - SSID, wówczas abonent automatycznie połączy się z nowym punktem w przypadku utraty połączenia z poprzednim. W takim przypadku zostanie ponownie uwierzytelniony, co w zależności od suplikanta zajmie od kilku sekund lub więcej. W ten sposób realizowany jest najprostszy nieinteligentny roaming w sieci. Inna opcja: jeśli każdy punkt ma swój własny identyfikator SSID, możesz skonfigurować kilka profili bezprzewodowych we właściwościach połączenie bezprzewodowe i w tym samym miejscu zaznacz opcję „połącz z dowolnym dostępna sieć”. Tak więc, jeśli połączenie zostanie utracone, klient połączy się z nowym punktem.

Konfigurujemy DWL-2100AP do współpracy z RADIUS.

  • Przechodzimy do interfejsu internetowego punktu dostępowego (jak to zrobić, jest to napisane w instrukcji punktu), natychmiast zmieniamy domyślne hasło w zakładce NARZĘDZIA / ADMIN /.
  • W zakładce HOME/LAN przypisz do punktu dostępowego adres IP, który został ustawiony w client.conf: 192.168.0.220.

  • W zakładce HOME / WIRELESS robimy wszystko jak pokazano na ryc. 3; w polu „Radius Secret” podaj hasło odpowiadające temu punktowi w customers.conf (podaliśmy „12345”).

Pozostałe punkty dostępowe są skonfigurowane w ten sam sposób, tylko będą miały różne adresy IP, kanały (jeśli są ustawione ręcznie), a także wartość pola "Radius Secret".

Tworzymy certyfikaty

Najpierw kilka ogólnych słów o tym, czym jest PKI. Jest to rodzaj infrastruktury, której każdy podmiot posiada unikalny certyfikat cyfrowy, potwierdzający jego tożsamość; między innymi certyfikat cyfrowy zawiera klucz prywatny. Zaszyfrowane za jego pomocą wiadomości można odszyfrować, znając odpowiedni klucz publiczny. I odwrotnie, wiadomości zaszyfrowane kluczem publicznym można odszyfrować tylko przy użyciu klucza prywatnego. Każdy podmiot PKI ma klucz publiczny i prywatny.

Podmiotem PKI może być albo komputer użytkownika, albo PDA, albo dowolny inny element infrastruktury sieciowej - router, serwer WWW, a nawet serwer RADIUS, co ma miejsce w naszym przypadku. Na czele tego całego systemu stoi główny urząd CA (Certificate Autorytet), zakłada się, że wszyscy mu ufają i wszyscy go znają – zajmuje się podpisywaniem certyfikatów (zaświadczających, że posiadaczem certyfikatu jest rzeczywiście ten, za kogo się podaje ). Wspomagają go służby specjalne zajmujące się przyjmowaniem wniosków o wydanie zaświadczeń i ich wydawaniem; numery wszystkich wydanych i cofniętych zaświadczeń przechowywane są w specjalnym rejestrze. W rzeczywistości cała ta pozornie duża farma mieści się na jednym komputerze, a jedna osoba z łatwością może nią zarządzać.

Do tworzenia certyfikatów użyjemy skryptów dołączonych do FreeRADIUS.

  • Najpierw stworzymy własne CA – do tego będziemy musieli wygenerować podpis cyfrowy, który będzie podpisywał wszystkie wystawione przez niego certyfikaty, a także klucz publiczny.
  • Następnie stworzymy certyfikat serwera, zainstalujemy go na RADIUS.
  • I na koniec wygenerujemy certyfikaty do instalacji na komputerach klienckich.

Utwórz katalog /usr/local/etc/raddb/CA, skopiuj tam plik CA.all i plik xpextensions z folderu /usr/ports/net/freeradius/work/freeradius-1.0.2/scripts/. CA.all to interaktywny skrypt, który generuje certyfikaty CA, klienta i serwera. Xpextensions to plik zawierający specjalne klucze „Extended Key Usage” firmy Microsoft, które są wymagane, aby EAP-TLS działał z systemami Windows.

Otwórz plik CA.all:

  • w linii 1 poprawimy ścieżkę - powinna wyglądać tak:

SSL = / usr / lokalny / openssl

  • w linii 32 poprawiamy ścieżkę - powinna wyglądać tak:

echo “newreq.pem” | /usr/local/openssl/ssl/misc/CA.pl -newca

Skopiuj CA.all do pliku CA_users.all. Następnie otwieramy ostatnią i zostawiamy tekst od linii 48 do 64, usuwamy pozostałe linie - reszta to sekcja CA.all, w której generowane są certyfikaty klienta. Będzie używany wielokrotnie, więc wygodnie jest rozdzielić go na osobny skrypt. Otwórz CA.all, usuń z niego wiersze od 48 do 64 - wszystko, co zostało wybrane w osobnym skrypcie i zapisz.

Uwaga: pliki CA.all i CA_users.all - zawierają tajne hasło „cokolwiek”, które jest używane jako dodatkowe lekarstwo zapewnienie bezpieczeństwa przy wydawaniu certyfikatów i ich unieważnianiu. Osoba, która nie zna tego wyrażenia, nie będzie mogła podpisać ani unieważnić certyfikatu. W zasadzie poza operatorem CA nikt inny nie będzie tego potrzebował. Aby zwiększyć bezpieczeństwo, musisz zastąpić wszystkie słowa „cokolwiek” w skryptach CA.all i CA_users.all swoim hasłem. Musi być również wpisany w eap.conf w linii "private_key_password = cokolwiek". W dalszej części przyjmę, że pozostawiliśmy hasło „cokolwiek” wszędzie bez zmian. Wprowadzimy go tworząc certyfikaty klienta i serwera, a także je odwołując.

Utwórz CA i certyfikat serwera

Uruchom CA.all. Pierwszą rzeczą, którą generuje interaktywnie, jest certyfikat główny CA (cacert.pem), para otwartych prywatny klucz(cakey.pem), klucz publiczny certyfikatu głównego w formacie PKCS #12 (root.der), następnie certyfikat serwera (cert_srv.pem), który zainstalujemy na RADIUSIE. Wszystkie wymienione pliki (a nawet niektóre niewymienione) pojawią się w folderze CA.

Utwórz urząd certyfikacji (będzie nazywał się „Administrator”):

Nazwa jednostki organizacyjnej (np. sekcja): megafirma.central.biuro

Nazwa zwyczajowa (np. TWOJE imię): Administrator

Utwórz certyfikat dla RADIUS:

Nazwa organizacji (np. firma): MegaCompany Co. Sp. z o.o.

Nazwa jednostki organizacyjnej (np. sekcja): RADIUS

Nazwa zwyczajowa (np. TWOJE imię): RADIUS

Adres e-mail: [e-mail chroniony]

Skopiuj pliki /raddb/CA/cert_srv.pem i /raddb/CA/demoCA/cacert.pem do folderu /raddb/certs - zainstaluj certyfikaty na serwerze RADIUS.

Tworzymy certyfikaty klienta

Do generowania certyfikatów klienta używamy naszego skryptu CA_users.all. Na przykład utwórzmy certyfikat dla użytkownika 1:

  • Otwórz CA_users.all, zamień wszystkie słowa cert-clt.* W nim na user1.* (Jest to konieczne, aby odróżnić po nazwie pliku, który certyfikat jest przeznaczony dla którego użytkownika, w przeciwnym razie zostanie utworzony certyfikat z tym samym plikiem nazwa ( cert-clt. *) Stworzymy kilka certyfikatów na raz dla user1, user2,3,4,5). Alternatywnie możesz użyć opisowych nazw plików zawierających certyfikat, na przykład SergeyPetrov, IvanIvanov itp.
  • Hasło - "cokolwiek" w wierszach 3, 4 zostaje zastąpione prawdziwym, jak pokazano na listingu:

Plik CA_users.all

1 | openssl req -new -keyout newreq.pem -out newreq.pem -days 730 -passin pass: cokolwiek -passout pass: cokolwiek

2 | openssl ca -policy policy_anything -out newcert.pem -passin pass: cokolwiek -key cokolwiek -extensions xpclient_ext \

Extfile xpextensions -infiles newreq.pem

3 | openssl pkcs12 -export -in newcert.pem -inkey newreq.pem -out user1.p12 -clcerts -passin pass: cokolwiek -passout pass: user1_password

4 | openssl pkcs12 -in user1.p12 -out user1.pem -passin pass: user1_password -passout pass: user1_password

5 | openssl x509 -inform PEM -outform DER -in user1.pem -out user1.der

Na przykład wpisujemy "user1_password" - to hasło zostanie poproszone podczas instalacji certyfikatu na komputerze użytkownika, należy je zapamiętać. Jest to, jak już wspomniałem, dodatkowy sposób uwierzytelnienia czynności związanych z wydaniem certyfikatu.

  • Zapisujemy i uruchamiamy skrypt, otrzymujemy trzy pliki user1.der, user1.pem, user1.p12 - ten ostatni to certyfikat w formacie PKCS#12 do instalacji na kliencie Windows.

Uruchom zmodyfikowany CA_users.all. Utwórz certyfikat dla użytkownika 1:

Nazwa kraju (kod 2-literowy): RU

Nazwa województwa lub województwa (pełna nazwa): Mosków

Nazwa miejscowości (np. miasto): Moskwa

Nazwa organizacji (np. firma): MegaCompany Co. Sp. z o.o.

Nazwa zwyczajowa (np. TWOJE imię): Andrey Ivanov

Adres e-mail: [e-mail chroniony]

Wprowadź następujące „dodatkowe” atrybuty

do wysłania wraz z żądaniem certyfikatu

Hasło-wyzwanie: cokolwiek

Opcjonalna nazwa firmy: (naciśnij enter)

Teraz generujemy hasło dla użytkownika 2:

  • Otwórz CA_users.all, zastąp użytkownika 1. * W nim użytkownik 2. *
  • Zamień hasło „user1_password” na „user2_password” (nie zapomnij go zapamiętać, aby móc później zainstalować certyfikat).
  • Zapisujemy i uruchamiamy skrypt - otrzymujemy plik user2.p12.

Utwórz certyfikat dla użytkownika 2:

Nazwa kraju (kod 2-literowy): RU

Nazwa stanu lub prowincji (pełna nazwa): Moskwa

Nazwa miejscowości (np. miasto): Moskwa

Nazwa organizacji (np. firma): MegaCompany Co. Sp. z o.o.

Nazwa jednostki organizacyjnej (np. sekcja): Dział IT

Nazwa zwyczajowa (np. TWOJE imię): Michaił Iwanow

Adres e-mail: [e-mail chroniony]

Wprowadź następujące „dodatkowe” atrybuty

do wysłania wraz z żądaniem certyfikatu

Hasło-wyzwanie: cokolwiek

Opcjonalna nazwa firmy:

Każdy certyfikat zapisujemy na osobnej dyskietce, zapisujemy na nim hasło instalacyjne („userX_password”), zapisujemy klucz publiczny root.der na tej samej dyskietce (jest taki sam dla wszystkich) i wydajemy go użytkownikowi. Użytkownik instaluje certyfikat na swoim komputerze (więcej o tym później) i umieszcza dyskietkę w sejfie.

Instalowanie certyfikatów na komputerze klienckim

Tak więc użytkownik (powiedzmy, że nazwaliśmy go user1) otrzymał dyskietkę, której zawartością są dwa pliki root.der i user1.p12. Na dyskietce zapisane jest również hasło „user1_password”.

Zacznijmy od instalacji root.der

  • kliknij dwukrotnie plik root.der;
  • kliknij „Zainstaluj certyfikat”;
  • Kliknij Następny";
  • wybierz opcję „Umieść wszystkie certyfikaty w następującym sklepie”, kliknij „Przeglądaj” (rys. 4);

  • wybierz „Zaufane główne urzędy certyfikacji”, kliknij „OK” (rys. 5);

  • kliknij „Dalej”, a następnie „Zakończ”;
  • pojawia się ostrzeżenie dotyczące bezpieczeństwa: „Nie można zweryfikować, czy certyfikat należy do„ Administratora…. Zainstalować ten certyfikat? " naciskamy „Tak”;
  • zostanie wyświetlony komunikat „Import zakończony pomyślnie.”, kliknij dwukrotnie przycisk „OK”.

Zainstaluj certyfikat użytkownika user1.p12.

  • Kliknij dwukrotnie plik user1.p12, kliknij dwa razy „Dalej”.

  • Tutaj musisz podać hasło, które ustawiliśmy dla certyfikatu user1. W naszym przykładzie jest to "user1_pass-word" (lub cokolwiek wymyślisz), jest to konwencjonalnie zapisane na dyskietce z certyfikatem. Wpisz go i kliknij „Dalej”.
  • Kliknij „Dalej”, a następnie „Zakończ” - zostanie wyświetlony komunikat „Import pomyślnie zakończony”, kliknij „OK”.

Uwaga: wszystkie zainstalowane przez nas certyfikaty można wyświetlić w konsoli MMC za pomocą przystawki Certyfikaty -> Bieżący użytkownik (osobisty -> Certyfikaty).

Konfiguracja sieci bezprzewodowej Adaptery D-Link DWL-G650 (DWL-G520 / DWL-G120) i wnioskodawca

D-Link DWL-G650 to adapter CardBus, DWL-G520 to adapter PCI, a DWL-G120 to adapter USB. Są skonfigurowane całkowicie identycznie. Spójrzmy na procedurę na przykładzie DWL-G650.

  • Wyjmujemy adapter z pudełka, odkładamy na bok; zainstaluj sterowniki z dołączonego dysku. Po zainstalowaniu sterownika usuwamy z uruchamiania natywne narzędzie do konfiguracji karty, ponieważ do tych celów użyjemy usługi konfiguracji sprzętu bezprzewodowego wbudowanej w system Windows XP. Wkładamy adapter do komputera.
  • Klikamy raz lewym przyciskiem myszy na przekreślonej ikonie połączenia bezprzewodowego (w zasobniku systemowym), a następnie wybieramy element „Zmień Dodatkowe opcje„(ryc. 7).

  • Wybierz zakładkę „Sieci bezprzewodowe”, wybierz tam naszą sieć bezprzewodową (megacompany_DWL-2100AP), przejdź do „Właściwości” (rys. 8).

  • W zakładce „Połączenia” w menu rozwijanym „Szyfrowanie danych” wybierz protokół TKIP. Przechodzimy do zakładki „Uwierzytelnianie” (ryc. 9).

  • Tutaj pozostawiamy wszystko bez zmian, przejdź do „Właściwości” EAP (ryc. 10).

  • Ustawiamy przełączniki, jak pokazano na ryc. 11, w oknie „Trusted Root Certification Authorities” wybierz nasz CA – będzie się nazywał Administrator (jeśli wszystko zostanie zrobione dokładnie tak, jak opisano w sekcji „Tworzenie certyfikatów”).

  • Na wszelki wypadek kliknij „Wyświetl certyfikat” i sprawdź, kto jest dostawcą certyfikatu. Upewniamy się, że jest to nasz korporacyjny „Administrator” CA, który stworzyliśmy (rys. 12).

  • Kliknij „OK”, to jest ustawienie karta sieciowa i suplikant jest kompletny.

Sprawdzamy pracę WPA-Enterprise w naszej sieci

Teraz nadszedł długo oczekiwany czas na przetestowanie wszystkich działających ustawień. Uruchom FreeRADIUS w trybie debugowania za pomocą polecenia „radiusd -X” i zobacz na ekranie:

promień # zaokrąglony –X

Uruchamianie - odczyt plików konfiguracyjnych...

reread_config: czytanie promienia.conf

Na końcu są linie:

Nasłuchiwanie po uwierzytelnieniu 192.168.0.222:1812

Nasłuchiwanie po uwierzytelnieniu 192.168.0.222:1813

Nasłuchiwanie po uwierzytelnieniu 192.168.0.222:1814

Gotowy do przetwarzania wniosków.

Cóż, lub w najgorszym przypadku jest napisane, dlaczego FreeRADIUS się nie uruchomił - nie rozpaczaj, jeśli tak się stanie. Musisz dokładnie przestudiować komunikat o błędzie i sprawdzić wszystkie ustawienia.

Kliknij ikonę połączenia sieci bezprzewodowej, a następnie sieć bezprzewodową o nazwie „mega-company_DWL-2100AP”. Następnie zwracamy wzrok na monitor, na którym działa radiusd i wyświetlany jest proces udanego uwierzytelnienia (nie pokażemy całego wyjścia serwera, bo jest dość duży, podamy tylko wiersze początkowe i końcowe).

Początek wypłaty:

rad_recv: pakiet Access-Request z hosta 192.168.0.220:1044, id = 0, długość = 224

Autoryzacja wiadomości = 0x

Typ usługi = Użytkownik w ramce

Nazwa użytkownika = "Andrey Ivanov"

Oprawione-MTU = 1488

Called-Station-Id = "00-11-95-8E-BD-30: megacompany_DWL-2100AP"

Identyfikator-stacji wywołującej = "00-0D-88-88-D5-46"

Identyfikator NAS = „Punkt dostępu D-Link”

Koniec wypłaty:

Nazwa użytkownika = "Andrey Ivanov"

Zakończono żądanie 4

Przechodzę do następnej prośby

Budzenie się za 6 sekund...

Spacer po całej liście żądań ---

Żądanie czyszczenia 0 ID 0 ze znacznikiem czasu 4294d303

Żądanie czyszczenia 1, ID 1 z sygnaturą czasową 4294d303

Żądanie czyszczenia 2 ID 2 z sygnaturą czasową 4294d303

Żądanie czyszczenia 3 ID 3 z sygnaturą czasową 4294d303

Żądanie czyszczenia 4 ID 4 z sygnaturą czasową 4294d303

Nic do roboty. Śpi, dopóki nie zobaczymy prośby.

Uwierzytelnianie powiodło się, komputer uzyskuje adres IP z serwera DHCP i może teraz pracować w sieci bezprzewodowej. Nawiasem mówiąc, jeśli na komputerze jest zainstalowanych kilka certyfikatów klienta (tak też się dzieje), superlikant zaproponuje wybór, którego użyć do konkretnego uwierzytelnienia.

Odwoływanie certyfikatów

Wydawałoby się, że wszystko jest już jasne – zbudowano już bezpieczną sieć bezprzewodową, ale w rzeczywistości jest jeszcze jeden ważny aspekt, który teraz rozważymy. Załóżmy, że chcesz odmówić dostępu do sieci bezprzewodowej jednemu z komputerów (na przykład osobistemu laptopowi jednego z pracowników), na którym wcześniej zainstalowaliśmy certyfikat. Przyczyny mogą być najczęstsze – zwolnienie pracownika, redukcja itp. Aby rozwiązać ten problem, należy zaznaczyć w rejestrze (/usr/local/etc/raddb/CA/demoCA/index.txt), który przechowuje lista wszystkich podpisanych certyfikatów, certyfikat użytkownika, któremu chcemy odmówić dostępu do sieci, jako unieważniony. Następnie należy utworzyć (lub zaktualizować, jeśli już istnieje) listę unieważnionych certyfikatów (CRL - Certificate Revocation List). A następnie skonfiguruj RADIUS tak, aby przy uwierzytelnianiu użytkowników odwoływał się do tej listy i sprawdzał, czy znajduje się na niej prezentowany certyfikat klienta.

W naszych poprzednich eksperymentach stworzyliśmy dwa certyfikaty dla użytkownika1 (Andrey Ivanov) i użytkownika2 (Michaił Ivanov). Na przykład odmówmy temu drugiemu dostęp do sieci bezprzewodowej. Przejdźmy przez kolejne trzy kroki.

Krok 1

Certyfikat user2 oznaczamy w rejestrze jako unieważniony: będąc w /usr/local/etc/raddb/CA wydajemy polecenie:

promień # openssl ca -revoke user2.pem

943: błąd: 0E06D06C: procedury pliku konfiguracyjnego: NCONF_get_string: brak wartości:

Odwołanie certyfikatu D734AD0E8047BD8F.

OpenSSL przeklina, ale robi to, czego chcemy. Podczas wykonywania polecenia musisz wprowadzić tajne hasło („cokolwiek”). W takim przypadku w /raddb/CA/demoCA/index.txt certyfikat zostanie oznaczony jako unieważniony, co możemy zweryfikować patrząc na ten plik... Litera „R” pojawia się obok wpisu odpowiadającego unieważnionemu certyfikatowi.

Krok 2

Utwórz listę odwołania (CRL). Jeśli już istnieje, zostanie zaktualizowany. Będąc w /usr/local/etc/raddb/CA podajemy polecenie:

promień # openssl ca -gencrl -out ca.crl

Korzystanie z konfiguracji z /etc/ssl/openssl.cnf

963: błąd: 0E06D06C: procedury pliku konfiguracyjnego: NCONF_get_string: brak wartości:

/usr/src/secure/lib/libcrypto/../../../crypto/openssl/crypto/conf/conf_lib.c:

329: group = CA_default name = unikalny_temat

Wprowadź frazę hasła dla ./demoCA/private/cakey.pem:

DEBUGOWANIE: unique_subject = "tak"

Ponownie, podczas wykonywania polecenia, musisz podać tajne hasło „cokolwiek”. W rezultacie plik ca.crl pojawia się w katalogu /raddb/CA/ - jest to lista odwołań. Wewnątrz wygląda to na szyfrowanie, możesz to zobaczyć w ten sposób:

promień # openssl crl -in ca.crl -text –noout

Lista unieważnionych certyfikatów (CRL):

Wersja 1 (0x0)

Emitent: / C = RU / ST = Mosków / L = Mosków / O = MegaCompany Co. Ltd./OU=megafirma.central.office/CN=Administrator/ [e-mail chroniony]

Ostatnia aktualizacja: 27 maja 23:33:19 2005 GMT

Następna aktualizacja: 26 czerwca 23:33:19 2005 GMT

Unieważnione certyfikaty:

Numer seryjny: D734AD0E8047BD8D

Data odwołania: 27 maja 23:13:16 2005 GMT

Algorytm podpisu: md5WithRSAEncryption

D4: 22: d6: a3: b7: 70: 0e: 77: cd: d0: e3: 73: c6: 56: a7: 9d: b2: d5:

0a: e1: 23: ac: 29: 5f: 52: b0: 69: c8: 88: 2f: 98:1c: d6: be: 23: b1:

B9: ea: 5a: a7: 9b: fe: d3: f7: 2e: a9: a8: bc: 32: d5: e9: 64: 06: c4:

91: 53: 37: 97: fa: 32: 3e: df: 1a: 5b: e9: fd: 95: e0: 0d: 35: a7: ac:

11: c2: fe: 32: 4e: 1b: 29: c2: 1b: 21: f8: 99: cd: 4b: 9f: f5: 8a: 71:

B8: c9: 02: df: 50: e6: c1: ef: 6b: e4: dc: f7: 68: da: ce: 8e: 1d: 60:

69: 48: reklama:

Widzimy w nim jeden unieważniony certyfikat o numerze seryjnym D734AD0E8047BD8D (aka user2, czyli Michaił Iwanow).

Zauważ, że ważną właściwością listy CRL jest jej data wygaśnięcia. Musi zostać zaktualizowany nie później niż data wygaśnięcia (aktualizacja: 26 czerwca 23:33:19 2005 GMT). Datę ważności listy CRL można ustawić w pliku openssl.cnf (mieliśmy default_crl_days = 30).

Krok 3

Łączymy listę recenzji z FreeRADIUS:

  • skopiuj plik /raddb/CA/ca.crl do /raddb/certs/ (nad starym ca.crl, jeśli tam jest);
  • przejdź do /raddb/certs/ i przyklej ca.crl do pliku cacert.pem:

kot cacert.pem ca.crl> ca.pem

  • wprowadź drobne zmiany w sekcji pliku TLS /raddb/eap.conf

# tutaj zmieniliśmy cacert.pem na ca.pem

CA_file = $ (raddbdir) /certs/ca.pem

CA_path = $ (raddbdir) / certyfikaty #dodaj tę linię

check_crl = tak # i ta linia

Spróbujmy uwierzytelnić komputer za pomocą certyfikatu user2 w sieci. Uwierzytelnianie kończy się niepowodzeniem, a użytkownik 1 swobodnie wchodzi do sieci bezprzewodowej, zgodnie z wymaganiami.

Teraz bezpieczną sieć bezprzewodową można uznać za zbudowaną.

EAP (Extensible Authentication Protocol)

EAP (Extensible Authentication Protocol) to rozszerzenie protokołu Point-to-Point (PPP); opiera się na nim kilka metod uwierzytelniania, umożliwiających wymianę danych uwierzytelniających i innych informacji o dowolnym rozmiarze. EAP został zaprojektowany z myślą o rosnącym zapotrzebowaniu na narzędzia uwierzytelniające przy użyciu szerszej gamy urządzeń zabezpieczających; oferuje standardową architekturę do obsługi dodatkowych metod uwierzytelniania PPP.

EAP może obsługiwać wiele algorytmów uwierzytelniania - tzw. typy EAP, w tym generatory kodów dostępu, haseł jednorazowych, klucze publiczne przy użyciu kart inteligentnych, certyfikatów itp. Protokół EAP, w połączeniu z silnymi typami EAP, jest kluczowym elementem technologii połączeń bezpiecznej wirtualnej sieci prywatnej (VPN). Silne typy EAP, takie jak te oparte na certyfikatach, zapewniają lepszą ochronę przed atakami typu brute-force lub brute-force niż inne protokoły uwierzytelniania oparte na hasłach, takie jak CHAP i MS-CHAP.

Aby dowiedzieć się, czy Twoja organizacja korzysta z dowolnego typu protokołu EAP, skontaktuj się z administratorem sieci.

W systemie Windows XP istnieje wsparcie dla dwóch typów EAP:

  • EAP-MD5 CHAP (analogicznie do protokołu uwierzytelniania CHAP);
  • EAP-TLS (używany do uwierzytelniania certyfikatu użytkownika).

EAP-TLS to metoda wzajemnego uwierzytelniania, w której zarówno klient, jak i serwer muszą przedstawić dowód swojej tożsamości. Podczas sesji EAP-TLS klient dostępu zdalnego wysyła swój certyfikat użytkownika, a serwer dostępu zdalnego wysyła certyfikat swojego komputera. Jeśli co najmniej jeden z tych certyfikatów nie zostanie przesłany lub jest nieważny, połączenie zostaje przerwane.

Notatki (edytuj)

  • Uwierzytelnianie EAP-TLS generuje współdzielone tajne klucze szyfrowania dla algorytmu Microsoft Point-to-Point Encryption (MPPE).

Jeśli znajdziesz błąd w tekście, zaznacz go myszą i naciśnij kombinację klawiszy Ctrl + ENTER, określ poprawny tekst bez błędu.

Podczas wdrażania sieci bezprzewodowych w domu lub małym biurze zwykle używana jest opcja protokołu bezpieczeństwa WPA. klucze współdzielone- WPA-PSK (Pre Shared Key), zwany także trybem WPA-Personal. Używa klucza statycznego podobnego do WEP. Podczas korzystania z WPA-PSK w ustawieniach i profilach AP połączenie bezprzewodowe Klienci określają hasło o długości od 8 do 63 drukowalnych znaków ASCII. Podczas łączenia użytkownik będzie musiał podać to hasło i jeśli hasła pasują do wpisów w bazie danych, otrzyma pozwolenie na dostęp do sieci.

W trybie WPA-EAP (Extensible Authentication Protocol), zwanym również trybem WPA-Enterprise, żądania uwierzytelnienia są przekazywane do wewnętrznego serwera RADIUS. Usługa Network Policy Server (NPS) zapewnia uwierzytelnianie RADUIS na serwerach. Serwer NPS może przekazywać żądania uwierzytelnienia do kontrolera domeny, umożliwiając bezpiecznym sieciom bezprzewodowym WPA-EAP uwierzytelnianie kontrolerów domeny bez wprowadzania klucza przez użytkowników.

WPA-EAP zapewnia bardzo elastyczne uwierzytelnianie. Na przykład można skonfigurować użytkownika do łączenia się z bezpieczną siecią produkcyjną WPA-Enterprise za pomocą karty inteligentnej. Ponieważ WPA-EAP nie używa klucza statycznego, ten tryb bezpieczeństwa jest łatwiejszy do zarządzania, ponieważ nie ma potrzeby zmiany klucza, jeśli haker go wykryje. Wiele bezprzewodowych punktów dostępowych może używać jednego centralnego serwera do uwierzytelniania. Ponadto ten tryb bezpieczeństwa jest znacznie trudniejszy do złamania niż WEP lub WPA-PSK. szyfrowanie sieci bezprzewodowej kryptograficzne

Mechanizmy szyfrowania stosowane dla WPA-EAP i WPA-PSK są identyczne. Jedyna różnica w przypadku WPA-PSK polega na tym, że uwierzytelnianie odbywa się za pomocą hasła, a nie certyfikatu użytkownika.

Zalety i wady

Przewaga WPA nad WEP to:

  • 1. Zaawansowany schemat szyfrowania danych RC4 oparty na protokole TKIP (Temporal Key Integrity Protocol).
  • 2. Ulepszone mechanizmy kontroli dostępu - obowiązkowe uwierzytelnianie 802.1x przez EAP.
  • 3. model scentralizowanego zarządzania bezpieczeństwem i możliwość integracji z istniejącymi firmowymi schematami uwierzytelniania.
  • 4. Możliwość łatwej instalacji dla użytkowników domowych, którzy mogą złożyć wniosek specjalne traktowanie który automatyzuje funkcje konfiguracji zabezpieczeń WPA.

Wśród wad są:

  • 1. WPA jest mniej bezpieczne niż WPA2.
  • 2.istnienie podatności (opisane poniżej),
  • 3. Może to również obejmować fakt, że do pracy z protokołem bezpieczeństwa WPA konieczne jest, aby wszystkie urządzenia podłączone do sieci posiadały jego obsługę.

Wady WPA-PSK - klucz statyczny można złamać za pomocą ataków brute force. Ponadto klucze statyczne są bardzo trudne do zarządzania w środowisku produkcyjnym. Jeśli pojedynczy komputer skonfigurowany z takim kluczem zostanie naruszony, klucz będzie musiał zostać zmieniony w każdym bezprzewodowym punkcie dostępowym.

Źródło: Bashmakov A.V., Notatki do wykładu „Bezpieczeństwo sieci bezprzewodowych”

Znane luki w zabezpieczeniach

Metoda Beck-Tevs

6 listopada 2008 na konferencji PacSec dwóch niemieckich studentów, Martin Beck z Drezna i Erik Thevs z Darmstadt, zaprezentowało sposób na złamanie klucza WPA TKIP w 12-15 minut.

TKIP miał kilka cech, które czyniły go w tamtym czasie najbardziej niezawodna ochrona... W szczególności istniała kontrola sekwencji, w której punkt dostępowy odrzucał wszystkie pakiety poza kolejnością. Chroniło to przed tak zwanym „atakem powtórzeniowym”, w którym przesyłanie tych samych danych jest powtarzane w złym zamiarze i wcale nie jest użytecznym „załącznikiem”. TKIP zawierał również 64-bitową kontrolę integralności pakietów MIC o nazwie kodowej MICHAEL. TKIP oznaczał między innymi transmisję każdego pakietu z unikalnym kluczem szyfrującym.

Ponieważ TKIP powstał z uwzględnieniem możliwości aktualizacji oprogramowania sprzętu, który wcześniej obsługiwał tylko WEP, zastosowano w nim szyfr RC4, a także 4 bajty do kontroli integralności (ICV). Metoda ataku zaproponowana przez Becka i Tevsa w raporcie działa z uwzględnieniem niektórych założeń podanych przez autorów: zaatakowana sieć wykorzystuje protokół TKIP do szyfrowania ruchu między punktem dostępowym a klientami; sieć używa IPv4 do adresowania ze znanym zakresem adresów, takim jak 192.168.0.X; długi odstęp między zmianami kluczy (3600 sekund na przykładzie autorów metody); QoS (Quality of Service) jest aktywny.

Atakujący „nasłuchuje” ruchu, dopóki nie znajdzie żądania lub odpowiedzi ARP (protokół ARP jest używany do dopasowania adresów IP i MAC w sieci); takie pakiety można łatwo obliczyć na podstawie ich charakterystycznej długości. Haker zna większość zawartości takiego pakietu poza ostatnim bajtem adresu, 8 bajtami MICHAELA i 4 bajtami sumy kontrolnej ICV. MICHAEL i ICV razem tworzą ostatnie 12 bajtów. Haker używa następnie metod (chopchop) do odszyfrowania pozostałych bajtów. TKIP ma dwa sposoby zwalczania tych ataków:

  • 1. Jeżeli klient odbierze pakiet z bitem ICV, jest to uważane za błąd transmisji danych i pakiet jest po cichu „odrzucany”. Jeżeli ICV jest OK, ale weryfikacja MIC się nie powiedzie, wówczas punkt dostępowy otrzymuje odpowiednie powiadomienie, tak zwaną ramkę raportu o niepowodzeniu MIC. Jeśli w ciągu minuty wystąpią więcej niż dwa takie powiadomienia, połączenie zostaje przerwane, a wszystkie klucze są aktualizowane po 60 sekundowej przerwie.
  • 2. Jeżeli pakiet został odebrany poprawnie, to licznik jest aktualizowany na kanale, przez który został odebrany. Gdyby pakiet przychodzący odebrany z błędnym numerem sekwencji, czyli niesprawny, taki pakiet po prostu nie jest przyjmowany.

Znaleziono jednak obejście: haker musiał po prostu przeprowadzić atak na innym kanale QoS niż ten, przez który przeszedł pakiet. Jeśli ostatni bajt adresu został błędnie odgadnięty podczas ataku, pakiet zostanie po prostu „odrzucony”, jeśli został odgadnięty poprawnie, klient wyśle ​​powiadomienie o awarii MIC, ale licznik nie będzie działał. Haker musi odczekać co najmniej 60 sekund między wysyłaniem pakietów, aby nie sprowokować pierwszej opcji obrony. Trochę ponad 12 minut - a do naszej dyspozycji są wartości ataku MIC i ICV. Pozostaje odgadnąć tylko adresy IP punktu i klienta.

Co więcej, otwiera się szerokie pole do eksperymentów. Możliwe jest przekierowanie ruchu za pomocą fałszywych odpowiedzi ARP. Jeśli zapora klienta nie kontroluje ruchu wychodzącego, możesz spróbować nawiązać dwukierunkowe połączenie z klientem, nie otrzymując „odpowiedzi” bezpośrednio, ale przekierowując je przez Internet.

Jako środki zaradcze Beck i Thevs zaproponowali trzy opcje:

  • 1. Ustaw interwał zmiany klucza na 120 sekund lub mniej. W tym okresie haker będzie miał czas na odszyfrowanie tylko części ICV;
  • 2. Wyłącz wysyłanie powiadomienia o awarii MIC;
  • 3. Odrzuć TKIP i przejdź do AES-CCMP.

Metoda Ohigashi-Moriya

Metoda opracowana przez pracownika Hiroshima University Toshihiro Ohigashi i profesora Uniwersytetu Kobe Masakatu Morii opiera się na technologii Beck-Tews. Technologia ta polega na nieznacznym modyfikowaniu pakietów zaszyfrowanych przy użyciu protokołu TKIP (Temporal Key Integrity Protocol) w ramach mechanizmu bezpieczeństwa WPA i wysyłaniu zmodyfikowanych pakietów z powrotem do punktu dostępowego. Wadą metody Beck-Tewes jest to, że jej ukończenie zajmuje od 10 do 15 minut.

Metoda zaproponowana przez Ohigashi i Moriya, podobnie jak technologia Beck-Tewes, wykorzystuje zasadę ataku man-in-the-middle, który polega na zakłócaniu komunikacji między użytkownikami. Ryzyko wykrycia ataku przy takim podejściu jest bardzo duże, więc możliwość skrócenia czasu trwania ataku do 60 sekund jest ogromną zaletą – przynajmniej dla hakerów.

Należy zauważyć, że połączenia WPA korzystające z bezpieczniejszego standardu szyfrowania kluczem AES, a także połączenia WPA2 nie są podatne na te ataki.

Trochę o WPA 2

23 lipca 2010 roku opublikowano informację o luce Hole196 w protokole WPA2. Wykorzystując tę ​​lukę, złośliwy użytkownik zalogowany do sieci może odszyfrować dane innych użytkowników przy użyciu ich klucza prywatnego. Nie jest wymagane łamanie klucza ani brutalna siła (brutalna siła).

Bardziej słusznie byłoby powiedzieć, że protokół bezpieczeństwa WPA2 został zhakowany, tak rozległą lukę odkryli eksperci w bezpieczeństwo sieci z sieci AirTight. Udowodnili, że protokół ochrony danych WPA2, który jest obecnie najbardziej rozpowszechniony w Sieci Wi-Fi, może zostać zhakowany w celu uzyskania jakichkolwiek informacji z takiej sieci. Ponadto eksperci twierdzą, że luka może pomóc hakerom w atakowaniu różnych zasobów przy użyciu możliwości zhakowanej sieci.

Stwierdzono, że wykryta usterka dotyczy wszystkich sieci bezprzewodowych zgodnych ze standardem IEEE802.11 (wersja 2007). Luka otrzymała również własną nazwę - Hole 196.

Luka została odkryta przy użyciu ataku Man-in-the-middle. Osoba zalogowana do takiej sieci i korzystająca z exploita będzie mogła przechwycić i odszyfrować dane przesyłane w sieci. Ponadto, gdy ta „dziura” jest używana, możliwe staje się fałszowanie adresów MAC. W ten sposób informacje mogą być przesyłane do fałszywych systemów klienckich, co pozwala również na wykorzystanie zasobów zhakowanej sieci do atakowania różnych zasobów sieciowych bez większego strachu przed wykryciem.

Sposoby hakowania sieci bezprzewodowych chronionych przez WPA

WPA-TKIP

Luka w protokole WPA-TKIP odkryta przez naukowców i członków zespołu aircrack-ng, Martina Backa i Erica Tuze.

W wyniku wykorzystania luki nie można odzyskać klucza głównego, można jedynie znaleźć klucz użyty do sprawdzenia integralności i strumień kluczy. Na tej podstawie, bez znajomości klucza głównego, możliwe staje się przesyłanie pakietów do sieci. Pakiety są odbierane w podobny sposób jak easside-ng.

Możesz przetestować tę lukę za pomocą narzędzia testowego tkiptun-ng dodanego do aircrack-ng. Wiadomo, że aby przeprowadzić atak, należy zmienić adres MAC karty na adres MAC atakowanego klienta. Ponadto atakowany punkt dostępowy musi obsługiwać QoS lub WMM, używać WPA + TKIP (nie AES), a czas zmiany klucza tymczasowego musi być dłuższy niż 3600 sekund. Jeśli to wszystko jest obecne, możesz uruchomić: # tkiptun-ng -h -a -m 80 -n 100<интерфейс>.

Po pomyślnym wykonaniu możesz uzyskać strumień klucza, za pomocą którego możesz tworzyć pakiety i uruchamiać je w sieci.

Ta usterka nie ma wpływu na WPA2.

Klasyczny hack WPA. Przechwytywanie uścisku dłoni.

Istotą ataku jest wyliczenie wszystkich możliwych kombinacji klucza przed jego zdefiniowaniem. Metoda gwarantuje sukces, ale jeśli klucz jest wystarczająco długi i nie ma go w słownikach, możesz uważać się za chronionym przed tym atakiem. W ten sposób zarówno sieci WPA, jak i WPA2 są pękane, ale tylko w trybie PSK.

Szyfrowanie WPA / WPA2 PSK jest podatne na ataki słownikowe. Aby przeprowadzić ten atak, musisz uzyskać 4-kierunkowe uzgadnianie WPA między klientem Wi-Fi a punktem dostępowym (AP), a także słownik zawierający hasło.

WPA / WPA2 PSK działa w następujący sposób: wywodzi się z klucza przedsesyjnego zwanego Pairwise Transient Key (PTK). Z kolei PTK używa klucza wstępnego i pięciu innych parametrów - SSID, Authenticator Nounce (ANounce), Supplicant Nounce (SNounce), Authenticator MAC-address i Suppliant MAC-address.-client). Ten klucz dodatkowo wykorzystuje szyfrowanie między punktem dostępowym (AP) a klientem Wi-Fi. Atakujący, który w tej chwili podsłuchuje transmisję, może przechwycić wszystkie pięć parametrów. Jedyną rzeczą, której złoczyńca nie posiada, jest klucz wstępny. Klucz wstępny jest uzyskiwany (tworzony) przy użyciu hasła WPA-PSK, które użytkownik wysyła wraz z identyfikatorem SSID. Kombinacja tych dwóch parametrów jest wysyłana przez funkcję wyprowadzania klucza na podstawie hasła (PBKDF2), która generuje 256-bitowy „nowy klucz współdzielony”.

W typowym / typowym ataku słownikowym WPA / WPA2 PSK atakujący użyje słownika wraz z programem (narzędziem). Program wygeneruje 256-bitowy „nowy klucz współdzielony dla każdego hasła i użyje go z innymi parametrami, które zostały opisane przy tworzeniu PTK. PTK zostanie użyty do sprawdzenia kontroli integralności wiadomości (MIC) w jeden z pakietów uzgadniania pasuje, wtedy hasło w słowniku będzie poprawne, w przeciwnym razie na odwrót (niepoprawne).

Ten atak jest wbudowany w pakiet aircrack-ng. Najpierw musisz przechwycić uwierzytelnianie klienta, aby na jego podstawie odzyskać klucz główny. Najłatwiej to zrobić, biegając # airodump-n gi czeka na uwierzytelnienie lub przeprowadzając atak deauthentication # aireplay-ng -0<количество деаутентификаций> ... Po chwili airodump-ng pokaże, że uwierzytelnienie zostało przechwycone i zapisane w pliku. Potem wystarczy biec aircrack-ng<файл аутентификации> i czekaj.

Możesz przyspieszyć ten proces, używając obszernego słownictwa z często używanymi słowami. Pomocne będzie również zastosowanie specjalistycznych mikrokontrolerów lub kart graficznych. Bez tego za dużo możliwe klawisze zajmie zbyt dużo czasu.

Do odparcia takiego ataku można użyć dość długich i nietypowych klawiszy.

Zabezpieczona konfiguracja Wi-Fi

Wi-Fi Protected Setup (WPS) to standard stworzony przez Wi-Fi Alliance do półautomatycznego tworzenia bezprzewodowej sieci domowej. Oficjalnie wprowadzony na rynek 8 stycznia 2007 r.

Większość nowoczesnych routerów obsługuje mechanizm WPS. Celem protokołu WPS jest uproszczenie procesu konfiguracji sieci bezprzewodowej, dlatego pierwotnie nazywano go Wi-Fi Simple Config. Protokół ma na celu pomóc użytkownikom, którzy nie mają rozległej wiedzy na temat bezpieczeństwa w sieciach bezprzewodowych, a co za tym idzie, mają trudności z dokonywaniem ustawień. WPS automatycznie identyfikuje nazwę sieci i ustawia szyfrowanie w celu ochrony przed nieautoryzowanym dostępem do sieci, bez konieczności ręcznego ustawiania wszystkich parametrów.

Istnieją trzy opcje korzystania z WPS:

  • 1. Połącz za pomocą przycisku (PBC). Użytkownik naciska specjalny przycisk na routerze i komputerze (oprogramowaniu), tym samym aktywując proces konfiguracji.
  • 2. Wpisanie kodu PIN w interfejsie internetowym. Użytkownik wchodzi do interfejsu administracyjnego routera przez przeglądarkę i wprowadza ośmiocyfrowy kod PIN zapisany na obudowie urządzenia, po czym następuje proces konfiguracji.
  • 3. Łącząc się z routerem, możesz otworzyć specjalną sesję WPS, w ramach której możesz skonfigurować router lub uzyskać istniejące ustawienia, jeśli poprawnie wpiszesz kod PIN. Do otwarcia takiej sesji nie jest wymagane uwierzytelnianie. Okazuje się, że PIN jest już potencjalnie podatny na atak bruteforce.

Tutaj PIN ma osiem cyfr - stąd do wyboru jest 10 ^ 8 (100 000 000) opcji. Ale faktem jest, że ostatnia cyfra kodu PIN to suma kontrolna, która jest obliczana na podstawie pierwszych siedmiu cyfr. W efekcie otrzymujemy już 10^7 (10 000 000) opcji. Dodatkowo sprawdzenie kodu PIN odbywa się w dwóch etapach – każda część jest sprawdzana osobno. Dostajemy 10^4 (10000) opcji na pierwszą połowę i 10^3 (1000) na drugą. W sumie istnieje tylko 11 000 opcji pełnego wyszukiwania. Ale tutaj warto zwrócić uwagę na jedną ważny punkt- możliwa szybkość wyszukiwania. Ogranicza go szybkość przetwarzania żądań WPS przez router: niektóre punkty dostępowe zwracają wynik co sekundę, inne - co dziesięć sekund.

Implementację brute force można wykonać za pomocą narzędzia wpscrack, a także za pomocą narzędzia Rozbójnik... Preferowany będzie Reaver ze względu na jego większą funkcjonalność i obsługę znacznie większej liczby kart bezprzewodowych.

Jak w przypadku każdego ataku na sieć bezprzewodową, potrzebujesz Linuksa. Aby korzystać z Reavera, musisz wykonać następujące czynności:

  • § znajdź nazwę interfejs bezprzewodowy - $ iwconfig;
  • § Tłumaczyć adapter bezprzewodowy do trybu monitorowania - $ airmon-ng start ***(zwykle wlan0);
  • § poznaj adres MAC punktu dostępowego (BSSID) z szyfrowaniem WPA/WPA2 i uwierzytelnianiem klucza PSK - $ airodump-ng ***(zwykle mon0);
  • § upewnij się, że WPS jest włączony na gniazdku - $ ./pranie -i pon0.

Następnie możesz przejść bezpośrednio do PIN brute force "a. Musisz podać nazwę interfejsu (wcześniej przeniesionego w tryb monitorowania) oraz BSSID punktu dostępowego:

$ reaver -i mon0 -b 00:21:29:74:67:50 -vv

Przełącznik "-vv" umożliwia rozszerzone wyjście programu, dzięki czemu możesz upewnić się, że wszystko działa zgodnie z oczekiwaniami. Jeśli program sekwencyjnie wysyła kody PIN do punktu dostępu, wszystko działa dobrze i wystarczy poczekać. Proces może być opóźniony - w przybliżeniu czas może wynosić od czterech do dziesięciu godzin. Jak tylko zostanie znaleziony, program poinformuje Cię o tym i wystawi.WPA-PSK, można od razu użyć do połączenia.

Warto również zauważyć, że istnieje szybsza opcja. Faktem jest, że niektóre z tych samych modeli routerów zwykle mają ten sam kod PIN. A jeśli PIN modelu wybranego routera jest już znany, to czas włamania wynosi dosłownie kilka sekund.

Jest tylko jeden sposób obrony przed atakiem - wyłącz WPS w ustawieniach routera. To prawda, że ​​nie zawsze jest to możliwe. Lub, aby jak najbardziej przeciwdziałać brute-force, możesz zablokować WPS na czas nieokreślony po kilku nieudanych próbach wprowadzenia kodu PIN. Wtedy wyszukiwanie może ciągnąć się bardzo, bardzo długo, w zależności od ustawionej wartości okresu blokowania.

Trochę o WPA/WPA2-Enterprise. Hakowanie MS-CHAPv2.

W przedsiębiorstwie MS-CHAPv2 jest tylko jedną z możliwych metod EAP. Popularność MS-CHAPv2 wynika z faktu, że jest to najłatwiejsza metoda integracji z Produkty Microsoft(IAS, AD itp.).

Twierdzi się, że MS-CHAPv2 jest złamany ze 100% skutecznością. Aby to zrobić, musisz przechwycić wymianę za pomocą protokołu MS-CHAPv2, po czym, wykorzystując luki w szyfrowaniu, możesz obliczyć poświadczenia użytkownika. Twierdzi się, że MS-CHAPv2 jest używany w systemach VPN i WPA2-Enterprise. Jednocześnie zarówno VPN, jak i WPA2 są wymienione w kontekście serwerów AAA (Authentication, Authorization, Accounting), co jest dość logiczne, ponieważ to tam wyłapywany jest nieszyfrowany MS-CHAP. Oznacza to, że jeśli przechwycisz wymianę MS-CHAPv2 między klientem a serwerem AAA, możesz obliczyć poświadczenia użytkownika.

Ale ponieważ przechwycenie sesji MS-CHAPv2 nie jest już możliwe w obecności tunelu (po pierwsze, musisz złamać szyfrowanie tunelu), ta metoda łamania jest ważna tylko wtedy, gdy symulujesz punkt dostępu. Następnie można bezpiecznie uzyskać zarówno klienta, jak i jego sesję MS-CHAPv2, pod warunkiem, że w punkcie dostępu nie ma certyfikatów, a weryfikacja certyfikatów na klientach jest wyłączona.

Tym samym dla dobrze zbudowanej sieci bezprzewodowej z WPA2-Enterprise w oparciu o PEAP/MS-CHAPv2 taki atak nie jest straszny. Chyba że wciśnie się w kanał między uwierzytelniaczem (punktem dostępowym, kontrolerem) a serwerem AAA, ale nie dotyczy to już WPA.

Celem procedury Uwierzytelniania i Uzgadniania Klucza (AKA) jest wykonanie wzajemnego uwierzytelnienia pomiędzy terminalem użytkownika a siecią oraz wygenerowanie zabezpieczającego klucza funkcyjnego KSEAF (patrz Rysunek 7). Raz wygenerowany klucz KSEAF może być użyty do utworzenia kilku kontekstów bezpieczeństwa, m.in. dla dostępu 3GPP i non-3GPP.
Wydanie 15 3GPP definiuje dwie obowiązkowe procedury uwierzytelniania i uzgadniania klucza – EPS-AKA” i 5G-AKA, które zostaną omówione poniżej.
W ramach obu metod wywoływana jest funkcja derywacyjna (KDF), która na podstawie ciągu znaków kontrolnych konwertuje klucz kryptograficzny. Ciąg znaków kontrolnych może zawierać nazwę obsługującego abonenta sieci gościa (Serving Network Name - SN-name). W szczególności nazwa SN jest używana przy obliczaniu:
- klucz funkcji bezpieczeństwa KSEAF;
- Odpowiedź uwierzytelniająca (RES *, XRES *);
- klawisze pośrednie CK 'i IK'.
Nazwa SN jest tworzona przez połączenie kodu usługi (kod usługi = „5G”) i identyfikatora odwiedzanej sieci, który uwierzytelnia użytkownika (identyfikator sieci lub identyfikator SN). SN Id jest obliczany na podstawie kod mobilny Kraj (MCC) i kod sieci komórkowej (MNC) — patrz rys. 3.

Ryż. 3 (identyfikator sieci lub identyfikator SN)

Użycie nazwy sieci obsługującej (SN-name) pozwala jednoznacznie powiązać wyniki algorytmów kryptograficznych z konkretną siecią gościa.

Inicjowanie i wybór metody uwierzytelniania

Zgodnie z polityką bezpieczeństwa operatora, moduł funkcjonalny SEAF może zainicjować uwierzytelnianie terminala użytkownika (UE) w dowolnej procedurze obejmującej nawiązanie połączenia sygnalizacyjnego z UE, na przykład podczas rejestracji w sieci (dołącz) lub aktualizacji obszaru śledzenia (aktualizacja obszaru śledzenia). Aby „wejść na antenę”, UE musi użyć albo ukrytego SUCI (w przypadku wstępnej rejestracji w sieci) albo 5G-GUTI (w przeciwnym razie).
Aby uwierzytelnić terminal użytkownika, SEAF używa wcześniej utworzonego i wciąż nieużywanego wektora uwierzytelniania lub wysyła „Żądanie inicjacji uwierzytelniania” (5G-AIR) do AUSF, ustawiając SUCI jako identyfikator użytkownika (w przypadku początkowej rejestracji w sieci ) lub SUPI (w przypadku otrzymania z UE ważnego 5G-GUTI). Żądanie uwierzytelnienia (5G-AIR), oprócz identyfikatora użytkownika, musi również zawierać typ dostępu (3GPP lub non-3GPP), a także nazwę sieci obsługującej (SN-name).
Następnie AUSF sprawdza kwalifikowalność do używania nazwy sieci obsługującej (SN-name) i, jeśli się powiedzie, tłumaczy otrzymane żądanie do bloku ujednoliconej bazy danych (UDM), gdzie (jeśli to konieczne) moduł funkcjonalny odzyskiwania identyfikatora użytkownika (SIDF) odszyfrowuje ukryty identyfikator użytkownika (SUCI ), po czym repozytorium poświadczeń uwierzytelniania (ARPF) wybiera odpowiedni algorytm uwierzytelniania - 5G-AKA lub EAP-AKA ”.

Metoda uwierzytelniania EAP-AKA”

Metoda uwierzytelniania EAP-AKA „jest dalszy rozwój EAP-AKA i wprowadza nowa funkcjałączenie derywacji klucze kryptograficzne do nazwy sieci dostępowej. Metoda EAP-AKA opisana w RFC 5448 jest wyzwalana przez UDM/ARPF, gdy otrzymuje żądanie uwierzytelnienia użytkownika z AUSF (Authentication Information Request - Auth Info-Reqwiadomości). Rysunek 4 przedstawia schemat, który obejmuje kroki wymienione poniżej.

Ryż. 4 (metoda uwierzytelniania EPS-AKA)

1. Repozytorium i moduł przetwarzania poświadczeń użytkownika (UDM/ARPF) generuje wektor uwierzytelniania obejmujący RAND, AUTN, XRES, CK, IK. Do obliczenia wektora uwierzytelniania wykorzystuje się pięć funkcji jednokierunkowych f1-f5, zaimplementowanych w oparciu o szyfr blokowy MILENAGE (zgodnie z 3GPP TS 33.102 - patrz rys. 5) z bitem AMF ustawionym na „1”. Podczas obliczania f1-f5 używane jest 128-bitowe pole konfiguracji algorytmu wariantu operatora (OP). OP pozwala na wykonanie unikalnej (tajnej) implementacji algorytmu dla każdego operatora. Wartość OP (lub OPc obliczona z OP i KI za pomocą funkcji szyfru blokowego) musi być przechowywana w ARPF i na USIM użytkownika.

Ryż. 5 (wektor uwierzytelniania)

2. UDM/ARPF poprzez funkcję derywacji i korzystając z nazwy sieci obsługującej (SN-name) oblicza „skojarzone” wartości CK”, IK” i przekazuje wektor (RAND, AUTN, XRES, CK”, IK) do serwera uwierzytelniania (AUSF), z którego odebrano żądanie.
3. AUSF uruchamia funkcję kryptograficzną PRF metody EAP-AKA „opisaną w RFC5448. Parametrami wejściowymi funkcji są klucze CK” i IK”, a także nazwa sieci obsługującej (SN-name). na wyjściu funkcji otrzymujemy następujące pola:
- K_encr - klucz (128 bitowy) służący do szyfrowania poszczególnych atrybutów komunikatów EAP-AKA” (zgodnie z polityką bezpieczeństwa operatora);
- K_aut - klucz (256 bitów) używany do obliczania kodów kontroli integralności wiadomości EAP-AKA "(MAC - Message Authentication Code);
- K_re - klucz (256 bitów) używany do ponownego uwierzytelnienia;
- MSK (Master Session Key) - klucz główny (512 bitów);
- EMSK (Extended Master Session Key) - rozszerzony klucz główny (512 bitów).
4. AUSF wysyła żądanie EAP-Request / AKA „-Challenge" do funkcji kotwicy bezpieczeństwa (SEAF), które jest następnie transparentnie transmitowane do terminala użytkownika w komunikacie NAS. EAP-Request / AKA „-Challenge" zawiera następujące atrybuty:
- AT_RAND (liczba losowa);
- AT_AUTN (token uwierzytelniający);
- AT_KDF (identyfikator użytej funkcji derywacji, gdzie 1 - odpowiada użyciu domyślnej funkcji derywacji);
- AT_KDF_INPUT (obsługująca nazwa sieci - nazwa SN);
- AT_MAC (kod uwierzytelniania wiadomości).

- oblicza wartości XMAC, RES, CK "i IK";
- uruchamia funkcję kryptograficzną PRF algorytmu EAP-AKA” (podobnie jak funkcja wykonywana przez serwer uwierzytelniający);
- sprawdza poprawność kodu kontroli integralności wiadomości (atrybut AT_MAC);
- weryfikuje, czy bit AMF atrybutu AT_AUTN jest ustawiony na „1”;

- wysyła odpowiedź EAP / AKA „-Challenge” z atrybutami AT_RES i AT_MAC do funkcji kotwicy bezpieczeństwa (SEAF), która jest następnie rozgłaszana w sposób przezroczysty do serwera uwierzytelniania (AUSF).
6. AUSF weryfikuje poprawność kodu sprawdzania integralności wiadomości (atrybut AT_MAC) i uwierzytelnia terminal użytkownika porównując wartości RES i XRES otrzymane odpowiednio z UE i ARPF/UDM.
7. Jeśli się powiedzie, AUSF wysyła odpowiedź EAP-Success do UE za pośrednictwem funkcji kotwicy bezpieczeństwa (SEAF). Jeśli polityka bezpieczeństwa operatora zakłada transmisję EAP-Success w postaci zaszyfrowanej - „chronione wskazania pomyślnych wyników”, w pierwszej kolejności wymieniane są powiadomienia. Ponadto (jeśli to konieczne), poprzez wywołanie funkcji SIDF, wykonywane jest odszyfrowanie ukrytego identyfikatora (SUCI) i ekstrakcja 5G SUPI.
8. W ostatnim kroku ARPF / UDM generuje klucz funkcji uwierzytelniania KAUSF, który jest używany jako pierwsze 256 bitów rozszerzonego klucza głównego (EMSK). Ponadto, w oparciu o KAUSF, klucze szyfrowania i kontroli integralności są obliczane zgodnie z hierarchią kluczy kryptograficznych pokazaną na ryc. 7.

Metoda uwierzytelniania 5G-AKA jest dalszym rozwinięciem EPS-AKA opisanej w zaleceniu 3GPP TS 33.401 i stosowanej w sieciach 4G-LTE. Metoda 5G-AKA jest uruchamiana przez UDM/ARPF, gdy otrzymuje żądanie uwierzytelnienia użytkownika z AUSF (wiadomości żądania informacji uwierzytelniających - Auth Info-Req). Na ryc. 6 to diagram zawierający poniższe kroki.

Ryż. 6 (metoda uwierzytelniania 5G-AKA)

1. Analogicznie do algorytmu EAP-AKA „moduł repozytorium i przetwarzania poświadczeń użytkownika (UDM/ARPF), oparty na szyfrze blokowym MILENAGE, generuje wektor uwierzytelniania, który zawiera RAND, AUTN, XRES, CK, IK Bit AMF musi być ustawiony na jednostkę).
2. UDM/ARPF poprzez funkcję derywacji i korzystając z nazwy sieci obsługującej (SN-name) oblicza:
- powiązana wartość oczekiwanej odpowiedzi XRES*,
- wartość klucza funkcji uwierzytelniającej KAUSF,
generuje wektor „5G HE AV” (Home Environment Authentication Vector), w tym RAND, AUTN, XRES*, KAUSF i wysyła go do serwera uwierzytelniania (AUSF).
3. AUSF oblicza:
- wartość HXRES *, która jest hashem skróconym do 128 bitów z konkatenacji oczekiwanej odpowiedzi uwierzytelnienia XRES * i liczby losowej RAND: HXRES * niższe 128 bitów z SHA-256;
- wartość klucza funkcji zabezpieczającej KSEAF.
Następnie AUSF generuje 5G AV (5G Authentication Vector), w tym RAND, AUTN, HXRES *, KSEAF i wysyła go do Security Anchor Function (SEAF) za pośrednictwem wiadomości 5G-AIA (Authentication Initiation Answer). W przypadku, gdy żądanie uwierzytelnienia (5G-AIR) zawierało ukryty identyfikator użytkownika (SUCI), AUSF, poprzez wywołanie funkcji SIDF, odbiera 5G SUPI i dodaje je do 5G-AIA.
4. SEAF monitoruje licznik czasu życia odebranego wektora i wysyła wiadomość Auth-Req z włączonymi parametrami RAND i AUTN do terminala użytkownika NAS.
5. Terminal użytkownika:
- wylicza wartości RES, AUTN, CK, IK wywołując odpowiednie funkcje modułu USIM;
- przeprowadza uwierzytelnianie sieci poprzez porównanie obliczonych i odebranych wartości AUTN;
- oblicza wartości kluczy KAUSF i KSEAF;
- oblicza skojarzoną wartość odpowiedzi uwierzytelniania RES *;
- Wysyła wiadomość Auth-Resp zawierającą RES * do funkcji kotwicy bezpieczeństwa (SEAF).
6. SEAF oblicza skrót HRES * (podobny do AUSF) i uwierzytelnia terminal użytkownika, porównując HRES * i HXRES *.
7. Po pomyślnym uwierzytelnieniu SEAF wysyła do AUSF wiadomość 5G-AC (Authentication Confirmation) zawierającą m.in. wartość odpowiedzi RES * otrzymana z UE. Ten krok jest opcjonalny i nie może być używany podczas rejestracji użytkownika w sieci domowej.
8. AUSF sprawdza licznik czasu życia wektora uwierzytelniania, porównuje obliczoną (XRES *) i otrzymaną (RES *) odpowiedź, a następnie kończy procedurę uwierzytelniania.
3GPP zaleca generowanie i używanie tylko jednego wektora na procedurę uwierzytelniania. Umożliwi to zakończenie każdej procedury uwierzytelniania wiadomością potwierdzającą.