Problemy bezpieczeństwa sieci mobilnych

Transkrypt

Problemy bezpieczeństwa sieci mobilnych
Problemy bezpieczeństwa sieci mobilnych
Kerberos - istnieje rozwiązanie przeznaczone dla sieci typu WLAN
Protokoły Radius i Diameter
RADIUS (Remote Authentication Dial-In User Service) jest protokołem
uwierzytelniania, autoryzacji i rozliczania zaprojektowanym dla dostępu do
sieci. Radius jest powszechnie stosowany w zdalnych serwerach
dostępowych, ruterach i śluzach ogniowych. Serwery RADIUS mogą być
także użyte jako serwery proxy dla innych serwerów uwierzytelniających.
Po poprawnym uwierzytelnieniu serwer przekazuje klientowi informacje i
konfiguracji sieci.
DIAMETER to protokół RADIUS II-ej generacji. W przeciwieństwie do
poprzedniego, bazuje na modelu P2P i zawiera wiele ulepszeń,
usuwających słabości RADIUS.
Protokół EAP
EAP (Extensible Authentication Protocol) zaprojektowano w celu
przydzielenia adresu IP uwierzytelniającej się jednostce, bazując głównie
na modelu PPP (point-to-point). Ten protokół może być używany na
poziomie drugiej warstwy modelu protokołów sieci, jak I wyżej. EAP jest
użytecznym opakowaniem (wrapper), umożliwiającym administratorom
bezpieczeństwa na użycie dowolnego protokołu uwierzytelniającego.
Istnieje wiele wersji i rozwiązań typu EAP.
Stos protokołów EAP
EAP-TLS (EAP with Transport Layer Security) jest jedną z najczęściej
stosowanych metod. Pakiety EAP są przesyłane w tunelu SSL/TLS.
„Tożsamość” komunikujących się stron (węzłów) jest sprawdzana z
pomocą certyfikatów kluczy publicznych. Jednak nazwa węzła podanego w
certyfikacie jest przesyłana jawnie, jak również komunikaty potwierdzające
nawiązanie połączenia (EAP-success, EAP-fail). Było to zachętą do
opracowania wersji zwanej Protected EAP (PEAP) i EAP z TLS (EAPTTLS).
PEAP (Protected EAP) zapewnia prywatność danych w EAP-TLS.
Najpierw jest uwierzytelniany tylko serwer, a użytkownik pozostaje
anonimowy. W drugiej fazie dokonuje się wzajemnego uwierzytelnienia we
wcześniej ustanowionym tunelu TLS przy użyciu kluczy z fazy pierwszej.
Chociaż to rozwiązanie jest zalecane przez Cisco, Microsoft i RSA
Security, istnieją dwie podstawowe wersje PEAP – jedna Cisco, a druga
Microsoft. Obie są nazywane “PEAP” i są niekompatybilne. PEAP
zapewnia obustronne uwierzytelnienie, ochronę tożsamości klienta i
generację kluczy sesyjnych.
EAP-TTLS (EAP with Tunneled Transport Layer Security) zaprojektowano,
mając na uwadze kompatybilność „wstecz”. Na początku badania
wiarygodności stron jest tworzony bezpieczny kanał TLS, podobnie jak w
PEAP. Następnie klient łączy się z serwerem TTLS, który jest
wykorzystywany jednokrotnie. Podobny do PEAP (ale powstał wcześniej) i
jest promowany przez Funk Software i Certicom. TTLS zapewnia
obustronne uwierzytelnienie, ochronę tożsamości klienta, generację kluczy
sesyjnych i szyfrowanie parametrów sesji.
EAP-MD5 jest metodą EAP, bazującą na przesyłaniu skrótów haseł.
Można jej używać tylko w bezpiecznych korporacyjnych sieciach LAN. Jest
podatna na ataki metodą brutalną i słownikowe, a także nie zapewnia
użycia dynamicznego protokołu WEP (Wired Equivalent Privacy) (802.11).
LEAP (Lightweight EAP) jest standardem zaproponowanym przez Cisco.
Specyfikację udostępniono za darmo jedynie partnerom biznesowym
Cisco. Trochę bardziej rozbudowany jak EAP-MD5 i zapewnia wzajemne
uwierzytelnianie i krótkoterminowe klucze WEP. Nadal są możliwe ataki
słownikowe off-line i ujawnienie tożsamości klienta (nazwy są jawnie
przesyłane). Ponadto dla klienta LEAP ujawniono słabość protokołu typu
challenge/response, bo jeden z kluczy DES zawiera sześć (na 8) zerowych
bajtów. Tak więc wystarczy 216 prób, by złamać klucz.
EAP-FAST (EAP Flexible Authentication via Secure Tunneling - CISCO)
umożliwia uwierzytelnianie bez potrzeby użycia certyfikatów PK ani
dowolnej PKI. Utworzenie tunelu kryptograficznego opiera się na
współdzielonej tajemnicy (PAC). EAP-FAST jest podobny do PEAP i także
ma dwie fazy działania. Pierwsza tworzy tunel kryptograficzny pomiędzy
klientem a serwerem. W drugiej fazie korzysta się z tego tunelu do
bezpiecznego uwierzytelnienia klienta w sesji MS-CHAPv2. Natomiast
współdzielona tajemnica musi być ewentualnie dostarczona w opcjonalnej,
początkowej fazie protokołu. Twórcy ukrywają jednak fakt, że do tego celu
należy użyć algorytmu Diffie-Hellmana, aby protokół był odporny na ataki
słownikowe, powtórzeniowe, MitMA i słabości wektora początkowego
(DES).
EAP-SIM (EAP for GSM Subscriber Identity) umożliwia operatorom
telefonii komórkowej stosowanie EAP bez konieczności modyfikacji
istniejącej infrastruktury. Podstawą jest użycie złamanego wcześniej
szyfrowania GSM. EAP-SIM zaprojektowano w celu dostarczenia 128bitowych kluczy w systemie z 64-bitowym szyfrowaniem GSM, ale to się
nie powiodło. Ponadto występują zależności pomiędzy poszczególnymi
sesjami połączeniowymi, czego nie udało się usunąć.
EAP-AKA (EAP for UMTS Authentication and Key Management)
zaprojektowano dla standardu 3G rozwijanego przez 3G Partnership
Project. Użytkownicy sieci bezprzewodowych LAN są uwierzytelniani przy
użyciu ich modułu SIM w sieci 3G.
Inne metody EAP używają haseł
jednorazowych (EAP-secureID).
EAP
(Diffie-Hellman)
I
haseł
IEEE 802.1x
802.1x to standard IEEE kontroli dostępu w sieciach LAN I MAN. Chociaż
nie jest przewidziany dla sieci bezprzewodowych, włączono go do
standardu 802.11i. Używając środków 802.1x, dokonuje się
uwierzytelnienia i autoryzacji urządzeń dołączonych do portu sieciowego
na bazie charakterystyk połączenia point-to-point. Portem LAN jest
pojedynczy punklt dołączenia do infrastruktury LAN, tj. mostek MAC lub
punkt dostępowy 802.11. Ponadto 802.1x zapewnia, że dostęp zostanie
zablokowany, jeśli nie uda się uwierzytelnianie lub autoryzacja. 802.1x
zwykle wykorzystuje protokół EAP w wersji EAPOL (EAP over LAN) lub
EAPOW (EAP over Wireless). Tak więc sprawdzenie portu jest bezpiecznie
przeniesione do wyższej warstwy.
W 802.1x mamy trzy komunikujące się strony:
• Supplicant – klient – urządzenie żądające dostępu do sieci;
• Authenticator – punkt dostępowy lub router dostępowy;
• Authentication Server – urządzenie dostarczające informacji
niezbędnych do uwierzytelnienia i podejmujące decyzje w tym
zakresie: np. serwer RADIUS.
PAE (port access entity) to punkt, w którym klient próbuje uzyskać dostęp
do sieci. Authenticator steruje dwoma portami: swoim portem używanym do
uwierzytelniania oraz portem usługowym.
Działanie standardu 802.1x
Etapy procesu uwierzytelniania:
1. Interfejs sieciowy klienta jest dołączany do punktu dostępowego.
2. Zostaje wysłany przez klienta komunikat EAPOL-Start w celu
ustalenia, czy jest obecny punkt dostępowy. Komunikat jest wysłany
do
specjalnej
grupy
adresów
rozgłoszeniowych
MAC
zarezerwowanych dla punktów dostępowych. Komunikaty EAPOLKey i EAPOL-Packet są używane w sieciach WLAN do komunikacji z
wykorzystaniem protokołu EAP.
Uwierzytelnianie w standardzie 802.1x
3. Punkt dostępowy wysyła komunikat EAP Identity Request, na który w
odpowiedzi powinien otrzymać EAP Identity Response.
4. Punkt dostępowy wysyła Access Request do serwera AS, który
odpowiada komunikatem Authentication Request. Ta wiadomość i
następne są zależne od typu stosowanego EAP.
5. Jeśli uwierzytelnianie powiedzie się, AS wysyła komunikat Success
message i port punktu dostępowego zostaje otwarty dla klienta. W
sieciach bezprzewodowych po komunikacie EAP-Success występuje
wymiana kluczy, które mogą być używane w WEP lub WPA do
szyfrowania ruchu i zapewnienia podstawowego bezpieczeństwa. W
standardzie 802.1x używa się do tego celu pojedynczej wiadomości,
ale ulepszony standard (802.1aa) definiuje to działanie jako 4etapowe. Dzięki temu chronimy się przed atakami MitM u
umożliwiamy dynamiczną generację kluczy sesyjnych.
6. Aby rozłączyć się, klient wysyła komunikat EAPOL-Logoff.
Istnieje kilka standardów przemysłowych 802.1x:
• Open1x – implementacja open source 802.1x;
• Microsoft 802.1x;
• Cisco.
Są one niekompatybilne i stosują różne metody EAP, co pozbawia
możliwość współpracy systemy używające różnych urządzeń.
Chaffing and winnowing
Technikę “chaffing and winnowing” zaproponował Ron Rivest, aby uzyskać
nieco poufności bez szyfrowania. Nadawca (A) i odbiorca (B) współdzielą
klucz tajny. Wiadomości są przesyłane jawnie, ale uzupełnia się je skrótem,
np. HMAC-SHA1, wyliczonym na podstawie treści wiadomości I klucza
tajnego. Wiadomości zniekształcone lub niewiarygodne mogą być więc
odrzucone. W drugim kroku metody dołączamy nic nie znaczące pakiety do
strumienia wiadomości. Segmentację realizuje się za pomocą numerów
seryjnych w każdym pakiecie. „Bezpieczeństwo” schematu polega na
trudności odróżnienia pakietów poprawnych od nic nie znaczących
(złożoność obliczeń ma charakter wykładniczy w zależności od liczby
pakietów). Dystrybucję klucza tajnego wykonuje się np. przy użyciu
algorytmu Diffie-Hellmana.
Aby nieco utrudnić zadanie napastnikom, każdy bit wiadomości może być
przesyłany w innym pakiecie.
Bezpieczeństwo w 802.11 (Wi-Fi)
Prace nad standardem 802.11 zaczęto w 1990 r. Minimalną przepustowość
ustalono na 1 Mb/s. Nowy standard miał zapewnić łączność
bezprzewodową również podróżującym z umiarkowaną prędkością.
Wspólna warstwa MAC zapewnia współpracę wielu warstw fizycznych.
IEEE wydało pierwszą wersję standardu 802.11 w 1997 r., z
przepustowością do 2 Mb/s. W 1999 r. pojawiły się: 802.11b dla f=2.4 GHz
i 802.11a działający w paśmie 5.3 GHz i 5.8 GHz. Praktyczna
przepustowość zmierzona w SAP (Media Access Control Service Access
Point) wynosi odpowiednio ok. 5 Mb/s i 25 Mb/s. Nowa wersja standardu,
802.11g, używa modulacji OFDM i osiąga przepustowość rzędu 25 Mb/s.
Projektowany standard 802.11n teoretycznie powinien zapewnić 500 Mb/s.
Popularne typy sieci w standardzie 802.1x
W 802.11 mamy 3 typy ramek:
• Ramki organizacyjne (np. Beacon, Association Request);
• Ramki sterujące (np. Request To Send – RTS);
• Ramki danych.
Format ramki w standardzie 802.11
Tryby pracy
Basic Service Set (BSS) to zbiór zwykłych węzłów zarządzanych
pojedynczą funkcją sterującą dostępem do kanału. Independent BSS to
niezależny BBS bez dostępu ogólnego. System rozproszony (Distribution
System - DS) można użyć do połączenia BBS, budując rozszerzony
system usługowy (Extended Service Set - ESS). W ESS cały ruch jest
kierowany przez punkty dostępowe AP. DS można zbudować na bazie AP
lub przy użyciu kabla łączącego różne AP w odmiennych BSS. Każda sieć
802.11 jest identyfikowana przez SSID (Service Set Identifier), który
oznacza nazwę sieci (do 32 znaków długości). Identyfikator BSSID (Basic
Service Set Identifier) jest używany do identyfikacji pojedynczej komórki i
ma tę samą wartość co adres MAC interfejsu punktu dostępowego AP.
Tryby pracy 802.11
Aby dołączyć się do punktu dostępowego, STA skanuje wybrane
częstotliwości w celu znalezienia najsilniejszego sygnału. W tym celu STA
regularnie wysyła sygnały Probe Requests i czeka na odpowiedź w
wybranych kanałach. Jeśli proces skanowania ma charakter pasywny, STA
nasłuchuje nachodzących pakietów typu Beacon i określa na ich podstawie
siłę sygnału.
Kanału może także nasłuchiwać napastnik i nie będzie wykryty!!
Punkt dostępowy utrzymuje listę dowiązanych STA. Jeśli AP jest
skonfigurowany do realizacji protokołu Open Authentication, atakujący
mógłby przeprowadzić prosty atak typu Denial of Service w którym
dokonuje częstej zmiany adresu MAC w karcie sieciowej. W konsekwencji
zalewa AP potokiem żądań. Lista AP szybko się przepełni, tym samym
odmawiając dostępu do AP legalnym użytkownikom.
Dla sieci 802.11 zdefiniowano dwa tryby pracy:
• infrastructure i
• ad-hoc.
W obu trybach mamy odmienne sposoby dostępu do medium.
• W trybie ad-hoc używa się protokołu DCF (Distributed Coordination
Function), który de facto jest protokołem CSMA/CA (Carrier Sense
Multiple Access protocol with Collision Avoidance). Stacja bada kanał
w celu sprawdzenia, czy nie jest zajęty przez inną transmisję. Po
odczekaniu pewnego czasu (DCF Interframe Spacing) można
rozpocząć transmisję. Jeśli w szczelinie czasowej DIFS medium
będzie zajęte, jest rozpoczynany mechanizm wycofania (backoff).
• W trybie infrastructure używa się protokołu PCF (Point Coordination
Function). PCF jest mechanizmem scentralizowanym, opartym na
głosowaniu i wymagającym obecności centralnego koordynatora
(Point Coordinator). Czas jest podzielony na fragmenty zwane superramkami. Każda z nich składa się z okresu zwanego contention, w
którym działa DCF i okresu contention free period (CFP), w którym
działa PCF. Gdy startuje protokół CFP, każda stacja z listy PC jest
odpytywana kolejno (round-robin). Odstęp (timeslot) pomiędzy
ramkami PCF jest krótszy od DIFS, tak więc żadna stacja nie może
przerwać transmisji.
Odstępy czasowe w trybie pracy interframe 802.11
Swobodne uwierzytelnianie (Open authentication)
Access Point nie ma żadnego sposobu na odróznienie poprawnego klienta
od intruza. Każdy może dołączyć się do sieci i wszystkie transmitowane są
dostępne dla wszystkich w ramach SSID (a także dla wszystkich
podsłuchujących). Dane nie są szyfrowane, więc każda sesja http lub telnet
może być odczytana.
WEP
WEP (Wired Equivalent Privacy) to metoda ochrony komunikacji WiFi dla
warstwy MAC. Jest częścią standardu 802.11 (1999). WEP
zaprojektowano w celu zapewnienia:
• poufności (szyfr strumieniowy RC4),
• spójności (CRC32),
• ochrony przed nieautoryzowanym dostępem (uwierzytelnianie nie
było głównym celem!!!).
Domyślny klucz 64-bitowy RC4 jest generowany poprzez połączenie 40bitowego ustalonego ciągu do 24-bitowego wektora inicjalizacyjnego (IV).
Ten 40-bitowy klucz jest współdzielony przez dwie komunikujące się
strony, a zmieniający się IV zapewnia różne wartości kluczy RC4 dla
każdego pakietu. Ten sam klucz 40-bitowy służy do uwierzytelniania –
zarówno AP, jak i stacja mobilna (STA) używają tego samego klucza. Jest
to poważnym osłabieniem bezpieczeństwa!! Ponadto, klucze szyfrujące i
uwierzytelniające powinny być różne i zmieniane w pewnym przedziale
czasowym. Ponieważ standard WEP nie definiuje metody zarządzania
kluczami, zmiana kluczy w większych sieciach może być kłopotliwe.
Standardowa długość wynika z ograniczeń eksportowych USA
(zniesionych 15 grudnia 1999). Później pojawiły się usługi WEP oferujące
klucze 128- i 256-bitowe. Klucz 128-bitowy składa się z 24-bitowego IV i 26
znaków heksadecymalnych (4-bitowych).
Zidentyfikowano wiele słabości protokołu WEP. Mimo tego WEP nadal
pozostaje (przypuszczalnie) najczęściej stosowaną metodą zabezpieczania
sieci WiFi. Poważną jego wadą jest dawanie fałszywego poczucia
bezpieczeństwa. Lista wad:
• 24-bitowa przestrzeń IV jest bardzo ograniczona. W szyfrach
strumieniowych zmiana klucza występuje dla każdego pakietu, co
znacznie ogranicza czas stosowania dla AP 802.11b (ok. 5 godzin).
Ponadto standard 802.11 nie zaleca zmiany IV co ramkę – jest to
opcjonalne. W wielu implementacjach IV wcale nie jest zmieniany, a
jedynie zwiększany o 1 (tryb licznikowy). Natomiast przy losowym
wyborze IV istnieje duża szansa na kolizje – co ok. 5000 ramek.
Standard 802.11 nie zawiera żadnych wskazówek co do zarządzania
wyborem IV.
• Pseudolosowy generator RC4 czasami wytwarza słabe IV. Znany jest
pierwszy bajt transmisji, więc pozostałe (pseudolosowe) łatwiej
ustalić. Poprawny klucz WEP można odtworzyć, używając zaledwie
256 przechwyconych pakietów. Usunięcie słabych IV może poprawić
sytuację.
• Podczas procesu uwierzytelniania z współdzielonym kluczem AP
wysyła tekstem jawnym ciąg wyzwania do strony uwierzytelniającej
się. Ten ciąg jest szyfrowany przez STA i odsyłany do AP. Jest więc
możliwa kryptoanaliza ze znanym tekstem jawnym. Napastnik może
także zsumować modulo 2 dwie przechwycone ramki i uzyskać ciąg
łatwy do odszyfrowania.
• Algorytm sumy kontrolnej - CRC32 – ma liniowy charakter i dzięki
temu jest podatny na kolizje, co uniemożliwia
zapewnienie
integralności transmisji, a także fałszowanie wiadomości.
• Standard 802.11 nie definiuje żadnych środków zapobiegawczych
atakom powtórzeniowym. Wszystkie komunikaty na poziomie MAC
mogą być ponownie wysyłane, ponieważ nie występuje numeracja
pakietów ani znakowanie czasowe.
• Stosowanie 40-bitowego szyfrowania obniża przepustowość o ok. 1
Mb/s, a 128-bitowe szyfrowanie zwiększa stratę do 2 Mb/s. To jest
prawie 20% spadek przepustowości dla sieci 802.11b. Ograniczona
przepustowość zwiększa opóźnienia, co jest denerwujące przy
trasmisjach multimedialnych.
WPA (WiFi Protected Access)
WPA został opracowany przez IEEE i komitet Wi-Fi w 2003 w odpowiedzi
na wiele słabości ujawnionych w działaniu WEP. WPA podnosi nieco
bezpieczeństwo w sieciach 802.11. Jest podzbiorem standardu 802.11i.
WPA stosuje TKIP (Temporal Key Integrity Protocol) do zarządzania
kluczami, usuwając możliwość przewidywania ich wartości, co było
powodem groźnych ataków. Protokół stosuje klucze 128-bitowe o pełnej
długości, generowane dynamicznie. Klucze mogą być często zmieniane
podczas transmisji, redukując znacznie ryzyko ujawnienia. Dystrybucją
zajmuje się serwer AS (Authentication Server), który stosuje 802.1x do
wytworzenia unikalnej pary kluczy po poprawnym uwierzytelnieniu klienta.
Ten klucz jest używany z kolei do generacji kluczy szyfrujących o liczbie
kombinacji rzędu 500.000.000.000. Dodatkowo suma kontrolna MIC
(Message Integrity Check) zapewnia spójność i ochronę przed
powtórzeniami.
W WPA wprowadzono mechanizmy uwierzytelniania 802.1x takie jak w
EAP. Administratorzy mają pewną możliwość wyboru, ponieważ mogą
wybrać kilka różnych metod.
Istnieją także rozwiązania WPA nieco słabsze (WPA pre-shared key).
Jednak przejście z WEP do WPA nie zapewnia pełnego bezpieczeństwa,
bowiem nadal są możliwe ataki słownikowe.
Protokół 802.11i (WPA2)
802.11i jest rozszerzeniem standardu 802.11. Zaprojektowano go w celu
zapewnienia poufności, spójności, niemożności wyparcia się i ochrony
przed powtórzeniami. Architektura 802.11i jest zbudowana z nast.
elementów:
• schematy uwierzytelniania 802.1x (EAP + authentication server) –
kontrola dostępu na bazie portów;
• RSN (Robust Security Network) - zabezpieczanie połączeń;
• CCMP (Counter Mode with Cipher Block Chaining Message
Authentication Code Protocol) – szyfrowanie z użyciem AES w celu
zapewnienia uwierzytelniania, poufności i spójności komunikacji,
obowiązkowe dla wszystkich urządzeń zgodnych z 802.11i;
• TKIP (Temporal Key Integrity Protocol), opcjonalny zestaw szyfrów
dla wzmocnienia protokołu WEP.
Do specyfikacji 802.11 dodano opis RSNA (Robust Security Network
Architecture) w celu poprawy bezpieczeństwa o wzmocnione mechanizmy
uwierzytelniania dla STA, algorytmy zarządzania kluczami i opakowanie
danych (enhanced data encapsulation mechanism - CCMP) łącznie z
opcjonalnym protokołem TKIP (Temporal Key Integrity Protocol). Należy
jednak dodać, że w znacznym stopniu te poprawki są zależne od
mechanizmów wbudowanych w urządzenia PAE (Port Access Entity) i AS
(Authentication Server).
Standard 802.11i dzieli urządzenia 802.11 na dwie klasy:
• Urządzenia typu pre-RSNA – niezdolne do utworzenia RSNA,
• Urządzenia typu RSNA.
Urządzenia typu pre-RSNA mogą wykorzystywać tradycyjne metody
szyfrowania i uwierzytelniania, takie jak WEP i uwierzytelnianie 802.11.
W standardzie 802.11i zdefiniowano kilka trybów komunikacji:
• Jeden-do-jeden pomiędzy stacjami STA i sieciami przewodowymi
poprzez wykorzystanie AP (najczęściej stosowany – bo z w
zgodności z obecnym modelem 802.11b/g/a);
• Jeden-do-wielu jednokierunkowa komunikacja od AP do stacji
mobilnych STA w grupie AP;
• Jeden-do-jeden pomiędzy dwoma STA dołączonymi do tego samego
AP.
Ataki na protokół WiFi (802.11)
Kolizje wektorów IV
Wartości IV są przesyłane bez szyfrowania, by węzeł odbiorczy mógł je
wykorzystać do ustawienia generatora strumienia klucza, a potem
odszyfrowania pakietu. IV nie powinny powtarzać się podczas sesji. Kolizja
wystąpi, gdy nadajnik wyczerpie wszystkie posiadane IV i będzie musiał
użyć któregoś ponownie. Niekiedy sprzęt zaczyna generować IV
począwszy od tej samej wartości (np. 0000). Sumując modulo 2 dwa
odebrane pakiety zaszyfrowane tym samym kluczem, napastnik otrzyma
sumę dwóch tekstów jawnych. Jeśli jeden z nich jest wcześniej znany, cała
komunikacja zostaje ujawniona. Jeśli tak nie jest, to posługując się analizą
statystyczną dla danego można uzyskać zaskakujące wyniki. Ponadto po
pewnym czasie, używając bazy danych odebranych szyfrogramów i ciągów
IV. Można więc ujawnić całą komunikację, ponieważ IV ma długość
zaledwie 24 bity, a klucze szyfrujące 256 bitów.
Łamanie WEP
Istnieją dwie główne metody łamania WEP:
• Statystyczna (z użyciem dużej liczby przechwyconych IV) i
• Atak brutalny.
Wstawianie (wstrzykiwanie) danych do sieci
Wstawianie (wstrzykiwanie) polega na wprowadzaniu pakietów 802.11 do
sieci przy specyficznym wykorzystaniu kart sieciowych i sterowników, co
powoduje zakłócenia ruchu, a nawet fałszowanie tożsamości i zakłócanie
zarządzania ruchem.
Ataki słownikowe WPA (tryb PSK)
Protokoły WPA i WPA2 (w 802.11i) zezwalają na stosowanie kluczy WPA
PSK (Pre-Shared Key) jako poprawnej metody uwierzytelniania. Jednak ta
metoda jest podatna na atak słownikowy (off-line), ponieważ użytkownicy
wybierają hasła łatwe do zapamiętania. Napastnik musi przechwycić
adresy MAC komunikujących się stron, uzgadniane parametry
kryptograficzne i ciągi losowe używane do rozpoczęcia generacji kluczy.
Powtórzenia IV (Initialization Vector)
Scenariusz:
Faza I: Tekst jawny (np. e-mail lub komunikat ICMP ECHO) jest wysyłany
do serwera sieci
802.11 używającej WEP. Tekst jawny zostaje
zaszyfrowany w AP za pomocą klucza WEP i odesłany do klienta.
Napastnik zachowuje ten komunikat. Znając zawartość komunikatu, może
uzyskać klucz szyfrujący (szyfr strumieniowy). Korzystając z faktu, że ten
sam IV I klucz WEP mogą być użyte wielokrotnie, powiększa zbiór ciągu
klucza, aż uzyska strumień klucza dla określonej długości ramki.
I faza ataku powtórzeniowego na IV
Posługując się wielokrotnie tym sposobem, napastnik może zbudować
ramkę o jeden bajt dłuższą niż przechwycona aktualnie. Spowoduje ona
odpowiedź AP, potwierdzającą zgodność klucza. Można odgadnąć postać
tego dodatkowego bajtu, bowiem to tylko 256 kombinacji, a AP potwierdzi
poprawność wyboru. Tę zabawę można powtarzać aż do uzyskania klucza
o żądanej długości.
II faza ataku powtórzeniowego na IV (narastające gromadzenie klucza)
Zamiana bitów (Bit-flipping)
Podobne do ataków na IV, bo mają ten sam cel. W przechwyconej ramce
o znanym typie zawartości zmieniamy kilka bitów (dzięki słabościom
algorytmu CRC32) i odsyłamy ponownie. Tak więc bez znajomości
przesyłanej wiadomości napastnik może zmienić kilka bitów i sumę
kontrolną. Powtórzona wiadomość zostanie poprawnie odtworzona w AP i
być może przesłana dalej poprzez Internet.
Ze względu na modyfikację treści wiadomości żądanie usługi nie zostanie
zrealizowane, ale otrzymamy odpowiedź o błędzie skierowaną do klienta
bezprzewodowego. Zawartość komunikatu może być analizowana przez
napastnika i po wykonaniu działania XOR na zaszyfrowanym ciągu można
odtworzyć podciąg strumienia klucza o długości ramki.
Budowa ramki do ataku metodą zmiany bitów
Scenariusz ataku z podmianą bitów
Inna wersja Bit-flipping
Inny wariant tego ataku odkryto podczas projektowania protokołu IPSec.
Atak jest skuteczny dla sieci używających TCP, ponieważ ten protokół
akceptuje jedynie pakiety z poprawną sumą kontrolną i wymaga od
odbiorcy wysłania komunikatu potwierdzenia (ACK) za każdym razem, gdy
otrzyma poprawny pakiet.
Scenariusz:
W przechwyconej ramce napastnik zmienia bity I odpowiednio koryguje
CRC, a następnie odsyła ramkę do AP I czeka na odpowiedź. Ramki TCP
ACK można łatwo zidentyfikować (mały rozmiar), więc należy tylko
odgadnąć, które bity należy zamienić, aby odnieść sukces. Tak więc
zmienijąc kolejno bity pakietu I nasłuchując odpowiedzi, napastnik może
ustalić zależności pomiędzy bitami I odgadnąć większość wiadomości.
MITM (Man in the Middle)
Aby atak się powiódł, napastnik musi znać adres MAC oraz SSID sieci
ofiary. Najpierw wysyła pakiet DEAUTH z podrobionym adresem MAC.
Ofiara zostaje odłączona od AP i zaczyna poszukiwać nowego AP. W
międzyczasie napastnik ustanawia fałszywy AP i ofiara zostaje do niego
dołączona. W tym samym czasie napastnik ustanawia legalne połączenie z
AP, używając adresu MAC ofiary. Dzięki temu napastnik jest w stanie
przechwycić całą komunikację pomiędzy ofiarą a AP. Ten atak umożliwia
także bardziej poważne, jak np. zablokowanie SSL. W efekcie moga
zdarzyć się straty finansowe. Jest to dowodem na konieczność realizacji
obustronnego uwierzytelniania.
Przechwytywanie ruchu (podsłuchiwanie)
To klasyczny atak na sieci bezprzewodowe, bowiem prawie wszystkie karty
802.11 umożliwiają jawną komunikację.
Fałszywy AP (Evil twin)
Szczególnie niebezpieczne dla sieci bezprzewodowych jest podszywanie
się (spoofing), bowiem w wielu ograniczonych protokołach to staje się
uwierzytelniania szczególnie łatwe.
Popularną techniką jest także
ustanawianie fałszywych stacji AP z silnym sygnałem w towarzystwie
innych, legalnych AP.
MAC address spoofing
Wiele protokołów przyjmuje założenie, że adres MAC jest niepowtarzalny i
dzięki temu jest uważany za jednoznaczny identyfikator. Te adresy są
często używane do uwierzytelniania, a następnie przydzielenia dostępu do
zasobów sieciowych. Prawie wszystkie urządzenia 802.11 pozwalają
zmienić adres MAC, to dyskredytuje wszelkie bezpieczeństwo oparte na
MAC. Podrobione adresy MAC można wykorzystać do bardziej złośliwych
ataków, jak ukrycie obecności sieci, kradzież uwierzytelnionego
identyfikatora lub uzyskanie nieuprawnionego dostępu.
Wykrywanie fałszywych adresów MAC
Istnieje kilka sposobów na wykrycie fałszerstwa MAC w sieciach 802.11.
Pierwsze 24 bity adresu MAC są przypisane przez IEEE do producenta
urządzeń. Jest ich obecnie ok. 10000. Adres MAC poza tym zakresem jest
sygnałem
wystąpienia
nieprawidłowości.
Ponadto
obserwacja
sekwencyjności wartości adresów z różnych źródeł, a także nie
zachowujące kolejności numerów w ramkach z jednego ciągłego źródła
powinny budzić podejrzenie o fałszerstwie.
Odtworzenie hasła LEAP
Pomimo umowy Cisco z partnerami o nieujawnianiu specyfikacji,
znaleziono efektywny atak na ten protokół. Kiedy AP wysyła wyzwanie (8
bytów) do STA, STA wykorzystuje skrót MD4 hasła do wygenerowania
trzech 7-bytowych kluczy DES. Klucz 1 zawiera bajty od 1 do 7, klucz 2
bajty od 8 do 14, a klucz 3 zawiera 2 ostatnie bajty skrótu uzupełnione
pięcioma zerami. Każdy z tych kluczy jest używany do zaszyfrowania
wyzwania, dając w wyniku 3 słowa 8-bajtowe. Te bajty są odsyłane do AP,
gdzie odpowiedź jest porównywana z wyliczoną wartością. Trzeci, obcięty
klucz DES redukuje przestrzeń przeszukiwania, co umożliwia bardzo
szybkie ustalenie wartości skracanej.
Atak typu Queensland DoS
Polega na zapełnianiu kanału radiowego ciągłym strumieniem
nieznaczących komunikatów zarządzających. Legalne stacje nie sa
wstanie odpowiedzieć z powodu zajęcia pasma.
Atak typu DEAUTH DoS
Wykorzystuje możliwość zmiany adresu MAC. Każda strona komunikacji w
sieci 802.11 AP może otwarcie zażądać odłączenia w dowolnej chwili.
Ponadto podczas odłączania AP bierze pod uwagę tylko adres MAC, bez
sprawdzania spójności pakietu. W wyniku stacja mobilna z fałszywym
adresem MAC może wysłać do AP sfałszowane pakiety DEAUTH, tym
samym kończąc sesje połączeniowe ofiar.
Atak typu Deassociation DoS
Polega na wysłaniu fałszywego pakietu z żądaniem odłączenia się od
współpracującej sieci przewodowej.
Zalew pakietami z żądaniem połączenia (Associate flood)
Celem ataku są zasoby pamięciowe stacji AP. Polega na zalewaniu AP
pakietami z fałszywymi adresami MAC, co powoduje zapełnienie pamięci
AP. W wyniku AP nie jest w stanie obsłużyć zgłoszeń legalnych
użytkowników.
Ataki związane z trybem uśpienia stacji mobilnej
W każdej chwili stacja mobilna może przejść w stan uśpienia i wówczas
stacja AP przechowuje dla niej zgromadzone pakiety. Od czasu do czasu
STA budzi się i w celu wydobycia zgromadzonych wiadomości wysyła
specjalny komunikat. Napastnik może wysłać taki komunikat w imieniu
uśpionego klienta i przejąć jego pakiety. Można także przekonać STA, że
żadne pakiety nie czekają, gdy faktycznie są one zgromadzone w AP.
Spowoduje to powrót do trybu uśpienia. Ponadto komunikaty budzenia I
usypiania są przesyłane jawnie, co dodatkowo pozwala zniszczyć
komunikację.
Zakłócenie zarządzania przepustowością
Atak polega na zalewaniu kanału ciągiem pakietów bez zachowania
wymaganego odstępu (DIFS).
Słabości wykrywania nośnej
W stosowaniu CSMA zakłada się, że stacje AP i STA będą zachowywać
się poprawnie I zgodnie współpracować w zakresie dostępu do medium.
Współpraca polega, m.in., na tym, by powiadamiać się wzajemnie o
zajętości kanału. Służą do tego celu specjalne, krótkie pakiety,
nieszyfrowane, ani w żaden sposób nie objęte uwierzytelnianiem.
Używając celowo powiekszonych tzw. ramek RTS, napastnik łatwo
doprowadzi do zablokowania medium.
Podsumowanie
Niewątpliwie wynika z podanych przykładów, że sieci WiFi nie są właściwie
zabezpieczone, co naraża je na przeróżne ataki.
Jak chronić WLAN w takiej sytuacji – przykłady remediów:
• Ukrywanie identyfikatorów sieci (SSID);
• Nieużywanie WEP i WPA w trybie PSK;
• Stosowanie bezpiecznych protokołów https, sftp, ssh;
• Skonfigurowanie środowiska do stosowania VPN;
• Stosowanie 802.1x i obustronnego uwierzytelniania, jeśli to tylko
mozliwe;
• Uruchomienie systemu IDS w otoczeniu szczególnie ważnych AP;
Bluetooth
Standard IEEE 802.15.1, znany jako Bluetooth, definiuje metody
komunikacji bezprzewodowej w sieciach WPAN (Wireless Personal Area
Networks). Sieci WPAN są używane do przesyłania informacji na małe
odległości w obrębie małej, zaufanej grupy urządzeń – członków grupy. W
przeciwieństwie do WLAN, połączenie w obrębie WPAN nie używa prawie
żadnej infrastruktury do połączenia się ze światem zewnętrznym. Dzięki
temu można używać małych i tanich rozwiązań.
Minisieć Bluetooth (piconet)
Bluetooth ma typowy zasięg rzędu kilku metrów, ale pewne urządzenia
umożliwiają komunikację na odległości rzędu 100m. Pojawiły się
doniesienia o pokonaniu odległości 1.5 km. To świadczy o tym, że
komunikacja Bluetooth może być jednak narażona na ataki.
Protokół Bluetooth ma 3 tryby pracy:
• Brak wymuszenia aktywnego zabezpieczenia (tryb 1),
• Bezpieczeństwo usług (tryb 2), z dwoma pod-trybami: “niezaufane
urządzenie” i “zaufane urządzenie” – to ma dostęp do wszystkich
usług,
• Bezpieczeństwo na poziomie urządzenia (tryb 3):
o Usługi wymagają uwierzytelnienia i autoryzacji,
o Usługi wymagają uwierzytelnienia,
o Otwarte usługi (dla wszystkich urządzeń).
Kombinacje zabezpieczenia trybów pracy dla układu Master-Slave
W trybie 1 występuje brak zabezpieczeń i można go stosować w
niekrytycznych
aplikacjach.
Obowiązkowe
jest
podtrzymywanie
uwierzytelniania, ale wyzwanie nie będzie nigdy wysłane. Jeśli urządzenie
wspiera szyfrowanie, powinno zażądać jego włączenia do pracy.
W trybie 2 zapewniamy pewien poziom zabezpieczeń usług i aplikacje o
różnych wymaganiach mogą pracować równolegle. Usługi stają się
dostępne tylko dla autoryzowanych urządzeń. Reguły bezpieczeństwa są
wymuszane podczas ustanawiania kanału (L2CAP) lub połączenia (np.
SDP, RFCOMM).
W trybie 3 mamy sytuacje podobną do tej w trybie 2 – z tym wyjątkiem, że
zabezpieczenia są badane przed ustanowieniem kanału. Menedżer
połączeń LM (Link Manager) zapewnia jednolity poziom zabezpieczeń dla
wszystkich usług. Możliwe są 2 tryby pracy: wymuszone uwierzytelnianie
lub wymuszone uwierzytelnianie i szyfrowanie.
Podstawowe pojęcia dot. bezpieczeństwa w Bluetooth
Model bezpieczeństwa w Bluetooth bazuje na kryptografii symetrycznej do
uwierzytelniania, szyfrowania danych i generacji kluczy. Dwa urządzenia
muszą najpierw przeprowadzić uwierzytelnianie na poziomie połączenia
(link-level). Jako klucze szyfrujące (link-keys) są używane 128-bitowe,
losowe wartości przypisane do każdej pary urządzeń. Te klucze są
stosowane zarówno do uwierzytelniania – Klucz szyfrujący dane jest
wyprowadzony z tego klucza. Mamy kilka typów kluczy:
• Półtrwałe klucze (link keys):
o Kombinacyjne – wytworzone na podstawie danych
dostarczonych przez dwa urządzenia; utrzymywane tylko przez
te urządzenia;
o Jednostkowe – mogą być stosowane przez wiele urządzeń w
tym samym czasie; wytwarzane przez urządzenie do
stosowania z innymi urządzeniami.
• Tymczasowe (link keys) – używane do komunikatów typu broadcast
(bez uwierzytelniania); tylko członkowie minisieci mają ten klucz:
o Inicjalizacyjne – krótkoterminowe klucze tworzone i stosowane
podczas konfigurowania współpracy dwóch urządzeń;
o Główne (Master) – do ustawienia środowiska przed wysłaniem
zaszyfrowanego komunikatu typu broadcast w piconecie od
mastera do slave’ów.
• Szyfrujące:
o Encryption Key (EK) – główny klucz sterujący szyfrowaniem;
o Obcięty EK (Constrained Encryption Key - CEK) –
wyprowadzony z EK i podlegający ograniczeniom prawnym; od
8 do 128 bitów długości;
o Payload Key – wyprowadzony z CEK; służy do inicjacji
generatora klucza.
Urządzenie będące w stanie połączenia akceptuje kontakty od wszystkich
innych urządzeń. Stwarza to możliwość ataków typu DoS flood.
Ustanawianie połączenia Bluetooth
Gdy dwa urządzenia chcą wymienić dane, zaczynają proces konfiguracji.
W tej fazie (pairing process) jest tworzony klucz połączenia (link key).
Użytkownik musi manualnie wprowadzić PIN (do 128 bitów długości),
często krótszy (ok. 4 cyfry). Niektóre urządzenia mają wbudowane numery
PIN I wówczas uzgadnianie klucza przebiega automatycznie. Jest to
jednak zagrożenie dla bezpieczeństwa – jeśli napastnik uzyska dostęp do
takiego PIN, będzie miał nieuprawniony dostęp do sieci! Klucz
inicjalizacyjny jest generowany na podstawie PIN, które są sprawdzane
pod kątem identyczności. Jeśli tak jest, to 128-bitowy klucz połączenia po
wygenerowaniu jest przechowywany w obu urządzeniach. Ta faza nie musi
być powtarzana, jeśli są nadal przechowywane klucze połączeniowe.
Uwierzytelnianie (challenge-response) przebiega w jednym kierunku.
Sprawdzający wysyła wyzwanie i sprawdza otrzymaną odpowiedź, która
powinna być zaszyfrowana kluczem połączeniowym. W przypadku
wzajemnego uwierzytelniania proces musi być powtórzony z zamianą ról.
W celu ochrony przed atakami typu DoS, czas odstępu pomiędzy kolejnymi
próbami uwierzytelniania narasta wykładniczo do pewnej wartości
maksymalnej. Nowy klucz szyfrujący jest wytwarzany na podstawie klucza
połączenia, dla każdej sesji inny. Klucz CEK zawsze będą miały 128 bitów,
ale ich rzeczywista entropia waha się od 8 do 128 bitów.
Szyfrowanie danych w Bluetooth odbywa się przy użyciu szyfru
strumieniowego, zaimplementowanego sprzętowo. Klucz PK (inicjalizator
generatora klucza szyfru strumieniowego) jest wytwarzany przy użyciu 4
ciągów:
• Adresu urządzenia BD_ADDR – 48 bitów;
• Prywatny CEK (Constrained Encryption Key), od 8 do 128 bitów;
• Pseudolosowa liczba RAND, często zmieniana liczba 128-bitowa
wytworzona przez urządzenie;
• Zegar – 26 bitów.
Klucz PK jest ładowany do generatora klucza szyfru strumieniowego w celu
rozpoczęcia szyfrowania. Klucz szyfrujący jest sumowany (XOR) z tekstem
jawnym lub szyfrogramem w celu wytworzenia, odpowiednio, szyfrogramu
lub tekstu jawnego. Suma kontrolna CRC jest podawana na szyfrator
razem z tekstem jawnym. Podobnie jak w 802.11, nagłówek pakietu nie jest
szyfrowany.
Ataki na Bluetooth
Stosunkowo niedojrzała technologia daje pewne możliwości ataków na
protokół. Niektóre z nich są typowe dla wszystkich protokołów tej klasy
(podsłuchiwanie i kryptoanaliza), a pozostałe możliwe dzięki
niedoskonałościom implementacji.
Podsłuchiwanie
Bardzo rzadko zdarza się połączenie Bluetooth nieszyfrowane, ale dla
szyfrowanych są możliwe różne ataki:
• Korelacyjne – skupiają się na odkryciu stanu początkowego
generatora klucza, z użyciem liczby operacji rzędu np. 263 do analizy
234 bitów.
• Układy równań nieliniowych – również bardzo czasochłonne.
Sabotaż na danych
Atak podobny do podmiany bitów w sieciach 802.11. Ponieważ w Bluetooth
algorytmy używają funkcji XOR z użyciem jako argumentów bitów klucza i
tekstu jawnego, to po przechwyceniu ramki można dodać do niej modulo 2
wybrany specjalnie ciąg bitów. Algorytm CRC ma liniowy charakter, więc te
zmiany nie będą zauważalne. Możliwy jest także atak brutalny (jak
zawsze). Szanse na niewykrycie zmiany wynoszą 2-16, co jest wartością
znaczącą. Ponadto podczas takiego ataku znacząco spadnie
przepustowość sieci.
Ataki typu Denial of Service
Wiele urządzeń blokuje się i wchodzi w stan ponownej inicjalizacji po
otrzymaniu zniekształconej wiadomości (np. Nokia 6310i). Nie można nad
tym zapanować, tak więc atak jest niezwykle skuteczny.
Typowym atakiem jest BlueSmack, korzystający z funkcji echo protokołu
L2CAP. Zniekształcona wiadomość przesłana do urządzenia ofiary
powoduje przepełnienie bufora.
SNARF
Niektóre urządzenia pozwalają zewnętrznym użytkownikom na dołączenie
się do Bluetooth bez ostrzeżenia o tym właściciela urządzenia. Dzięki temu
można wykraść niekiedy wartościowe dane – zawartość książki numerów,
kalendarza, a nawet numer IMEI urządzenia. Ponadto zmodyfikowane
dane mogą być odesłane z powrotem do urządzenia mobilnego bez
pozostawienia jakiegokolwiek śladu ingerencji. Lekarstwem jest
ograniczenie widzialności urządzenia.
Bluetooth Backdoor
Ten atak jest przeprowadzany podczas nawiązywania połączenia. Po
udanym nawiązaniu łączności informacja o nim jest wymazywana z
pamięci ofiary, ale klucz pozostaje zachowany w bazie danych. Od tego
momentu napastnik może swobodnie wnikać do urządzenia ofiary bez
ostrzeżenia. W ten sposób mogą być także infiltrowane zaufane usługi
takie jak modemy i bramy WAP/Internet.
Bluebug
Atak polega na utworzeniu połączenia dla łącza szeregowego, dającego
dostęp do zestawu poleceń typu “AT”. To pozwala napastnikowi na prawie
pełne przejęcie funkcji telefonu: wysyłanie SMS-ów, prowadzenie rozmów,
zarządzanie połączeniami, dostęp do usług i bram, a nawet obserwowanie
połączeń GSM w zasięgu urządzenia.
Bluejacking
Bluejacking oznacza działanie, w którym napastnik zmyślnie przekonuje
właściciela urządzenia, aby ustanowił połączenie z urządzeniem
atakującego. Scenariusz opiera się na poziomie naiwności ofiary. Po
ustanowieniu połączenia są wyświetlane nazwy urządzeń. Przeznaczone
na to pole może mieć do 248 znaków, tak więc wiele ludzi machinalnie
mogą wpisać swój numer PIN po ujrzeniu komunikatu do tego
zachęcającego (typowy atak wykorzystujący psychoanalizę).
Wirusy
Wirusy I robaki stanowią poważne zagrożenie dla sieci Bluetooth.
Ponieważ aktualizacja software urządzeń jest trudna, a oprogramowanie
antywirusowe pochłania znaczne zasoby urządzenia, to mamy dość
kłopotliwą sytuację. Jednym z popularnych wirusów w sieci Bluetooth jest
“Cabir”, zaprojektowany dla telefonów komórkowych Symbian 60.
Inne wirusy typu Symbian:
• Skulls – wirus typu trojan dla Symbian 60, udający aplikację
Macromedia Flash Player; pozostawia kopię robaka Cabir i blokuje
inne aplikacje;
• Lasco.A – robak dla Symbian 60; replikuje się. Wysyłając pliki
zawierające jego kod;
• MetalGear – tez robak typu Cabir; udaje grę na urządzenia Symbian.
Problemy związane z przechowywaniem kluczy
Ujawnienie kluczy tajnych niesie duże zagrożenie dla ich właścicieli.
Napastnik może podszyć się pod taką osobę, pod warunkiem, że zna adres
urządzenia ofiary. Klucze Bluetooth są bardziej podatne na kradzież, bo
niekiedy są przechowywane jawnie w plikach urządzeń takich jak PDA.
Śledzenie urządzeń
• Osobiste urządzenie Bluetoot może pomóc hakerom lub
przestępcom namierzyć jego właściciela. Najbardziej widocznym
unikalnym identyfikatorem jest BD_ADDR. Okresowo urządzenie
wysyła swój adres do sieci w ramach ramek FHS (Frequency Hop
Synchronization). BD_ADDR ma 48 bitów długości i składa się z
trzech części: mniej znacząca część adresu LAP (24 msb), bardziej
znacząca część adresu (8 środkowych bitów) i część nieznacząca
(16 lsb). Mniej znacząca część adresu jest podstawą do budowy
kodów dostępu, przesyłanych na początku ramki.
Przechwycone losowo ramki mogą pozwolić na identyfikację urządzenia i
jego właściciela. Wyróżniamy kilka scenariuszy ataków.
Podsumowanie
Większość popularnych ataków w Bluetooth następuje w trybie
poszukiwania urządzeń I nawiązywania połączenia. Częściowym
lekarstwem jest przełączenie urządzenia na tryb blokujący jego
poszukiwanie. Wówczas łączność jest możliwa tylko przy znajomości jego
BD_ADDR. Jednak najbezpieczniej wyłączyć Bluetooth I nawiązywać
połączenia tylko wtedy, gdy to jest niezbędne. Ważną kwestią jest wybór
długiego kodu PIN.
Opis WiMax
W 2001 r. opublikowano standard 802.16, zwany WiMax, który definiuje
technologię
metropolitarnych
sieci
bezprzewodowych
(WMAN).
Teoretyczna prędkość transmisji to 75Mb/s, a odległości pomiędzy
stacjami mogą wynosić kilkanaście kilometrów. To świadczy o możliwości
zastąpienia sieci przewodowych. Istnieją dwie wersje WiMax:
• starsza, stacjonarna wersja (2004) - 802.16d, i
• Nowa wersja mobilna, ciągle rozwijana - 802.16e.
Protokół 802.16e (Mobile WiMax) ma szereg udoskonaleń w stosunku do
normy 802.16d, a najbardziej znaczące to wsparcie mobilności, modulacja
OFDMA do transmisji i zaawansowane techniki bezpieczeństwa włącznie z
zarządzaniem kluczami PKMv2.
Typowa sieć WiMax składa się z przynajmniej jednej stacji bazowej(BS) i
wielu stacji klienckich SS (Subscriber Station). Protokół 802.16 składa się z
czterech warstw:
• fizyczna,
• podwarstwa MAC bezpieczeństwa,
• ogólna podwarstwa MAC (MAC CPS), i
• podwarstwa konwergencji MAC (MAC CS).
Warstwa fizyczna dostarcza zunifikowanego interfejsu dla warstwy MAC.
Warstwy protokołu 802.16
Podstawowe założenia dot.bezpieczeństwa
Dla WiMax wyróżniamy 2 podstawowe protokoły bezpieczeństwa:
• protokół opakowujący (ecapsulation), który definiuje zestaw
parametrów kryptograficznych uzgadnianych pomiędzy BS i SS
(protokoły szyfrujące dane i uwierzytelniania oraz zasady ich
stosowania);
• protokół zarządzania kluczami, definiujący metodę zarządzania
kluczami podczas połączenia; w 802.16d jest stosowany PKMv1
(Privacy Key Management ver. 1) lub w 802.16e protokół PKMv2.
Na poziomie MAC wykorzystuje się pojęcie Security Associations (SA),
używane do ustanowienia komunikacji pomiędzy BS i SS. Obejmuje ono
klucze szyfrujące ruch (TEK – Traffic Encryption Key) i wartości IV dla
szyfrów. W standardzie 802.16 zdefiniowano trzy typy SA:
• Główne (Primary) SA: unikalne dla każdego SS; ustanowione
podczas inicjalizacji SS; identyfikator SA (SAID) ma wartość
ustawioną w korelacji z identyfikatorem połączenia (CID) w którym
SS działa;
• Statyczne SA: używany do celów wewnętrznych BS;
• Dynamiczne SA: tworzone i niszczone razem ze zmianami w ruchu
(komunikacji, połączeniach).
Klucze przypisane BS i związane z danym SA mają ograniczony czas
ważności i SS powinien ubiegać się o nowe klucze przed upłynięciem tego
czasu.
PKMv1
PKM – protokół zarządzania kluczami pomiędzy BS i SS obejmuje
okresową ponowną autoryzację i odświeżenie klucza. W PKM korzysta się
z certyfikatów X.509 i szyfrowania 3DES w architekturze klient-serwer,
gdzie BS jest serwerem, a SS klientem. Najpierw ustanawiany jest
współdzielony tajny klucz AK (Authorization Key) pomiędzy BS i SS,
używany do wymiany i odświeżania kluczy TEK. Każda stacja SS ma
certyfikat typu X.509 wydany przez wytwórcę sprzętu i związany z
numerem urządzenia. Klucz publiczny RSA z tego certyfikatu jest
bezpośrednio wbudowany w sprzęt, razem z dodatkowymi informacjami
takimi jak adres MAC, numer seryjny i identyfikator producenta. Po
otrzymaniu kopii certyfikatu urządzenia SS stacja bazowa BS sprawdza
jego składnię i wysyła klucz AK zaszyfrowany kluczem publicznym SS.
Stacja SS używa następnie swego klucza prywatnego do odszyfrowania
AK. Przechwycenie tej wiadomości nie zagraża niczemu, ponieważ tylko
SS dysponuje odpowiednim kluczem prywatnym. Wbudowanie klucza
prywatnego w sprzęcie zapobiega kradzieży tożsamości. Przestrzeń AK
ma 16 pozycji, ponieważ nr AK w wiadomościach MAC ma 4 bity. BS stara
się utrzymać dwa klucze AK w danym czasie w celu podtrzymania
synchronizacji.
Zarządzanie kluczem AK pomiędzy BS i SS
W następnej fazie klucze TEK musi uzyskać SS. Każdy z ciągów SAID
włączonych w komunikacie autoryzacyjnym z BS buduje nowy stan
generatora TEK w SS. Każda z tych maszyn zarządza materiałem klucza
dla odpowiedniego SAID (włączając odświeżanie). Aby uzyskać klucze
TEK, SS używa stosownej wiadomości zawierającej, m.in., ciąg SAID dla
którego żąda klucza i skrót wiadomości HMAC, uwierzytelniający to
żądanie. BS sprawdza skrót HMAC i w wypadku zgodności wysyła nowy
materiał klucza do SS, włączając TEK (chroniony za pomocą szyfrowania
3DES), wektor IV dla trybu CBC, sekwencje klucza dla przesyłanego TEK i
jego okres ważności. Szyfrowanie 3-DES używa klucza KEK (Encryption
Key), wyprowadzonego z ciągu AK.
Zarządzanie kluczami TEK pomiędzy SS i BS
Klucze AK i TEK mają nachodzące na siebie okresy ważności, aby
umożliwić przejście od starego materiału klucza do nowego. Przełączenie
AK jest względnie proste, ponieważ wiadomości zaszyfrowane kluczem AK
wędrują w jednym kierunku - od BS do SS. Klucz TEK jest używany do
szyfrowania obustronnej komunikacji, więc przełączanie kluczy jest bardziej
złożone.
Wybrane problemy związane z protokołem PKMv1
1. W PKMv1 korzysta się z DES i 3-DES. 3-DES można uznać za całkiem
bezpieczny, natomiast DES został złamany.
2. Ponadto w protokole PKMv1 brakuje uwierzytelniania BS. Każdy
użytkownik dysponujący odpowiednim sprzętem może zbudować
fałszywą stacje bazową BS.
3. Możliwe jest także przeprowadzenie wielu typów ataków
powtórzeniowych na PKMv1. Szczególnie komunikaty zarządzające w
żaden sposób nie są przed nimi zabezpieczone.
4. Funkcja HMAC to SHA-1, która to jest jednak podatna na ataki
kolizyjne. Na szczęście skróty są wyliczane na podstawie kluczy
wyprowadzonych z kluczy AK, które maja losowy charakter.
5. Innym problemem jest mała wydajność algorytmu 3-DES, szczególnie w
porównaniu z AES.
6. Możliwe jest także przeprowadzenie wielu ataków typu DoS.
PKMv2
PKMv2 to znacznie poprawiona wersja protokołu PKM. Najbardziej
znaczącą zmianą jest użycie AES w trybie CCM (Counter Mode Cipher
Block Chaining Message Authentication Code) do wszystkich szyfrowań.
Tryb CCM specjalnie zaprojektowano do pakietowej transmisji danych.
Wątpliwej jakości protokół HMAC zastąpiono CMAC (Cipher based
Message Authentication Code). Ponadto jest możliwe obustronne
uwierzytelnienie SS i BS. Procesy uwierzytelniania i autoryzacji zostały
rozdzielone, dając lepszy margines bezpieczeństwa. Uwierzytelnianie
bazuje na protokole EAP. Użytkownicy mogą także wybrać RSA do
uwierzytelniania.