802.11i

From EIK wiki

802.11i või IEEE 802.11i-2004 on parandus algsele IEEE 802.11 standardile. Selle algne visand sai kinnitatud 24. Juunil 2004. See standard spetsifitseerib traadita võrkude turva mehhanisme. Antud parandus asendas Autentimis ja privaatsus (ingl k. Authentication and privacy) punkti originaalses standardis, mis kirjeldas detailsemalt Turva punkti. Antud standard soovitas mitte kasutada selleks ajaks murtud WEP protokolli. See parandus lisati hiljem publitseeritud IEEE 802.11-2007 standardisse.

802.11i asendab WEPi (ingl. Wired Equivalent Privacy), millel esinesid väga kriitilised turvaaugud. WPA (ingl Wi-Fi Protected Access) käidi välja Wi-Fi allianssi poolt vahepealseks lahenduseks WEPi turvaaukude jaoks. WPA rakendas alamosa välja töötatavast 802.11i standardist. Wi-Fi allianss nimetab nende täielikku 802.11i standardit kui WPA2, samuti tuntud ka kui RSN (ingl k. Robust Security Network). 802.11i kasutab AESi (ingl k. Advanced Encryption Standard) blokk šihvrit, samal ajal kui WEP ja WPA kasutavad RC4 voo šihvrit.

Olulised uuendused 802.11i standardis on sisukorra (ingl k. Contents) punktides 1-4.

Protokolli toimimine

IEEE 802.11i motifitseerib IEEE 802.11-1999 standardit, pakkudes RSNi mis sõltub IEEE 802.1X standardist, 4-Poolsest kätlustest ja grupi võtme kätlusest, et luua ja muuta sobivaid krüptograafilisi võtmeid. RSN on turvatud võrk, mis lubab luua ainult robustseid turvalise võrgu assotsiatsioone (RSNA ingl k. Robust Security Network Associations), mis teatud tüüpi assotsiatsoonid mida kasutavad paar STAsid, autentimis protseduur sisaldab või on seotud 4-Poolse kätlusega. Samuti pakub WPA2 kahte RSNA poolset andmete konfidentsiaalsust ja terviklust tagavat protokolli, TKIP ja CCMP, kus CCMP rakendamine on kohustuslik.

802.1X

IEEE 802.1X määratleb EAP (ingl k. Extensible Authentication Protocol) kapseldamist üle IEEE 802 protokolli, see on ühtlasi tuntud ka kui "EAP üle kohtvõrgu" või EAPOL (ingl k. Extensible Authentication Protocol over LAN). EAPOL oli algselt disainitud IEEE 802.3 jaoks, kuid hiljem selgus, et antud protokoll sobib ka teisele IEEE 802 kohtvõrgu tehnoloogiatele, näiteks nagu IEEE 802.11 ja FDDI (ingl k. Fiber Distributed Data Interface). EAPOLi protokolli muudeti ka IEEE 802.1AE (MACSec) ja IEEE 802.1AR (ingl k. Secure Device Identity, DevID)

802.1X autentimine koosneb kolmest osast. Paluja (ingl k. supplicant), autentija (ingl k. authenticator), autentimisserver (ingl k. authentication server). Palujaks on enamasti klient seade (näiteks sülearvuti) mis soovib ennast ühendada kohtvõrku või traadita kohtvõrku. Autentijaks on võrguseade, näiteks nagu switch või AP (ingl k. Wireless Access Point) ja autentimisserveriks on host millel jookseb RADIUS ja EAPd toetav tarkvara.


Tüüpiline autentimis protsess koosneb järgnevatest osadest:

  1. Initsialiseerimine - Uue kliendi tuvastamisel, avatakse port antud port switchil kuhu soovitakse ühenduda ja pannakse see "volitamata" olekusse. Selles olekus lubatakse ainult 802.1X liiklust. Igasugune muu nagu DHCP ja HTTP liiklus blokeeritakse (ingl k. drop).
  2. Initsiatsioon - Autentimise initseerimiseks saadab autentija perioodiliselt EAP-Request Identity kaadreid spetsiaalsele Layer 2 aadressile lokaalses võrgu segmendis. Paluja kuulab sellel aadressil ja antud kaadri kättesaamisel vastab EAP-Response Identity kaadriga mis sisaldab identifikaatorit nagu näiteks kasutaja ID. Autentija kapseldab selle identiteedi vastuse RADIUS Access-Request paketti ja edastab selle autentimisserverile. Paluja võib ka ise initseerida või restartida autentimis protsessi, saates EAPOL-Start kaadri autentijale, mis vastab sellele EAP-Request Identity kaadriga. :)
  3. Läbirääkimine (ingl k. Negotiation) - (Tehniliselt EAP läbirääkimine) Autentimisserver saadab autentijale vastuse (kapseldatud RADIUS Access-Challenge paketis), mis sisaldab endas EAP päringut milles on spetsifitseeritud EAP meetod (Teatud EAP baasil autentimise tüüp, mida server soovib, et paluja teeks). Autentija kapseldab EAP päringu EAPOL kaadrisse ja saadab selle palujale. Siinkohal võib paluja vastata NAKiga (ingl k. Not-Acknowledged) ja vastata EAP meetoditega mida ta soovib teha, või alustada päritud EAP meetodiga.
  4. Autentimine - Kui autentimisserver ja paluja nõustuvad EAP meetodi suhtes, siis vahetavad nad EAP Request ja Response pakette, mida tõlgib autentija, kuni autentimis server vastab kas EAP-Success sõnumiga (kapseldatud RADIUS Access-Accept paketis) või EAP-Failure sõnumiga (kapseldatud RADIUS Access-Reject paketis). Kui autentimine õnnestub, siis autentija seab porti staatuse "volitatud" olekusse ja normaalne liiklus on lubatud. Kui aga autentimine ebaõnnestub siis port jääb ikka "volitamata" olekusse, blokeerides jällegi kogu liikluse v.a. EAP liiklus.

