WEP - Zabezpečení sítě Wi-Fi Ondřej Vašíček 9. května 2007 1 Úvod Bezdrátové sítě jsou mnohem zranitelnější vůči narušení než jejich kabelové protějšky. Některá z rizik jsou obdobná jako v případě kabelových sít, některá jsou ještě zesílena bezdrátovou komunikací a některá se týkají výlučně bezdrátových sítí. Ve většině případů získání přístupu na kabelovou sít vyžaduje přístup do budovy, kterou je možno zabezpečit. Pokud existují přiměřená opatření pro zabezpečení budovy, existuje i určité ochranné opatření pro sít. V případě bezdrátové sítě je tomu však jinak. Bezdrátové sítě používají k přenosu rádiové rozhraní a to není není možné zabezpečit stejným způsobem, jakým je možno zabezpečit budovu. Přístupnost média je faktor, který má za následek větší zranitelnost bezdrátových sítí než sítí kabelových. Dostupnost a obtížnost zabezpečení přenosového média zvyšuje rizika útoku na bezdrátovou sít, která jsou nad rámcem rizik, jimž čelí kabelová sít. Jakmile však dojde k narušení kabelové sítě - tedy k získání přístupu na fyzické médium - dané riziko pro sít není větší nebo menší, než by tomu bylo, pokud by se jednalo o sít bezdrátovou. V tomto okamžiku jsou již rizika stejná. Nové riziko, které představuje bezdrátová sít, je riziko udržení. Omezení pokrytí v určitém prostoru je obtížné. Typickými hrozbami souvisejícími s bezdrátovými sítěmi jsou narušení utajení, ztráta integrity a odmítnutí služby (DoS). Narušení utajení a ztráta integrity nastávají tehdy, když je možno daný přenos zachytit, přečíst a narušit jeho obsah nebo když je možno tento přenos použít ke krádeži přenosu. DoS může nastat, když narušitel získá schopnost blokovat nebo narušit vysílané signály [1]. 1
2 Metody ochrany wi-fi sítí Služby zabezpečení wi-fi sítí jsou zajišt ovány převážně protokolem WEP. WEP je součástí specifikace IEEE 802.11 z roku 1999, byl určen k ochraně komunikace mezi wi-fi zařízením a přístupovým bodem. V roce 2003 byl WEP nahrazen protokolem WPA (Wi-Fi Protected Access), který byl v roce 2004 přijat jako standard IEEE 802.11. Specifikace IEEE definovala tři základní bezpečnostní služby, které jsou poskytovány protokolem WEP, jimiž jsou: - autentizace - utajení - integrita 2.1 WEP (Wired Equivalent Privacy) Protokol WEP nebyl nikdy navržen jako všezahrnující a robustní bezpečnostní protokol, ale spíše jako protokol poskytující stejnou úroveň utajení jaká je k dispozici na kabelových sítích. Algoritmus protokolu WEP se používá pro ochranu bezdrátové komunikace před odposloucháním tím, že se provádí šifrování dat přenášených po sítí. A přestože se nejedná o explicitní cíl tohoto protokolu, rovněž tento protokol napomáhá při povolování přístupu na bezdrátovou sít. WEP spoléhá na tajný klíč sdílený mezi bezdrátovými klienty a přístupovým bodem. Tento klíč se používá k šifrování paketů předtím, než jsou vysílány. Používá se kontrola integrity pro zajištění toho, zda paket nebyl během přenosu upravován. Vlastní proces, jak je tento klíč sdílen mezi zařízením typu klient a přístupovým bodem, není definován v normě 802.11. Konkrétní implementace se ponechává na výrobcích wi-fi zařízení. Většina wi-fi produktů používá jediný klíč, který je sdílen mezi všemi zařízeními na bezdrátové lokální síti. Protokol WEP podporuje velikosti šifrovacích klíčů v délce od 60 do 104 bitů. Čím větší je velkost klíče, tím vyšší je úroveň šifrování. Mnoho dodavatelů se však odkazuje na 40-bitové a 104-bitové šifrování jako na 64-bitové, respektive 128-bitové šifrování. Dalších 24 bitů totiž představuje inicializační vektor (IV) požadovaný pro řizení přenosů WEP 1 [1]. 2.1.1 Autentizace Wi-fi specifikace pro WEP definuje dva obecné způsoby, jimiž může autentizovat uživatele, který se pokouší připojit k bezdrátové lokální síti. Jedna metoda je založena na použití šifrování, zatímco druhá šifrování nepoužívá. Postup využívající šifrování spočívá v elementární šifrovací technice, která neumožňuje vzájemnou autentizaci. Jinými slovy, klient neprovádí autentizeci přístupového bodu, a proto nemá k dispozici žádný způsob, jak se 1 Některé výrobky používají až 256-bitové šifrování. 2
Bezdrátová stanice Inicializační vektor 24-bit Sdílený klíč Sloučený IV Přenášená data a klíč Radiové rozhraní Přistupový bod Sloučený IV a klíč Sdílený klíč Algoritmus generování kontrolního součtu CRC CRC Přenášená data Klíčovací stream XOR Vstup čistého textu Algoritmus RC4 Zašifrovaná data Algoritmus RC4 XOR Klíčovací stream CRC Přenášená data Výstup čistého textu Obrázek 1: Zabezpečení pomoci algoritmu RC4 ujistit, že komunikuje s oprávněným přístupovým bodem. Algoritmem používaným pro šifrování je proudová šifra RC4. Základní způsob, jakým se provádí autentizace klientů je založen na jednostranném schématu dotazu/odpověd. V podstatě lze říci, že přístupový bod pošle náhodnou výzvu klientovi a ten odpoví výzvou zašifrovanou podle šifrovacího klíče (klíče WEP), který klient s přístupovým bodem sdílí. Přístupový bod dešifruje odpověd od klienta a jestliže dešifrovaná hodnota odpovídá odeslané výzvě, povolí klientovy přístup. Druhá metoda autentizace nepoužívá šifrování. Jestliže je WEP na přístupovém bodu vypnut, bude se používat právě tato metoda autentizace. V případě použití této metody je možné provést autentizaci bezdrátového klienta pomocí jedné ze dvou metod, jež se nazývají otevřená autentizace systému nebo uzavřená autentizace systému. Obě tyto metody jsou založeny na ověřovacích schématech založených na identitě a obě jsou zranitelné vůči útokům. Klient, který se chce připojit na sít za použití metody otevřené autentizace systému, jednoduše vyšle prázdný řetězec místo identifikátoru SSID (Service Set IDentity. Tento přístup je rovněž někdy nazýván jako nulová (NULL) autentizace. Klient, který se chce připojit na sít za použití metody uzavřené autentizace systému, jednoduše vyšle SSID bezdrátové sítě. Neprovede se žádná reálná autentizace, jak je zřejmé z popisu těchto dvou postupů. V důsledku toho žádná z těchto metod nenabízí robustní zabezpečení proti neoprávněnému přístupu. Sítě nakonfigurované pro práci tímto způsobem jsou extrémně zranitelné vůči potencionálním narušitelům [1]. 2.1.2 Utajení Utajení nebo důvěrnost se v rámci protokolu WEP rovněž zajišt uje pomocí šifrovacích technik, které používají algoritmus symetrického klíče RC4. K daným datům se přidává klíčovací tok (keystream) a provádí šifrování celého paketu s výjimkou informací spojové vrstvy, které usnadňují komunikaci mezi bezdrátovým klientem a přístupovým bodem. Jinými slovy platí, že IP adresa, TCP porty a všechny další vrstvy na nimi jsou šifrovány, 3
ale MAC adresy šifrovány nejsou [1]. 2.1.3 Integrita Záměrem služby zabezpečení integrity je zjištění a odmítnutí všech zpráv, které mohly být při přenosu narušeny. Tato služba používá kontrolu (CRC, Cyclic Redundancy Check, nebo frame check sequence). Předtím, než dojde k vyslání zprávy, dojde k vypočtu CRC a jeho přidání. V následujícím kroku je celá zpráva zašifrována za použití služby utajení a pak je odeslána. Příjemce provede dešifrování zpráv, vypočítá vlastní CRC a porovná výsledek s odeslanou hodnotou. Pokud odpovídají, je daná zpráva akceptována. Pokud neodpovídají, zpráva je odmítnuta. Předtím, než dojde k vyslání zprávy, dojde k vypočtu CRC a jeho přidání. V následujícím kroku je celá zpráva zašifrována za použití služby utajení a pak je odeslána. Příjemce provede dešifrování zpráv, vypočítá vlastní CRC a porovná výsledek s odeslanou hodnotou. Pokud odpovídají, je daná zpráva akceptována. Pokud neodpovídají, zpráva je odmítnuta. Daná norma se nezabývala řešením dalších služeb zabezpečení, jako je prověření (audit), oprávnění (authorization) a nepopření (nonrepudiation), které šikovným způsobem vylučují, aby odesílatel nebo příjemce popřeli odeslání nebo obržení zprávy. Jedná se o ubezpečení, že obě strany transakce budou poctivé v souvislosti se svými kroky a nezpochybní svou dohodu. Tyto další služby zabezpečení jsou stejně důležité jako dané tři služby zakomponované v protokolu WEP. Například význam nepopření je možno dobře pozorovat u bezdrátové transakce. V kabelovém systému platí, že jsou-li dvě strany připojeny k jednomu segmentu a jsou-li jedinými stranami na tomto spoji, je obtížnější popřít odeslání zprávy, která souhlasí s transakcí. V bezdrátovém světě by tato situace mohla představovat určitý problém. Vzhledem k povaze média je obtížnější prokázat, že nějaké konkrétní zařízení odeslalo určitou konkrétní transakci, nebot další zařízení má možnost maskovat se jako něco, co ve skutečnosti není. Z tohoto důvodu má nepopření svůj význam ve světě bezdrátové komunikace [1]. 2.1.4 Struktura rámce WEP Když je použit protokol WEP, je tělo rámce rozšířeno o osm bajtů. Čtyři bajty jsou použity pro záhlaví inicializačního vektoru a další čtyři bajty jsou použity na ICV (Integrity Check Value). Na obrázku 2 je zobrazena struktura rámce. IV header Frame header Initialization vector P A D Key ID Frame body Integrity check value FCS Obrázek 2: Rámec WEP [2] 4
Pro záhlaví IV jsou použity tři bajty, čtvrtý bajt obsahuje identifikaci klíče a výplň. V případě, že je použit standardní klíč, pole Key ID určuje standardní klíč, který bude použit k zašifrování rámce. Integrita datového rámce je zajištěna pomocí výpočtu CRC, který je připojen k tělu rámce a chráněn RC4 [2]. 2.2 Slabiny protokolu WEP Protokol WEP je velmi omezený a zanechává mnoho mezer, které je třeba odstranit. WEP zajišt uje integritu paketu při přenosu přidáním pole pro kontrolu integrity (IC, Integrity Check) do paketu. Jak již bylo uvedeno výše, spočívá tato kontrola ve výpočtu CRC. S tím, jak je každá zpráva vysílána, provádí se její šifrování za použití pseudonáhodných klíčů. Je tedy zřejmé, že zabezpečení systému je zčásti založeno na náhodnosti klíče. Jak je tedy zajištěna náhodnost klíče? Aby bylo zajištěno, že žádné dvě zprávy se šifrovaným textem nebudou šifrovány za použití stejného klíče, přidává se IV o délce 24 bitů ke sdílenému tajnému klíči pro vytvoření RC4 klíče různého pro každý paket. Určitá pravděpodobnost, že budeme mít dva šifrovací texty zašifrované stejným klíčem, však vždy existuje. To se stává tehdy, když dvě stanice vygenerují stejný IV, a když k tomu dojde, říká se, že došlo ke kolizi IV. V případě použití 24-bitového IV existuje pravděpodobnost, že stejný IV se bude opakovat každých 5000 paketů [3]. Většina WEP systémů vyžaduje klíč v hexadecimálním formátu. Někteří uživatelé vybírají klíče, které tvoří znaky omezené abecedy 0-9, A-F hexadecimální abecedy, například CODE CODE CODE CODE. Takové klíče jsou často snadno uhodnutelné [3]. V srpnu 2001 publikovali S. Fluhrer, Itsik Mantin a Adi Shamir článek s názvem Weaknesses in the Key Scheduling Algorithm of RC4.Autoři v tomto článku ukazují na slabiny algoritmu RC4. V závěru tohoto článku teoreticky popisují způsob, jak zaútočit na WEP. Ukazují na možnost získání klíče takzvaným pasivním útokem zaměřeným na dešifrováním přenosů na základě statistické analýzy. Pouhým odposloucháváním provozu mezi přípojným bodem a klientem je možné zjistit klíč. Doba potřebná k zjištění klíče touto metodou je závislá na množství přenesených dat, ale většinou to není více než jedna minuta. Již koncem měsíce srpna 2001 J. Bruestle a B. Hegerle uvolnili open source program AirSnort, který umožňuje určit a nahradit WEP klíč pomocí sledování provozu na síti [2]. Další způsob představují aktivní útoky, zaměřené na vkládání nových přenosů z neautorizovaných klientů na základě znalostí prostého textu, které mohly být získány za použití techniky pasivního útoku. Se znalostmi prostého textu pro jednu šifrovanou zprávu může narušitel zkonstruovat správné zašifrované pakety. Důsledky tohoto útoku jsou dalekosáhlé. Díky této znalosti může narušitel selektivně manipulovat se zprávou (například změnit nějaký příkaz), může provést znovu výpočet CRC, znovu zašifrovat zprávu a odeslat ji dle své libosti. Přijímací přístupový bod nemá žádnou možnost, jak zjistit, že daná zpráva byla změněna, nebot CRC má správnou hodnotu. Dále jsou pak možné aktivní útoky zaměřené na dešifrování zpráv na základě obestění přístupového bodu. Nebo útoky založené na analýze zhruba jednodenního provozu. Shromážděná data pak byla použita k automatizovanému dešifrování provozu v reálném čase. Tento typ 5
útoku se někdy nazývá sestavení slovníku [1, 3]. 3 Závěr WEP poskytuje minimální zabezpečení bezdrátové sítě. Tento protokol se dnes spíše hodí k odrazení náhodného a nezkušeného narušitele. Ani použití delšího klíče nezaručí větší bezpečnost, narušitel musí pouze odchytit více paketů. Na internetu jsou dostupné volně stažitelné programy, které umožňují využít slabin protokolu WEP a snadno zaútočit na bezdrátovou sít, tímto protokolem zabezpečenou. Například v roce 2005 skupina z U.S. Federal Bureau of Investigation demonstrovala prolomení WEP ochrany sítě během 3 minut s použitím veřejně dostupných nástrojů [3]. Některé problémy WEPu řeší jeho rozšířená verze WEP2. V tomto protokolu byl rozšířen IV a zesíleno 128-bitové šifrování. Přesto protokol WEP2 případné narušitele pouze zpomalí. Pro zajištění lepšího zabezpečení bezdrátového přenosu je výhodnější použít protokolu WPA nebo WPA2. Avšak u některých starších přístupových bodů je použití WPA nebo WPA2 podmíněno nahráním novějšího firmwaru. 6
Literatura [1] Brisbin, S. Postavte si svou vlastni wi-fi sít, Praha: Neocortex, spol. s r. o., 2003. [2] Gast, M. S. 802.11 Wireless network: The definitive guide, Sebastopol: O Relly & Associates, Inc., 2002 [3] http://en.wikipedia.org/wiki/wired Equivalent Privacy 7