Nelja-pidine kätlus (ingl k. Four-Way Handshake)

Autentimis protsessil tuleb silmas pidada 2 asja: AP (ingl k. Access Point) peab ikkagi ennast autentima STAle (traadita kliendi seade) ja genereerida vastavad võtmed võrguliikluse krüpteerimiseks. Algeline EAP vahetus on andnud küll jagatud salajase PMK (ingl k. Pairwise Master Key) võtme. See võti on aga kasutusel kogu sessiooni vältel ja peaks olema võimalikult vähe paljastatud. Sedapuhku aga kasutatakse nelja-pidist kätlust, et luua uus PTK (ingl k. Pairwise Transient Key). PTK võti genereeritakse liites (ingl k. concatenation) järgmised atribuudid: PMK, ANonce (ingl k. AP nonce), SNonce (ingl k. STA nonce), AP MAC aadress ja STA MAC aadress. Peale seda lükatakse saadud tulemus läbi krüptograafilise räsi funktsiooni.

Kätlus annab ka GTK (ingl k. Group Temporal Key) võtme, mida kasutatakse multicasti ja broadcasti liikluse dekrüpteerimisel. Tegelikud sõnumid mida osapooled vahetavad kätluse ajal on toodud alloleval joonisel ja kirjelduses.

4wayhandshake.jpg
  1. AP saadab nonce-väärtuse STAle (ANonce). Klient saab nüüd sellest luua PTK võtme.
  2. STA saadab oma nonce-väärtuse (SNonce) APle koos MICiga (ingl k. Message Authentication Code). See on tegelikult sõnumi autentimis (ingl k. Message Authentication) ja terviklikkuse kood (ingl k. Integrity Code): (MAIC).
  3. AP saadab GTK võtme ja järjekorra numbri koos eraldi MICiga. Järjekorra numbrit kasutatakse järgmises multicasti või broadcasti kaadris, et vastuvõttev STA saaks teha algelist vastuse tuvastamist (ingl k. Replay Detection)
  4. STA saadab kinnituse APle.

Kõik ülalolevad sõnumid on saadetud kui EAPOL-Võtme kaadrid. Nii kui PTK on kätte saadud, jaotatakse see 5 erinevaks võtmeks.

PTK (ingl k. Pairwise Transistent Key) - 64 KB

  1. 16 baiti - EAPOL-Key kinnitus võti (KCK) - Kasutatakse MICi arvutamiseks WPA EAPOLi võtme sõnumis.
  2. 16 baiti - EAPOL-Key krüpteerimis võti (KEK) - AP kasutab seda võtit, et krüpteerida igasugused muud andmed mis saadetakse kliendile Key Data väljas (n'iteks RSN IE või GTK).
  3. 16 baiti - Ajutine võti (ingl k. TK - Temporal Key) - Kasutatakse unicasti data pakettide krüpteerimisel/dekrüpteerimisel.
  4. 8 baiti - Michael MIC Authenticator TX võti - Kasutatakse MIC arvutamiseks AP poolt saadetud unicasti data pakettides.
  5. 8 baiti - Michael MIC Authenticator RX võti - Kasutatakse MIC arvutamiseks STA poolt saadetud unicasti data pakettides.

Michael MIX Authenticator TX/RX võtmeid kasutatakse ainult juhul kui võrk kasutab TKIP protokolli andmesideliikluse krüpteerimiseks.

Grupi võtme kätlus (ingl k. Group Key Handshake)

GTK mida võrgus kasutatakse tuleks uuendada, iga kord kui mingi seade võrgust lahkub. Seda tuleb teha vältimaks, et võrgust lahkunud seade saab multicasti ja broadcasti sõnumeid APlt edasi.

Selle teostamiseks on 802.11i standardis määratletud Group Key Handshake mis koosneb kahepoolsest kätlusest:

  1. AP saadab uue GTK igale STAle võrgus. GTK on krüpteeritaud kasutades KEKi, see kaitseb STAle saadetud andmete terviklikust.
  2. STA kinnitab uue GTK, saates vastuse APle

GTK (ingl k. Groupwise Transistent Key) - 32 baiti

  1. 16 baiti - grupi ajutine krüpteerimis võti (ingl k. Group Temporal Encryption Key) - Kasutatakse multicasti data pakettide krüpteerimiseks.
  2. 8 baiti - Michael MIC Authenticator Tx võti - Kasutatakse MIC arvutamiseks AP poolt saadetud multicast pakettides.
  3. 8 baiti - Michael MIC Authenticator Rx võti - Seda hetkel ei kasutata, kuna STAd ei saada multicasti liiklust.

Michael MIX Authenticator TX/RX võtmeid kasutatakse ainult juhul kui võrk kasutab TKIP protokolli andmesideliikluse krüpteerimiseks.

Autor

Sander Laasik
A21
slaasik@itcollege.ee


Lingid

  1. "The Evolution of 802.11 Wireless Security"
  2. "IEEE 802.11i-2004: Amendment 6: Medium Access Control (MAC) Security Enhancements"
  3. IEEE 802.11-2007: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications