wlan authentikációs eljárások vizsgálata

71
WLAN authentikációs eljárások vizsgálata Diplomaterv Tóbi Tamás Műszaki informatika szak V.évfolyam [email protected] Konzulens: Schulcz Róbert Híradástechnikai Tanszék tudományos segédmunkatárs [email protected] Budapest, 2004. december 17. Budapesti Műszaki és Gazdaságtudományi Egyetem

Upload: berci20

Post on 13-Dec-2014

73 views

Category:

Documents


11 download

DESCRIPTION

WLAN authentikációs eljárások vizsgálata

TRANSCRIPT

Page 1: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálataDiplomaterv

Tóbi Tamás

Műszaki informatika szak V.é[email protected]

Konzulens:

Schulcz Róbert

Híradástechnikai Tanszéktudományos segédmunkatárs

[email protected]

Budapest, 2004. december 17.

Budapesti Műszaki és Gazdaságtudományi Egyetem

Page 2: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

Tartalomjegyzék

TARTALOMJEGYZÉK.................................................................................................................................2

BEVEZETŐ..................................................................................................................................................... 3

1. AZ IEEE 802.11X SZABVÁNYRENDSZER ÁTTEKINTÉSE.............................................................. 5

1.1 VEZETÉK NÉLKÜLI HÁLÓZATOK.......................................................................................................................51.2 AZ IEEE 802.11X HÁLÓZATOK FIZIKAI RÉTEGE.............................................................................................. 8

1.2.1 A 802.11 és 802.11b szabványok fizikai rétege...........................................................................................81.2.2 A 802.11a és 802.11g szabványok fizikai rétege....................................................................................... 11

1.3 KÖZEG HOZZÁFÉRÉSI MÓDSZEREK A 802.11X SZABVÁNYCSALÁDBAN................................................................. 121.4 VEZETÉK NÉLKÜLI TOPOLÓGIÁK....................................................................................................................15

1.4.1 Infrastruktúra alapú hálózati topológia...................................................................................................... 151.4.2 Cellaváltás infrastruktúra alapú hálózatban............................................................................................... 171.4.3 Ad Hoc topológia....................................................................................................................................... 19

2. AUTHENTIKÁCIÓ ÉS BIZTONSÁG ...................................................................................................20

2.1 A WEP.................................................................................................................................................. 202.2 A WEP ALAPÚ AUTHENTIKÁCIÓ.................................................................................................................. 232.3 OPEN SYSTEM AUTHENTICATION................................................................................................................. 252.4 AZ IEEE 802.11I SZABVÁNY ÉS AUTHENTIKÁCIÓS MÓDSZEREI........................................................................ 25

2.4.1 Kulcs hierarchia......................................................................................................................................... 262.4.2 Protokollok a 802.11i szabványban........................................................................................................... 282.4.3 Kommunikációs folyamatok...................................................................................................................... 312.4.4 Biztonsági képességek felderítése (Discovery)..........................................................................................322.4.5 Az IEEE 802.1x authentikáció folyamata WLAN hálózatban...................................................................332.4.6 Kulcs management..................................................................................................................................... 372.4.7 Információ titkosítás, algoritmusok............................................................................................................392.4.8 Authentikáció előre osztott kulcsok alapján (WPA-PSK)......................................................................... 40

2.5 AUTHENTIKÁCIÓS ELJÁRÁSOK ÉRTÉKELÉSE..................................................................................................... 41

3. SAJÁT AUTHENTIKÁCIÓS MÓDSZER KIDOLGOZÁSA.............................................................. 44

3.1 A TANSZÉKI WLAN HÁLÓZAT....................................................................................................................443.1.1 A hálózat fizikai felépítése.........................................................................................................................443.1.2 Alternatív biztonsági megoldások alkalmazása......................................................................................... 483.1.3 A jelenlegi authentikációs megoldás..........................................................................................................493.1.4 A mintahálózatban alkalmazott biztonsági eljárások értékelése................................................................ 51

3.2 A SAJÁT AUTHENTIKÁCIÓS MÓDSZER TULAJDONSÁGAI.......................................................................................523.2.1 Az alkalmazott eljárások............................................................................................................................ 523.2.2 Az authentikáció folyamata........................................................................................................................553.2.3 A Python nyelv...........................................................................................................................................573.2.4 A szerver oldali szoftver működése........................................................................................................... 58

3.3 A KLIENS OLDALI SZOFTVEREK MŰKÖDÉSE......................................................................................................603.3.1 A konzolos kliens működése......................................................................................................................603.3.2 A grafikus kliens működése....................................................................................................................... 62

4. AZ ALKALMAZOTT ELJÁRÁS VIZSGÁLATA................................................................................ 66

ÖSSZEFOGLALÁS.......................................................................................................................................67

FELHASZNÁLT IRODALOM....................................................................................................................68

RÖVIDÍTÉSJEGYZÉK................................................................................................................................70

– 2 –

Page 3: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

Bevezető

Az utóbbi években robbanásszerűen fejlődik a számítástechnika. Az egyre több helyen és

alkalmazási környezetben megjelenő eszközök közötti kapcsolat kiépítésére napjainkban

már nem csak kizárólag fixen telepített vezetékes hálózatokat alkalmaznak. Az igény a

vezeték nélküli hálózatokra a mobil eszközök (PDA, notebook, stb.) elterjedésével

arányosan nő. Másrészről a növekvő számú Internethez vagy helyi hálózatokhoz

csatlakozni kívánó felhasználók miatt a nagyobb irodákban, kollégiumokban

végeláthatatlan kábelrendszerekkel, kezelhetetlen rack szekrényekkel, „switch-

tornyokkal” találkozunk, melynek karbantartása, továbbfejlesztése a csatlakoztatott

felhasználók számával arányosan válik egyre bonyolultabbá, hibák forrásává.

Előfordulhat, hogy valamilyen okból kábelhálózat kialakítása nem lehetséges, esetleg nem

praktikus, erre példa lehet, hogy már a legtöbb nemzetközi repülőtéren van vezeték nélküli

hálózat, illetve a nagyobb városokban egyre szaporodik az úgynevezett „Hot-Spot”-ok

száma is. A vezeték nélküli technológia lehetővé teszi, hogy bármikor elérhetővé válik az

internet, ha rendelkezésre áll valamilyen WLAN eszköz, és vezeték nélküli kapcsolat.

A vezeték nélküli megoldások legnagyobb előnye a "hagyományos" vezetékes

hálózattokkal szemben, hogy csak részben, illetve egyes esetekben egyáltalán nem

igénylik a kábelezés kiépítését.

A Híradástechnikai Tanszék Mobil Távközlési és Informatikai Laboratóriumában (MC2L)

folytatott önálló labor gyakorlataim során, több vezeték nélküli, 802.11 szabványú

készülékkel ismerkedtem meg. A különböző gyártóktól származó eszközök lehetővé tették

nekem és társaimnak, hogy tanulmányozzuk az egyes eszközök közötti eltéréseket,

közepes mérető hálózatban történő alkalmazásuk során összehasonlítsuk a fontos működés

közbeni paramétereiket.

A rendelkezésre álló, több gyártótól származó, 802.11b szabványú eszközök segítségével

a Híradástechnikai Tanszék területén vezeték nélküli mintahálózatot építettünk ki.

A vezeték nélküli technológiák terjedésével azonban egyre nagyobb igény mutatkozott az

adataink védelmére, illetéktelen felhasználók távol tartására. Több megoldás is született a

problémák megoldására, melyek részben vagy egészben megoldást nyújtottak a

problémára. A biztonságot fokozó megoldások fejlesztése fokozatos, jelenleg is tart.

Sajnos a legutóbbi időkig a szakértők és a közvélemény a vezeték nélküli LAN-okat

– 3 –

Page 4: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

biztonsági szempontból sebezhetőnek tartotta, nem alaptalanul. A diplomatervemben a

biztonságtechnikai problémák közül a felhasználó-hitelesítés (authentikáció) lehetőségeit

elemzem, és saját megoldás kidolgozásával megpróbálok megoldást nyújtani a kisebb

hálózatokban felmerülő authentikáció egyszerű megoldására.

Az egyetemi mintahálózat kiváló lehetőséget biztosított egy szoftverrendszert

kidolgozására, mely szoftverek segítségével a WLAN hálózatban a jogosulatlan

felhasználók elleni védekezés biztonságossá, könnyen kezelhetővé és egyszerűen

adminisztrálhatóvá vált. A diplomatervemben a hangsúlyt az authentikációs lehetőségek

vizsgálatára helyezem.

Az authentikáció fogalma: adatcsere során a kommunikációban résztvevő felek identitás

megállapításának és ellenőrzésének folyamata. A legegyszerűbb authentikációs rendszerek

jelszavakat vagy más hasonló, a felhasználó által megadandó titkos adatsort (digitális

tanúsítványt) használhatnak az identitás ellenőrzésére, de az authentikáció alapját

képezheti a kommunikációhoz használt végpont hálózati címe is (pl. MAC cím).

Dolgozatom első fejezetében a 802.11x szabványrendszert tekintem át. Célom, hogy

csökkentsem a szabványrendszert körüllengő biztonsági és komplexivitási kétségeket.

Írok az ezen belüli egyes vezeték nélküli hálózati alszabványok közötti különbségekről, a

WLAN általános felépítéséről. Bemutatom a kialakítható vezeték nélküli topológiákat, és

áttekintést fogok nyújtani a jelenleg alkalmazott authentikációs eljárásokról. Mivel a

hitelesítés szorosan összefügg az alkalmazott biztonsági protokollokkal, megvizsgálom a

jelenleg legelterjedtebb 802.11b szabványban előírt biztonsági protokollt és hiányosságait.

A második fejezetben elemezni fogom a jelenleg szabványos vezeték nélküli

authentikációs eljárásokat. Az egyes eljárások közül részletesen értékelem a nemrégen

elfogadott 802.11i szabványt, mely kizárólag biztonságtechnikai okokból született.

A harmadik fejezetben részletesen bemutatom miért és hogyan készítettem a jelenlegi

tanszéki hálózathoz multi-platformos alkalmazás-rendszert, mely jól illeszkedik a

korábban létrehozott kényelmes felhasználó adminisztrációhoz, maximális szintre emelve

az elérhető biztonságot.

Végül a negyedik fejezetben megvizsgálom, hogy az elkészített alkalmazások hogyan

működnek együtt a korábbi rendszerrel, útmutatót nyújtva a sikeres telepítéshez,

beállításokhoz. [1]

– 4 –

Page 5: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

1. Az IEEE 802.11x szabványrendszer áttekintése

1.1 Vezeték nélküli hálózatok

Az első vezeték nélküli, csomag alapú (WLAN – Wireless Local Area Network) hálózatot

1971-ben készítette el a Hawaii Egyetemen néhány kutató. Ekkor került kidogozásra az

első WLAN közeg hozzáférési eljárás is, melyet stílusosan Aloha névvel illettek.

Később több, a Hawaii rendszerre épülő továbbfejlesztett adatátviteli megoldás napvilágot

látott, de ezek nem tudtak egymással kommunikálni mert egyedileg fejlesztett rendszerek

voltak, szabványosítás nélkül. Az 1980-as években az Amerikai Szabványügyi Testület

(FCC - Federal Communications Commission) a 802.11x-es IEEE (Institute of Electrical

and Electronics Engineers) szabvány kidolgozását javasolta a helyzet megoldására. A

802.11 is csak a fizikai réteget és az adatkapcsolati szint közeghozzáférés rétegét

definiálja, hasonlóan a vezetékes szabványokhoz. A szabványosítás azért fontos, mert

lehetővé teszi az olcsó tömeggyártást, növeli a keresletet és végeredményben elterjeszti a

rendszert világszerte, ahelyett, hogy különböző egyedileg fejlesztett megoldások

rivalizálnának egymással.

A jelenlegi vezeték nélküli hálózatok elektromágneses hullámokkal, ezen belül infravörös,

lézeres vagy rádiófrekvenciás (általában mikrohullámú) technológia segítségével

kapcsolódhatnak egymáshoz. A szabvány a fizikai rétegen belül általában csak a használt

frekvenciákat, modulációs módokat, sávszélességeket definiálja.

A lézeres és infravörös átvitel gyors, de a kapcsolat bizonytalan lehet, hiszen a nyaláb

útjába kerülő akadályok az átvitelt meggátolhatják, viszont a kis hatótávolság és a keskeny

hullámnyaláb (lézer estetén) nagyobb biztonságot nyújthat az illetéktelen behatolók elől.

Az infravörös átvitelt gyakran használják mobil eszközökben (telefon, PDA, notebook),

kis (max.5-10m) távolságra. Mostanában viszont egyre gyakrabban az infravörös

technológia kiváltására tervezett mikrohullámú Bluetooth eszközök veszik át szerepét. A

Bluetooth technológiát a számítógépes rendszerek perifériáinak vezeték nélküli

összekapcsolásához fejlesztették ki. Nagy sávszélességet biztosít (1 Mbps).

Az infravörös technológiának azonban nincsen alternatívája számos ipari környezetben,

ahol a rádiófrekvenciás kommunikációt gátló zavarforrások miatt a rádiós átvitel nem

– 5 –

Page 6: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

lehetséges. Lézeres adatátvitel is általában infravörös hullámok segítségével történik,

viszont jóval nagyobb, általában több kilométeres távolságok is áthidalhatók segítségével.

A szabványosított WLAN eszközök az úgynevezett ISM (Industrial, Scientific, and

Medicine) sávban működnek. Ezek a frekvenciasávok a világ sok országában szabadon

használhatók, meghatározott sávszélesség és adóteljesítmény-korlátok betartása mellett. A

WLAN szabványok által használt ISM sávok a rádiófrekvenciás spektrum UHF illetve

SHF tartományában helyezkednek el. A magasabb frekvenciákra a megkövetelt nagyobb

adatátviteli sávszélesség miatt van szükség. A kommunikációra leggyakrabban használtak

a 2,4-2,4835 GHz (83,5 MHz sávszélesség) és 5,725-5,850 GHz (125 MHz sávszélesség)

közötti tartományok, bár megjegyzendő, hogy más tartományokban is üzemeltetnek ISM

frekvenciákat. A tartományok földrészenként/országonként némileg eltérhetnek, az

eltérést a helyi frekvenciagazdálkodással megbízott hatóságok szabályozzák.

Az egyes tartományok csatornákra bonthatók, melyek sávszélessége függ az alkalmazott

modulációtól, illetve a szabványban előírtaktól. A magasabb frekvenciák több előnnyel

rendelkeznek, kisebb fizikai méretű antennákkal, eszközökkel lehet megvalósítani a

kommunikációs berendezést és a területen belüli frekvenciatartományok újrafelhasználása

is kedvezőbb.

Az IEEE 802.11x-es szabványrendszert 1997-ben jelentették meg, mely nem más mint az

IEEE szervezet által fejlesztett specifikációk gyűjteménye. Egy időben ezzel, ekkor jelent

meg a IEEE 802.11 alváltozat. 1999 őszén jelent meg az IEEE 802.11a és a IEEE

802.11b, majd megjelent 2001-ben a 802.11g alszabvány. Nemrégen, 2004 nyarán

fogadták el a 802.11i alszabványt, ami nem külön kommunikációs vagy fizikai réteget

határoz meg, hanem a meglévő és későbbi 802.11-es alszabványok számára biztonsági

előírásokat határoz meg. A vezeték nélküli megoldások számára kidolgozás alatt van a

802.11e, amely QoS tulajdonságokkal bővíti majd a családot. (1. táblázat)

Az eredeti IEEE 802.11 a 2,4 GHz-es sávon működik és 1, illetve 2 Mbps-os átviteli

sebességet biztosít QAM (Quadrate Amplitude Modulation) és BPSK (Binary Phase Shift

Keying) moduláció használatával.

Az IEEE 802.11b ugyancsak a 2,4 GHz-es sávban üzemel, de CCK (Complementary Code

Keying) moduláció használatával, a maximális fizikai átviteli sebesség 11 Mbps lehet.

– 6 –

Page 7: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

Az IEEE 802.11x szabványcsaládAlszabvány neve Frekvenciasáv Maximális adatátviteli

sebességModulációs technikák

802.11 2,4 Ghz 1 vagy 2Mbps DBPSK, DQPSK

802.11a 5,7 Ghz 6-54 Mbps OFDM

802.11b 2,4 Ghz 2-11 Mbps DSSS, CCK

802.11g 2,4 Ghz 2-54 Mbps DSSS, CCK, OFDM,DSSS-OFDM

802.11i - - Biztonságtechnikaialszabvány.

1. táblázat: a 802.11x szabványcsalád fő tulajdonoságai

A 802.11a OFDM (Ortogonal Frequency Division Multiplex) modulációt használ, a

maximális átviteli sebesség 54 Mbps.

Hasonlóan OFDM-et használ a 802.11g szabvány is, de az a 2,4 Ghz-es sávban működik.

A közölt adatok egy adatátviteli csatornára vonatkoznak. Vannak olyan eszközgyártó

cégek, melyek a megadott sebességek egész számú többszöröseit tüntetik fel eszközeiken,

ez amiatt van, mert egyszerre párhuzamosan több (általában maximum kettő) csatornán is

képes kommunikálni a berendezés, ezáltal növelve a sávszélességet. Egyes szabványnak

megfelelő eszközök a csatorna állapota alapján (zaj, jelerősség, zavarás) kénytelenek

(képesek) csökkenteni a sávszélességet. A sávszélesség csökkentése a modulációs mód

megváltoztatásával érhető el. A nagyobb átviteli sebesség komplexebb, ezáltal zavar

érzékenyebb modulációs móddal érhető el, amely kisebb hatótávolságot jelent

ugyanakkora lesugárzott teljesítmény mellett.

A 802.11i szabvány biztonságtechnikai előírásokat tartalmaz. A célja, hogy bevezetésével

eltűnjenek a korábbi biztonsági hiányosságok. Több új kódolási és kriptográfiai

mechanizmust vezet be, úgy mint az authentikáció, mind az adatkódolás tekintetében.

Bevezetése részlegesen is történhet, mert a szoftveres előírásokat firmware (hardver

közvetlen meghajtó szoftvere) frissítéssel lehet implementálni (pl. WPA – Wireless

Privacy Access), viszont tartalmaz kizárólag a hardver cseréjével bevezethető új

funkciókat (AES – Advanced Encription Standard).

A szabványokban meghatározott adatátviteli sebességértékek alatt a fizikai átviteli

képességet kell érteni. A hasznos sávszélesség – ennél jóval, 40-50%-kal alacsonyabb – a

járulékos fejlécek, az egyes rétegek hozzáadott adatai és a hibajavító kódok miatt. Emiatt

például egy 11 Mbps–os rendszerben az elérhető alkalmazás rétegbeli adatátviteli

– 7 –

Page 8: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

sebesség csak 6-8 Mbps lehet a legkedvezőbb eseten.

Mivel nincs előzetes vizsgálat a 802.11x-es szabványokhoz, ezért a szabványnak

megfelelő és a kompatibilitás elvét betartó termékeket Wi-Fi (Wireless Fidelity) címkével

minősíti a Wireless Ethernet Compatibility Alliance (WECA) non-profit szervezet, ezáltal

igazolja az eszközök kompatibilitási képességét. A sajtóban és a köznapi szóhasználatban

a Wi-Fi-t gyakran azonosítják az IEEE 802.11-es család tagjaival.

1.2 Az IEEE 802.11x hálózatok fizikai rétege

A következőkben röviden kitérek a 802.11a,b,g szabványok által használt fizikai

adatátviteli módszerekre. [2]

1.2.1 A 802.11 és 802.11b szabványok fizikai rétege

A legelterjedtebb 802.11b alapvetően két különböző rádiófrekvencia kiterjesztéses sémát

tartalmaz (1. ábra). A spektrumszórás célja a keskeny sávú zavarokkal szembeni zavartűrő

képességet hivatott megteremteni, ezért fix kódokat használ. Megjegyzendő, hogy ha

harmadik felhasználó elleni védekezés képen változókódokat (Chip kód) használnának

spektrumkiterjesztés létrehozásához, pszeudokód helyett – ami katonai berendezésekben

elterjedt – akkor nagyon megnőne a hardver bonyolultsága és számítási kapacitás igénye,

kérdésessé téve a megcélzott mobil alkalmazásokban való implementáció sikerességét.

1. ábra Szórt spektrumú kódolási módszerek

– 8 –

Page 9: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

• a közvetlen sorrendes szórt spektrumú rádiós összeköttetést (DSSS = Direct Sequence

Spread Spectrum)

• frekvenciaugratásos szórt spektrumú rádiós összeköttetést (FHSS = Frequency

Hopping Spread Spectrum)

Az FHSS esetén az adatátvitel frekvenciája folyamatosan pszeudovéletlen módon

változik, amely szekvenciát mind az adó, mind a vevőállomás ismeri. Az eljárás

biztonságosabbnak tekinthető, de megvalósítása bonyolultabb a DSSS-nél. Beszélhetünk

gyors FHSS-ről és lassúról. Az első esetben a bemenő adat „0” és „1” közötti váltása

esetén is lehet frekvenciaváltás, a második esetben a váltás több nagyságrenddel lehet

hosszabb időtartamú. A 802.11b szabvány nem írja elő FHSS használatát, de ajánlja.

A DSSS esetén az adatfolyam, egy nagyobb sebességű digitális kóddal szorozódik össze.

Minden egyes adatbitet összeszorozódik az adó- és a kívánt vevőállomás által ismert

sorozattal. Ezt az álvéletlen bitmintázatot chip kódnak nevezik. A kód magas és alacsony

jelek álvéletlen sorozata. Dekódoláshoz az ismert álvéletlen kódsorozatot összeszorozva a

kódolt jellel invertálva „0”-t kapunk, nem invertálva pedig az adatfolyam „1” értékét

kapjuk.

Az IEEE 802.11b 11 Mchip/s-os kódot alkalmaz. Az adatátvitel maximális sebessége nem

összekeverendő a chipkód sebességével. A chipkód sebessége a kódoló kimenetén

kizárólag a kapott jel sávszélességét - a kisugárzott teljesítmény spektrális eloszlását

mintegy „szétkeni” - fogja befolyásolni. A fent említett estben tehát a kódolóba betáplált

adat sávszélességének tizenegy szerese lesz a kimeneten. A kapott jelfolyamot további

modulációs technikákkal a szabványban meghatározott frekvenciatartományban

kisugározhatóvá kell tenni (eddigiekben alapsávról volt szó), ezért a különböző

adatátviteli sávszélességekhez eltérő modulációs technikákat használ a 802.11 család.

Az alábbi alapvető módokat az összes 802.11-es eszköz használja: 1 Mbps esetén a

DBPSK (Differential Binary Phase Shift Keying), 2 Mbps esetén a DQPSK (Differential

Quadrature Phase Shift Keying). Az utóbbi két esetben a chip jelfolyam létrehozásához

ún. Barker kódokat használ, míg magasabb sebességeknél CCK kódokat. Magasabb

sebességű (5 és 11 Mbps) adatátviteli célra a 802.11b szabvány CCK (Complemetary

Code Keying) kódolást használ. A CCK közel ortogonális komplex kódgyűjteményből áll,

melyet komplementer szekvenciáknak neveznek. A fejléc és a járulékos adatok átviteléhez

1Mbit/s adatátviteli sebességet és DSSS kódolás használ a szabvány. (2. táblázat)

– 9 –

Page 10: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

A 802.11-es szabvány mindössze annyiban tér el a 802.11b-től, hogy nem használ CCK

kódolást, ezért csak kisebb adatsebességek valósíthatók meg.

Adatsebesség(Mbps) Chip kód Moduláció típus Adatbitek/szimbólum Szimbólum

sebesség (Msps)1 Barker DBPSK 1 12 Barker DQPSK 2 15.5 CCK DQPSK 4 1.37511 CCK DQPSK 8 1.375

2. táblázat: a 802.11b szabvány: fizikai réteg tulajdonságok

Magasabb sebességű (22 Mbps) adatátvitel több párhuzamos csatorna használatával érhető

el, azonban ezt nem írja le a szabvány, kizárólag gyártóspecifikus.

A 802.11b eszközök rádiófrekvenciás spektruma csatornánként egységesen kb. 22 Mhz

széles. Az eltérő modulációs mód határozza meg az adott sávszélesség kihasználási

képességét. A szabvány szerinti kiosztás szerint egyes csatornák között átfedés jön létre.

Az alkalmazott DSSS modulációs technika lehetővé teszi, hogy a magából az alkalmazott

módszerből fakadóan nagyobb méretű átfedés esetén is csak kis zavar keletkezzen.

Átfedés esetén az egymás melletti sávot használó berendezések a csatorna zajának

növekedését észlelik. Létezik átlapolódás-mentes kiosztás is, ekkor mindössze 3 csatorna

(ált. 1,6,11) osztható ki a frekvenciasávban. A csatornakiosztás függhet még a WLAN

hálózat kialakítási topológiájától. Infrastruktúra hálózatban manuálisan kell beállítani

(vagy ha nem állítjuk be, a gyárilag beállított lesz érvényes) a használt frekvenciát minden

egyes AP-on. Ad-Hoc esetben minden 802.11x eszköz ugyanazon (a beállított, vagy

amelyen másik eszközt talál) a csatornán kommunikál. A 802.11x család eszközei nem

rendelkeznek automatikus csatornaváltoztatási képességgel. Mindig a manuálisan

beállított vagy a kommunikációra képes, megtalált csatornát használják. Zavar esetén

modulációs módot – ezáltal adatátviteli sebességet – tudnak egyedül automatikusan

változtatni. Az IEEE 802.11b eszközök számára kiosztott sávban szabvány szerint 14

csatorna használható, 5 Mhz-es távolságra egymástól.

Mivel minden 802.11b eszköz ugyanazzal a chip kóddal dolgozik, az azonos csatornát

használók fizikailag „hallják” ugyan egymást, de a nem nekik címzett csomagokat

eldobják, nem továbbítják a felsőbb rétegek felé. Ilyen, közös csatornát használó

rendszerekben a rendelkezésre álló sávszélesség megoszlik a felhasználók között.

Biztonsági szempontból sem előnyös, hogy a kártyára van bízva a csomagok szelektálása,

hiszen megfelelő firmware módosítással megszerezhetők, és egy speciális programmal

– 10 –

Page 11: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

feldolgozhatók a másnak címzett csomagok. Ez egy komoly biztonsági rés a rendszeren,

melyet mindig ki is használnak a hálózatba illetéktelenül bejutni szándékozók. A szórt

spektrumú technika nem nyújt megfelelő védelmet a fading ellen (mivel egy vivő van),

ezért többutas terjedés okozta fading ellen Rake-vevő alkalmazásával védekezik a

berendezés. Nem egy vevőt, hanem több, fázisban eltolt vevőt valósít meg (külön-külön

korrelátorokkal), illetve diversity-vétellel, azaz kettő vagy több térben különálló

vevőantennával. Emiatt található általában kettő antenna az AP (Access Point)-ok és a

hálózati kártyák többségén. [3] [5]

1.2.2 A 802.11a és 802.11g szabványok fizikai rétege

Az IEEE 802.11a és 802.11g rendszerben ortogonális frekvenciaosztásos multiplexálást

(Orthogonal Frequency Division Multiplexing - OFDM) használnak, azzal a

különbséggel, hogy különböző frekvenciasávon működnek. Az OFDM-nek is létezik több

válfaja: BPSK-OFDM, QPSK-OFDM, 16QAM-OFDM, 64QAM-OFDM, melyeket az

áviteli sebesség függvényében választanak meg a kommunikáló felek. Ez egy összetett

modulációs módszer, egyfajta több vivős átviteli rendszer, melyben a rendelkezésre álló

csatorna-sávszélességet – 20Mhz – , annak minél gazdaságosabb kihasználása érdekében

feldarabolták 300Khz-es darabokra. Minden egyes kis alcsatorna külön vivővel

rendelkezik, azonban az egymás mellet lévő vivők ortogonálisak (fázisuk 90°-os

egymásra), annak érdekében, hogy minél kevésbé zavarják egymást. Ezzel a fizikai

rétegben a bitsebesség a frekvenciák számának megfelelően n-ed részére csökken (ahol n

a használt frekvenciák száma). Ez biztosítja fading-el terhelt csatornában a rendszer jó

teljesítőképességét, a többutas terjedésből fakadó hibák elleni védelmet. (3. táblázat)

Adatseb.(Mbps)

Adat seb./alcsatorna

Modulációtípusa

Kódbitek /alcsatorna

HsznosAdatbitek /OFDMszimólum

FECkód

Kódolt bitek/ OFDMszimbólum

Szimbólumsebesség(Msps)

Szimbólumsebesség /Alcsatorna(Msps)

6 0.1250 BPSK 1 24 1/2 48 12 0.259 0.1875 BPSK 1 36 3/4 48 12 0.2512 0.2500 QPSK 2 48 1/2 96 24 0.5018 0.3750 QPSK 2 72 3/4 96 24 0.5024 0.5000 16-QAM 4 96 1/2 192 48 1.0036 0.7500 16-QAM 4 144 3/4 192 48 1.0048 1.0000 64-QAM 6 192 2/3 288 72 1.5054 1.1250 64-QAM 6 216 3/4 288 72 1.50

3. táblázat: a 802.11a szabvány fizikai réteg tulajdonságok

– 11 –

Page 12: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

A 802.11g szabvány kompatibilis a 802.11b -vel, abban a tekintetben, hogy az összes

alacsonyabb (1-11 Mbps) sebességen a 802.11b szerinti modulációs és csatorna kódolást

használja, ez lehetővé teszi a kapcsolatteremtést az utóbbi szabvány szerint működő

berendezésekkel. Azonban 6 Mbps – 54 Mbps sebességtartományban hasonló eljárást

használ mint a 802.11a, OFDM modulációs technikát. [4] [6]

Mivel a nagyobb adatsebesség komplexebb modulációs technikákat kíván, ezért

fokozottan érzékeny a zavarokra. Kisebb távolságú összeköttetések valósíthatók meg

nagyobb adatsebességeken, egyező kimeneti teljesítmény és fizikai környezet mellett. (2.

ábra)

A 802.11 családban általában 100mW kisugárzott teljesítmény a maximálisan

megengedett.

2. ábra: a különböző szabványok, modulációs módok által lefedhető területek viszonya

1.3 Közeg hozzáférési módszerek a 802.11x szabványcsaládban

A 802.11x kétféle közeg hozzáférési módszert használ:

• Distributed Coordination Function (DCF): elosztott rendszerben működik, a mobil

állomások egymással versengve próbálnak hozzáférni a csatornához, nincs központi

irányítás (Ad Hoc hálózatban)

• Point Coordination Function (PCF): ez egy centralizált rendszer, amelyben a központi

elem Access Point (AP) dönti el a csatlakozó állomások hozzáférési sorrendjét.

– 12 –

Page 13: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

A vezeték nélküli hálózatokban alkalmazott CSMA/CA közeghozzáférés némileg eltér a

vezetékes LAN-ok esetén használt CSMA/CD technikától. A legfőbb eltérés – mint az a

nevéből kiderül – az, hogy csomagütközés detekció helyett az ütközés az ütközés

elkerülése a cél. WLAN hálózatoknál ez a következőképpen történik: az adni kívánó

állomás mielőtt megkezdené adását, belehallgat a csatornába, ha szabad, adásra kapcsol és

elküldi az adatot a másik kommunikáló fél felé. Amennyiben foglalt a csatorna, akkor

várnak egy álvéletlen generátorral sorsolt ideig. Ezután ismét belehallgatnak a csatornába,

ha ezt szabadnak érzékelte, akkor a elkezdi a véletlenszerű késleltetési idő csökkentését.

Ezután újra kezdődik a procedúra, egészen addig amíg a késleltetési idő 0-ra csökken, ha

ekkor szabad a csatorna, elküldi az adatot, ha nem, elölről kezdődik a ciklus. (az

időértékek mikroszekundum nagyságrendűek).

Szabadnak érzékelt csatorna esetén, elküldi az adatot, de ha ez egy másik állomással egy

időben történt (ütközés lépett fel, tehát nem érkezett nyugta) ismét kezdődik egy ciklus,

melyben egy véletlenszerű késleltetési ideig vár az állomás. Az ütközéskor létrejövő

várakozási procedúra is hasonlóan ciklikusan történik, mint foglalt csatorna esetén.

Vezeték nélküli hálózatoknál szembe kerülhetünk az úgynevezett rejtett terminál esetével

(3. ábra). A rejtett terminál a vezeték nélküli, többszereplős kommunikáció egyik

legnagyobb problémája. A probléma lényege, hogy két állomás (A és C jelű) kíván

egyszerre adni egy harmadik (B jelű) állomás felé. Viszont A és C állomás egymás jeleit

nem képesek venni a köztük lévő távolság miatt, ezért nem detektálnak foglalt csatornát.

3. ábra: A rejtett terminál probléma

Mindkét (A,C) állomás szabadnak érzékeli tehát a csatornát, adni kezd, ami viszont a

vevőállomásnál (B) csomagütközéshez vezet. Ez lehetetlenné tenné a kommunikációt, ha

a vezetékes technikában megszokott CD (Collission Detection) – azaz ütközés érzékelés –

– 13 –

Page 14: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

technikát használná probléma megoldására a rendszer, mivel akkor mindig próbálna adni a

két terminál. Viszont a CA hozzáférési módszer estén használt véletlenszerű időzítések

miatt előbb-utóbb létrejön a sikeres adatátvitel.

Az ütközések száma tovább csökkenthető az RTS és CTS (Request to Send és Clear to

Send) vezérlő keretek alkalmazásával.

Az kommunikálni kívánó állomás „A” először egy RTS kerettel jelzi, hogy adni kíván.

Erre a másik fél, „B” az általa véletlenszerűen sorsolt idő (SIFS) eltelte után egy CTS

üzenetet küld. Amennyiben „A” sikeresen megkapta a CTS keretet, hasonlóan „B”-hez,

egy véletlenszerű SIFS idő múlva elkezdi az adást, ha nem kap ilyet, akkor vár egy

véletlenszerű ideig (DIFS) és újra küld egy RTS keretet, a procedúra elölről kezdődik,

mindaddig, amíg „B” válaszol.

A sikeres adatküldés után „B” egy nyugtázó ACK (Acknowledgement) üzenettel jelzi,

hogy megkapta az adatot. Amennyiben az adóállomás nem kap nyugtát, újra kell kezdenie

az egész folyamatot. Az RTS és CTS kerekkel kiegészített kommunikációt virtuális

vivőérzékeléses mechanizmusnak (4. ábra), más néven „négyutas kézfogás”-nak (Four

Way Handshaking) nevezik. [2] [4] [5] [6]

4. ábra: Négyutas kézfogás

– 14 –

Page 15: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

1.4 Vezeték nélküli topológiák

Alapvetően kétféle WLAN hálózati topológia létezik:

• Infrastruktúra hálózat (5. ábra)

• Ad-Hoc üzemmód.

A fent említett két alapvető topológián kívül léteznek egyéb kialakítási lehetőségek is,

ilyen lehet például a vezeték nélküli híd, router, gaming adapter, vezeték nélküli kamera,

stb. Azonban a legtöbb ilyen berendezés kapcsolódik valamilyen vezetékes adattovábbító

közeghez, ezért az infrastruktúra alapú hálózatok körébe tartoznak.

1.4.1 Infrastruktúra alapú hálózati topológia

5. ábra: Infrastruktúra hálózat

Az infrastruktúra topológiájú hálózat alapjául az Access Point (AP), azaz hozzáférési pont

szolgál. Az AP segítségével tud csatlakozni a mobil felhasználó a vezetékes (LAN,

Ethernet) hálózathoz. Az AP a beérkező csomagokat továbbítja a mobil kliensek felé,

illetve ellenkező irányban a kliensek forgalmát továbbítja a vezetékes vagy a vezetékes

hálózaton megtalálható, más vezeték nélküli hálózati eszközökhöz. Egy AP általában

nagyon sok beállítási lehetőséggel rendelkezik. Ilyenek például a felhasználó

authentikációja, adattitkosítás, MAC, IP szűrés, stb.

– 15 –

Page 16: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

Infrastruktúra hálózatban az egyes AP-ok elérhetőségi körzetét (cellát) Basic Service Set-

nek (BSS) nevezik. Az AP-hoz csatlakozó kliensek nagyon sokféle, eltérő mobil eszközök

lehetnek (notebook, PDA, mérési-adat gyűjtő, vezeték nélküli csatolóval ellátott PC,

gaming adapter, Wireless Camera, USB WLAN adapter, Wireless Print Server, stb.)

A hozzáférési pontok valamilyen (általában vezetékes) gerinchálózaton, elosztórendszeren

(Distribution System - DS) keresztül kapcsolódnak egymáshoz, illetve a hálózathoz, azaz

egyben hídként is funkcionálnak a vezetékes hálózat felé. A jól felépített WLAN –

beleértve több BSS-t, az access pointokat, és az elosztórendszert – a felsőbb rétegek

számára egy egyszerű Ethernet hálózatnak látszik. Az így megvalósított összetett rendszert

Extended Service Set-nek (ESS) nevezik. Egy komplett, vezetékmentesen kialakított

hálózatot pedig WDS-nek, azaz Wireless Distribution System-nek neveznek.

A legújabb AP-k már nagyon sok beépített funkcióval rendelkezhetnek, ilyen lehet például

a bridge (híd) funkció. Ennek segítségével egy AP csatlakozhat egy másik AP-hez, s így

vezeték nélküli hídként működhetnek például két vezetékes hálózat összekötése

érdekében. Ezen kívül sok kiegészítő funkcióval rendelkezhet egy ma vásárolt,

középkategóriás (~100$ ~ 20,000FT) AP: PtP Bridge (Point to Point Bridge), PtMP

Bridge(Point to Multipoint Bridge), 64, 128, 152-bit WEP titkosítás, WPA WPA (Wi-Fi

Protected Access), MAC AC (Access Control), DHCP, WEB felületű adminisztráció.

Nagyon sokféle berendezés illetve alkalmazási módszer sorolható még az infrastruktúra

alapú hálózatokhoz. Ilyen lehet például a vezeték nélküli híd (Bridge) mely pont-pont,

vagy pont-multipont alapú összeköttetést tud létrehozni több Ethernet hálózat között. A

hidak minden esetben Ad Hoc alapú összeköttetési módot használnak, ezért bármely

hasonló módon kommunikálni tudó eszközzel képesek kapcsolatot teremteni. A magasabb

kategóriájú AP-ok általában rendelkeznek bridge funkcióval, de léteznek kizárólag ilyen

funkciójú eszközök is. Nem rendelkeznek AP-okhoz hasonló funkciókkal, bármelyik fél

hasonló esélyekkel kezdhet kommunikálni.

A vezeték nélküli routerek és AP-ok közötti lagnagyobb különbség, hogy NAT (Network

Address Transaltion) funkcióval is rendelkeznek, beállítható a WAN (Wide Area

Network) interfész felé egy tetszőleges MAC cím, tűzfal, IP szűrés, és még sok egyéb

funkció is. Leggyakrabban széles sávú (ADSL, kábelnet) internetkapcsolat megosztásához

szokták alkalmazni.

– 16 –

Page 17: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

6. ábra: Vezeték nélküli router konfigurációs felülete

A kliens eszközöket is meg kell említenem, hiszen a kommunikáció másik fontos

főszereplőiről van szó. Kliens oldalon is nagy a választék: PCI, PCMCIA vagy CardBus

csatolófelülettel találkozhatunk a leggyakrabban. Egyre elterjedtebben találkozni azonban

USB csatolófelületű eszközökkel. Fő jellemzőjük, hogy jóval kevesebb beállítási

lehetőséggel rendelkeznek, Ad Hoc és infrastruktúra lapú mód és a

titkosítási/authentikációs módok között lehet választani, ezután az eszközök automatikus

kereséssel megpróbálnak csatlakozni, vagy felveszik egy listába az elérhető vezeték

nélküli hálózatokat.

1.4.2 Cellaváltás infrastruktúra alapú hálózatban

A 802.11 szabványcsalád nem írja le, hogyan kell egy cellaváltási folyamatnak (handover-

nek) lejátszódnia. Néhány alapelvet azonban definiál: az aktív, illetve a passzív

cellaváltást. Ezeken kívül leírja az újraasszociálás folyamatát is.

Vezeték nélküli hálózatokban megkülönböztetünk ún. soft-handovert illetve hard-

handovert. Handovernek nevezzük általában azt a kompex folyamategyüttest, mikor egy

mobil állomás átjelentkezik egyik BSS-től egy másikba. A handover folyamatokat

értelmezhetjük a mobil állomásra és AP-ra egyaránt. Soft-handoverről akkor beszélünk,

amikor információveszteség nélkül megy végbe a cellaváltás folyamata. Hard-handover

– 17 –

Page 18: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

esetén ennek pont az ellenkezője jön létre. Természetesen a szabványt kidolgozó

szervezetek, fejlesztők nagy hangsúlyt fektetnek a soft-handover folyamatának minél

eredményesebb kidolgozására és megvalósítására.

Vezeték nélküli hálózatokban nagy hangsúly van a soft-handover kidolgozásán, a minél

gyorsabb cellaváltás, kommunikáció sebességének megtartása érdekében. Mivel általában

mobil eszközök kapcsolódna a hálózathoz, fontos még az akkumulátor kímélése, ezáltal a

hasznos üzemidő növelése. A cellaváltás folyamatához és általában a kommunikációhoz

szükség van az AP és a mobil állomás közötti pontos szinkronizációra.

A szinkron fenntartása érdekében az AP periodikusan Beacon-keretet küld a mobil

állomások felé. A Beacon-keret egy speciális keret, mely szinkronizációs információt,

valamint rendszerinformációkat tartalmaz.

A mobil állomás folyamatosan összehangolja a vezeték nélküli interfész órajelét a vele

kapcsolatban lévő AP órajelével, a Beacon keretek időinformációja alapján. A

szabványban definiáltak egy komplett mechanizmust, mely lehetővé teszi a mobil

állomások számára, hogy hosszabb időre alvó (sleep) módba kerüljenek,

energiamegtakarítás céljából. Alvó kliens esetén a hozzáférési pont átmenetileg eltárolja

(puffereli) az állomásokhoz érkező forgalmat. Az egyes állomások alvó állapotban egy

periodikus Polling Request (lekérdezés) csomagot küldenek az AP felé. Az AP válaszában

értesítheti a klienst, hogy van neki címzett adat, akkor megváltoztatja működési módját és

kommunikálni kezd. 802.11 hálózatok esetén tovább részletezhető a handover passzív és

aktív eljárásra. Passzív esetben a kliens, miután elvesztette a kapcsolatot egy AP-vel vár,

hogy kapjon egy Beacon-keretet valamely, kommunikációra képes hozzáférési ponttól, és

ez után történik a handover. Aktív cellaváltáskor az ellenkezője történik, a kliens

megpróbál egy AP-t találni egy ún. Probe Request csomag küldésével, amelyre válaszként

egy Probe Response-ot vár az AP-tól.

Több AP-t tartalmazó hálózatban gyakran előfordul, hogy az AP-k „látják” egymást, ezért

szükséges a csatorna kiosztás tervezése. Fontos, hogy a fizikailag közel elhelyezkedő

access pointokon minél távolabbi csatorna legyen beállítva, ezzel is elősegítve a hálózat

gyorsabb adatátviteli sebességét. A kliens eszközökön általában nem kell megadni a

csatornát, rövid szkennelés után megtalálják azt, és esetleges cellaváltás estén

megpróbálnak csatlakozni valamelyik állomáshoz. Automatikus csatornaváltás

infrastruktúra hálózat estén nem lehetséges sem a kliens, sem az AP eszközökön, kivéve

– 18 –

Page 19: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

handover esetén lehet, mikor kapcsolódni akar egy másik AP-hoz (amennyiben a másik

AP nem ugyanazon a csatornán dolgozik). [2]

1.4.3 Ad Hoc topológia

7. ábra: vezeték nélküli Ad Hoc topológia

A vezeték nélküli eszközöknek létezik egy ún. Ad Hoc üzemmódjuk. Mint az a nevéből is

kiderül, ez nem egy centralizált hálózat, inkább nevezhetjük önszerveződő,

véletlenszerűen kialakított, egymással összeköttetésben lévő eszközök halmazának. Az Ad

Hoc módra nem képesek az AP-ok, vagy más, strukturált hálózatban használt központi

eszköz. A kliens szerepét betöltő eszközök, illetve a vezeték nélküli hidak képesek Ad

Hoc topológiájú hálózat kialakítására. Az ilyen működési módot általában külön

engedélyezni kell a kliens eszközön. Ad Hoc hálózat úgy jön létre, hogy ha az eszköz

megtalált egy Ad Hoc módszerrel kapcsolódni képes másik eszközt, akkor aktív

módszerrel (DCF) verseng a kommunikációs csatorna használati jogáért, és próbálja

elküldeni az adatcsomagot a címzettnek. Ebben az esetben nincs forgalmat szabályozó

központi eszköz (mint infrastruktúra esetbe az AP), ezért csomagütközésre gyakrabban

kerül sor, tehát ebből következik hogy a kapcsolatban részt vevő felek számával arányosan

csökken a kommunikáció sebessége, megbízhatósága. Automatikus csatornaváltásra az Ad

Hoc hálózat szereplői sem képesek, a manuálisan beállítottat (vagy amin a hálózatot

megtalálták) használják.

Az Ad Hoc mód használata kis hálózat létrehozása esetén előnyös, ha csupán néhány

szereplője lesz a kommunikációnak, illetve könnyen ellenőrizhető, hogy a felhasználók

– 19 –

Page 20: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

miként konfigurálják az eszközöket. Azonban sok szereplős, nagyobb kiterjedésű WLAN

hálózatban az Ad Hoc mód hátrányt jelenthet, a kisebb áteresztőképesség, nehezebb

konfigurálhatóság miatt. Ilyen esetben az egyetlen megoldás az infrastruktúra mód lehet,

mivel így gyorsabb és biztonságosabb kommunikációs csatorna hozható létre.

2. Authentikáció és biztonság

A vezeték nélküli hálózatok fizikai és közeg hozzáférési módszereinek áttekintése után a

továbbiakban a biztonsági kérdéseket fogom vizsgálni. WLAN hálózatok megbízható

használatának feltétele az identitás ellenőrzése, adataink védelme, melyek nélkül a vezeték

nélküli hálózatba vetett bizalom felhasználói oldalról lecsökkenhet, hátráltatva annak

elterjedését.

2.1 A WEP

Mivel a WLAN eszközök fizikai kapcsolat nélkül kommunikálnak, nem lehet konkrétan

behatárolni a kiterjedését, fokozottan szükség van az adatok védelmére. Egy esetleges

behatoláshoz a támadónak nincs szüksége fizikai kapcsolatra, a behatolás a hálózatba

utólag nehezen bizonyítható, vagy egyáltalán nem érhető tetten. Ha a kommunikáció

titkosítás nélkül folyik, akkor könnyen lehallgathatók (sniffelhetők) az információk,

tisztán a hálózati forgalom megfigyelésével. A másik nagy probléma hogy a hozzáférési

pontokat gyakran egy belső hálózathoz szokták kapcsolni, közvetlenül megkönnyítve a

támadó dolgát. Az adatok védelme érdekében a 802.11 szabványok tartalmaznak egy ún. a

WEP-et (WEP – Wired Equivalent Privacy protocol).

A WEP-nek három fő funkciója van:

• Authentikáció

• Titkosítás

• Adat integritás ellenőrzése (CRC-32)

Sajnos mindhárom funkció tartalmaz gyenge pontokat, amiket kihasználva feltörhető a

WEP.

A legújabb, elfogadott IEEE 802.11i szabvány a WEP-en jelentősen túlmutat, tartalmaz

– 20 –

Page 21: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

authentikációra (WPA - Wireless Privacy Access, IEEE 802.1x), újabb titkosítási

eljárásokra (AES – Advanced Encryption Standard) vonatkozó előírásokat, amelyeknek

külön fejezetet szentelek majd a továbbiakban. Az új szabvány kidolgozására azért volt

szükség, mert a korábban kizárólag alkalmazható WEP gyenge kriptográfiai

képességekkel rendelkezik, illetve az authentikációt is a WEP-re látta el, mely könnyen

feltörhető. Számos ingyenesen letölthető szoftver (pl. Aircrack - Debian csomag) található

az interneten, amelyek segítségével és megfelelő mennyiségű titkosított adat sniffelése

után megfejthető a titkos kulcs. A leggyakrabban alkalmazott (mivel nem fedezhető fel a

támadó) az ún. "lexikonépítő" (Decryption Dictionaries) támadás: a forgalom folyamatos

passzív figyelése és vizsgálata után a dekódoláshoz szükséges kulcs statisztikai elemzés

segítségével történő előállítása. Az authentikáció szempontjából lényeges WEP működését

röviden bemutatom, hogy rávilágítsak, miért is volt szükség külön a biztonságot fokozó

szabványra. Ma általánosan elterjedt, közepes teljesítményű számítógéppel a WEP kulcs

megfejtése mintegy 5-10 órát vesz igénybe.

8. ábra: WEP kulcs megfejtése, Aircrack 2.1 szoftver

Az authentikáció fontos része a biztonság. Ahhoz hogy jobban megérthető legyen, miért

ilyen egyszerű a WEP kulcs megfejtése, röviden bemutatom az eljárás működését.

Az eljárás egy titkos kulcson (k) alapul, amely lehet hexadecimális vagy ASCII

karaktersorozat, melyet a kommunikáció résztvevőinek előzetesen meg kell osztaniuk

egymással. Sajnos a kulcs megosztásának módszerére a 802.11i szabvány megjelenéséig

nem létezett hatékony protokoll. Minden egy egyes résztvevőnek egyenként be kellett

állítania. Ez az eljárás nagyobb mérető WLAN-ok esetén nehezen volt kivitelezhető. Sok

kényelmetlenséggel járó kulcscseréket ritkán végeztek, ami tovább gyengíti a protokoll

– 21 –

Page 22: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

hatékonyságát.

A WEP működése a következő: először egy ellenőrzőösszeget – CRC-32(M) – számol ki

az üzenetből (1500 byte-os csomagból - Planintext Message – M), elvileg ezzel

ellenőrizhető az üzenet integritása, majd beállít egy IV (Initialization Vector = IV)

kezdővektort (v) a kódoló inicializálásához.

A következő lépésben az RC4(v,k) titkosító algoritmussal, az inicializáló vektor és a titkos

kulcs segítségével generál egy úgynevezett keystream-et, titkosító adatfolyamot, melynek

mérete megegyezik a kódolandó üzenetével. Végül előállítja a bejövő adatból, annak

ellenőrzőösszegéből CRC-32(M), és az RC4(v,k) titkosító adatfolyamból egy XOR

kapcsolattal az átvinni kívánt titkosított információt (Cyphertext).

Az adat visszaállításához el kell küldeni a másik fél részére titkosítatlanul az IV vektort,

hogy a vevő az IV és az általa ismert közös titkos kulcs (k) segítségével elő tudja állítani a

dekódoló RC4(v,k) kulcsfolyamot. Ha a keystream megegyezik a kódoló oldalán lévővel,

egy XOR művelet segítségével visszaáll a eredeti üzenetet.

9. ábra: WEP kódoló működése

Az alkalmazott algoritmus már régóta ismert, ezért annak működésétől nem várható

védelem.

Kriptográfiai szempontból megfelelő lenne a védelem, hiszen az IV vektor minden

üzenetcsomagnál más és más, tehát nem lesz ugyanazzal a keystream-el kódolva két eltérő

adat, mely további gyengeséget rejtene magában. A WEP algoritmus 24 bites

kezdővektort (IV) használ, ez meghatározza a lehetséges IV-k halmazát ( 224~16,7millió).

Például az ún. "lexikonépítő" támadás során az IV-k véges számát használhatja ki a

támadó. Matematikailag levezethető, hogy a támadó szempontjából nem jelentenek

nagyobb nehézséget a nagyobb WEP kulcsok, mivel az adatmennyiségtől és az IV-től

függ a biztonság. Az igazi védelmet az jelentené, ha viszonylag gyakran lehetne cserélni a

titkos kulcsokat, amire megoldást nyújt a 802.11i szabvány.

– 22 –

Page 23: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

Az IV-k maximális számából és az adatsebességből (és a keretek méretéből) kiszámítható,

hogy 11 Mbps adatforgalomnál kb. 5 óránként ismétlődik az IV. Magasabb, 54 Mbps

esetén ez az IV ismétlések közötti idő 1 órára esik vissza. Meg kell azonban említeni,

hogy minden eszköz nulláról kezdi az IV-ket számlálni, és minden csomagnak

véletlenszerűen generál egy újat.

2.2 A WEP alapú authentikáció

Kizárólag WEP alapú védelmet használva, védtelenné válhat a hálózat, a behatoló

egyszerűen juthat hozzá olyan információkhoz is, amelyek az authentikációt szolgálják.

Ennek egyszerűsége abban rejlik, hogy az AP a „k” titkos kulcs alapján azonosítja a

bejelentkezőt. Az authentikáció folyamata a következőképpen fog lezajlani ebben az

esetben: (10. ábra)

Az AP küld egy Ch (Challange) véletlenszerűen generált szöveg üzenetet a kliensnek. A

kliens visszaküldi azt a Re (Response) üzenetként, WEP protokollal – a kliens titkos

kulcsával – titkosítva. Az AP dekódolja azt a saját kulcsával és ha egyezőnek találja azt az

elküldöttel, engedélyezni fogja a kliens kommunikációját.

10. ábra: WEP alapú (Shared Key) authentikáció

– 23 –

Page 24: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

A WEP alapú authentikáció a következőképpen játszható ki:

A támadó lehallgatja a csatornát és begyűjt belőle egy Challange - Response párt, melyet

ugyanazzal a kulccsal kódoltak majd leválasztja belőle a kódolatlan IV-t. Mivel a támadó

rendelkezik a kódolt és ugyanazon üzenet kódolatlan párjával, a kettő XOR kapcsolatával

megkapja a kódoláshoz használt RC4(v,k) keysteram-et. A hamis authentikációt

(Authentication Spoofing) ezek után úgy tudja véghez vinni, megpróbál csatlakozni az

AP-hoz, folyamatosan fogadva tőle a Ch üzeneteket. Mindaddig vár, amíg érkezik egy

olyan üzenet, amelynek IV-je megegyezik az előzőleg lehallgatott üzenet IV-jével. Ekkor

összeállít egy hamis csomagot, amely a következőképpen néz ki:

IV + (IV + Ch + CRC-32(Ch) XOR RC4(v,k))

ezt az AP helyesnek fogja találni és authentikálja a támadót, aki most már kommunikálhat

a hálózattal. A WEP miatt ugyan nem tud valós adatokat kinyerni, mivel a behatolás után

még nincs birtokában a k titkos kulcs, de így elegendő lehetőséget kap arra hogy más

módszerekkel hozzájusson a kulcshoz.

Az ilyen jellegű behatolás után egy lehetséges módszer az lehet, hogy az IP csomag

fejrészének módosítása (IP Redirection). Miután megtörtént a hamis authentikáció, egy

belső állomással felveszi a kapcsolatot a támadó, az érkező csomagok tartalmát kódolva

küldi el az AP. A WEP lineáris CRC-32 algoritmust használ az integritás ellenőrzésére,

ami könnyen feltörhető, tehát az IP csomagok fejrésze módosítható a támadó vezetékes

címére, így azokat visszaküldve az AP-nek, az dekódolni fogja a titkos kulccsal és

továbbküldi a vezetékes címre a kódolatlan tartalmat. Ez megakadályozható egy jól

beállított tűzfallal.

A támadások kivitelezése nem nehéz, hiszen a sok eszközhöz lehet módosított drivert

letölteni, amivel kikényszeríthetővé válik, hogy a nem neki címzett csomagokat is

továbbítsa felsőbb kommunikációs rétegek felé. A WEP protokoll fentebb említett

hiányosságai miatt elkezdtek kidolgozni a WLAN hálózatokhoz olyan biztonsági

protokollokat, amelyek leválthatják a WEP-et, kiegészíthetik biztonságosabb

authentikációs képességekkel, biztonságosabb kriptográfiai technikákkal. Összességében

nézve tehát a WEP nem nyújtotta a tőle elvárt biztonságot a WLAN hálózatok számára,

ráadásul eltérő gyártóktól származó eszközök sem tudtak együttműködni bekapcsolt WAP

esetén, ezért 2004-ben bevezették a 802.11i szabványt, amit a következőkben fogok

górcső alá venni. [7] [8]

– 24 –

Page 25: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

2.3 Open System Authentication

A hozzáférés korlátozására elterjedten használható még a MAC cím alapján történő

authentikáció (MAC szűrés), de használata nehézkes nagyobb hálózatoknál, ezért nem

szívesen használják. Az ún. ACL (Access Control List) -en alapul, általában ezt minden

AP-n be lehet állítani. Közepes és nagyobb hálózatoknál kezelése kényelmetlen, nehézkes,

ezért nem szívesen alkalmazzák. Otthoni vagy kisebb irodákban ajánlott az alkalmazása,

de nem túl biztonságos – a MAC cím egyszerűen módosítható, pl. egy lehallgatott,

engedélyezett állomáséra módosítható.

2.4 Az IEEE 802.11i szabvány és authentikációs módszerei

Az előző fejezetben rámutattam a WEP azon gyengeségére, hogy nagyon gyenge

azonosítási képességekkel rendelkezik és gyakorlatilag a WPA és a 802.11i megjelenése

előtt nem volt más alternatíva a WLAN típusú hálózatokban a biztonság megteremtésére.

Az authentikáció talán még fontosabb mint egy jól működő adattitkosítás, hiszen a

hálózathoz – ezáltal annak belső, védtelen elemeihez – enged hozzáférést, míg egy jó

titkosítás „csak” az éppen átvitt adatokat védi. Mégsem választható szét e két fogalom,

mivel kölcsönösen függenek egymástól. Nem lehet jó authentikációt megvalósítani erős

titkosítási protokoll nélkül és a titkosítás sem ér semmit ha gyenge az authentikáció. Talán

ezért nem lehet elkülönítve elemezni egyiket vagy másikat. A WEP javított változatának

tekinthető WPA-t ugyan a Wi-Fi Alliance már a 802.11i elfogadása előtt is ajánlotta (de

nem volt szabvány), a 802.11i-vel érkező WPA és WPA2-nek nevezett eljárás már

merőben új és biztonságosabb kriptográfiai technológiát használ. A következőkben a

2004. június 29.-én elfogadott 802.11i szabvány alapján fogom bemutatni a legújabb

biztonsági protokollokat, titkosítási és adatintegritást védő módszereket, melyek

segítségével biztonságos, jól menedzselhető vezeték nélküli hálózatok építhetők.

Az IEEE által kidolgozott és jóváhagyott szabvány lényegében egy protokoll (ajánlás)

csomag a meglévő és a jövőbeni fizikai vezeték nélküli hálózatok biztonságának

fokozására. Tartalma a igen szerteágazó, a vezeték nélküli hálózatokban eddig nem

alkalmazott authentikációs metódusokat és kriptográfiai újdonságok sorát vonultatja fel:

• IEEE 802.1x (vezetékes hálózatokban alkalmazott authentikációs eljárás)

• EAP, RADIUS, WPA

– 25 –

Page 26: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

• RSN (Robust Security Network)

• Új kriptográfiai eljárások:

• CCMP (AES - CCM), TKIP (Temporal Key Integrity Protocol)

• Dinamikus kulcs csere és management

A fő hangsúly a hálózati authentikáción és annak biztonságosságán van. Lényegében nem

teljesen új átviteli protokollokat szabványosít a 802.11i, hanem meglévő, vezetékes

környezetben korábban már széleskörűen alkalmazott eljárásokat implementál vezeték

nélküli környezetbe. A bemutatást a titkos kulcsok előállításának folyamatával, azok

használatával kezdem. [9]

2.4.1 Kulcs hierarchia

A 802.11i szabvány bevezetéséig mindössze egyetlen titkos kulcs létezett az

authentikációra és az adattitkosításra egyaránt Az új eljárásokban kulcskezelési és

generálási hierarchiát vezettek be, hogy megoldható legyen a kulcsok rendszeres

időközönkénti cseréje, ami ellehetetleníti a lexikonépítő és egyéb, a hálózati forgalom

lehallgatása és utána abból a kulcs kinyerésére irányuló támadási lehetőségeket. A kulcs

hierarchia a következőképpen néz ki (11. ábra):

11. ábra: IEEE 802.11i kulcs hierarchia

– 26 –

Page 27: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

A 11. ábrán látható hierarchia képezi az új szabvány biztonságának alapját. A MK (Master

Key) például lehet egy jelszó, vagy hexadecimális karaktersorozat, melyet mind a

kliensnek, mind pedig az authentikációt végző eszköznek ismernie kell, tehát ez egy

szimmetrikus kulcs.

A Master kulcspár (PMK - Pairwise Master Key) minden egyes bejelentkezéshez (session)

a mobil állomás és az authentikációs szerver (AS) a Master kulcsból azonos algoritmussal

generál. Az authentikéciós szerver ezt a kulcsot elküldi a klienssel kapcsolatban lévő AP-

nak, mely ez alapján engedélyezi a 802.11 csatornán a kommunikációt. Tehát

authentikáció szempontjából ez a kritikus elem. Ezt a kulcsot 4-utas kézfogással osztja

meg egymás között a kliens és az AP. Az authentikáció biztosításán túl még másik célja a

PTK kulcs megosztása, ellenőrzése, hozzárendelése.

Az ideiglenes kulcspár (PTK – Pairwise Transient Key) a Master kulcspárból származik,

minden bejelentkezéskor újra generálódik, ez egy „kulcs csomag”, mely tovább bontható

kisebb csoportokra. A PTK generálásához a kliens és az AP MAC címét, valamint egy

álvéletlen generált szám („nonce”) használatos. Az PTK-t a kliens és az AP használja,

ezen eszközök generálják sikeres authentikáció utáni titkosítás céljából, az authentikációs

szerveren nem található meg. Az első 128 (0-127) biten elhelyezkedő ún. kulcs ellenőrző

kulcs (KCK – Key Confirmation Key) azt a célt szolgálja, hogy az AP és a kliens

leellenőrizze, valóban rendelkezik-e a PMK-val, vagyis azzal a kulccsal amelyből a PTK

származik. Ennek a kulcs meghamisításának megakadályozása a célja.

A kulcs kódoló kulcs (KEK – Key Encryption Key) célja csoportos átmeneti kulcs (GTK

– Group Transienk Key) megosztásának ellenőrzése, melyet az AP küld a kliens felé.

Az ideiglenes kódoló kulcs (Temporal Key) szolgálja az adatok kódolását., mely kódolás

történhet RC4 vagy CCMP (AES-CCM – Advanced Encryption Standard – Counter Mode

Encryption) algoritmusokkal. A 802.11i szabvány rugalmasnak tekinthető, mivel a CCMP

bevezetése új hardver eszközök bevezetését követeli meg, de ez nem valósítható meg

korábbi hálózatokban, ezért egyszerű driver frissítéssel (firmware) az összes 802.11i

funkció elérhetővé válik, kivéve a CCMP.

A kulcs management folyamatából kiderül, hogy minden bejelentkezésnél, cellaváltásnál

új kulcsok kerülnek a rendszerben felhasználásra, kivéve az authentikációs szerveren lévő

és a kliens által ismert kulcsokat. A Master kulcsok sohasem kerülnek közvetlenül

felhasználásra, belőlük egyirányú algoritmus segítségével generált ideiglenes kulcsokat

– 27 –

Page 28: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

hoz létre a rendszer. Ilyen módszerrel a dinamikus kulcscserék is megoldhatóvá válnak,

mivel fizikailag nem kell megváltoztatni a Master kulcsot, csak meg kell adni, milyen

időközönként generáljon a rendszer új ideiglenes kulcsokat, (PTK-t, TK-t) amelyet

szétküldhet a hálózat a résztvevők között. A kliens miután észrevette, hogy új kulcsok

vannak automatikusan generál egyet. Így akár minden adatcsomag más és más kulccsal

titkosíthatóvá válik.

2.4.2 Protokollok a 802.11i szabványban

A IEEE 802.1x széles körűen elterjedt szabvány a vezetékes hálózatok körében. Az EAP-

ot (Extensible Authentication Protocol, RFC 2284) és annak alváltozatait használja fel az

authentikációs célra. A vezeték nélküli hálózatokban történő felhasználása a 802.11i

elfogadásával vált általánossá. Az EAP nem egy authentikációs protokoll, inkább egy,

korábban a vezetékes hálózatokban már sikerrel alkalmazott adatátviteli technológia.

A 802.1x az ún. Port-Based Network Access Control eljáráson alapul. Ez annyit jelent,

hogy authentikáció előtt nem tud kommunikálni a kliens az adott UDP/TCP porton, kivéve

a authentikációs szerverrel, sikeres azonosítás után viszont engedélyezetté válik a

kommunikáció. A port megnyitása előtt EAP protokoll segítségével történik a

kommunikáció.

A WLAN hálózatban a kliens (Mobil Állomás) és az authentikációs szerver EAP

protokoll segítségével kommunikál. Ez annyit jelent, hogy az Access Point ebben a

fázisban nem jut szerephez, tehát átlátszó proxy-ként kell viselkednie, át kell engednie a

forgalmat a szerver felé és a szervertől a kliens irányába.

Az EAP független a hálózat más elemeitől, ezért többféle változata is tetszőlegesen

használható authentikációs célokra:

EAP-MD5: A RADIUS szerver a klienseket a felhasználó jelszavának MD5

ujjlenyomata alapján azonosítja. Ez a módszer nagyon egyszerű kevésbé erőforrás

igényes, vezetékes környezetben elterjedten használt. WLAN esetben viszont nem ajánlott

a használata, mert könnyen lehallgatható az MD5 hash.

LEAP (Lightweight EAP): Ezt az eljárást a Cisco cég dolgozta ki és használja

eszközeiben. Hasonlóan mint az előző, MD5 lenyomatokat használ, viszont kétirányú

azonosítást kíván meg (szerver és kliens oldalon egyaránt authentikálni kell egymást).

– 28 –

Page 29: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

WLAN eszközökben alkalmazott változata WEP kulcsok cseréjét is támogatja. Homogén,

Cisco gyártmányú eszközökkel felépített hálózatban egyszerű lehet a használata máshol

viszont nem ajánlott a kompatibilitási problémák elkerülése végett.

EAP-TLS (Transport Layer Security): RFC 2716 szabvány. Kétirányú, szerver –

kliens azonosítást használ és digitális tanúsítványokon alapul, melyeket

tanúsítványkibocsátó cégektől lehet beszerezni. A TLS az SSL-en (Secure Socket Layer)

alapul, melyet elterjedten használnak a WEB-en titkosítás és authentikáció céljából. A

legtöbb kliens platformon (Linux, Windows, MacOS X) telepíthető kliens szoftver vagy

modul. Több szoftverfejlesztő cég RADIUS szerverével (HP, Microsoft,

FreeRADIUS.org, stb.) használható. Hátránya, hogy teljes nyílt kulcsú infrastruktúrát

igényel (PKI – Public Key Infrastructure), melynek kidolgozása, a tanúsítványok,

SMART-Card eszközök (a tanúsítványok egyénhez rendelése -és tárolására) beszerzése

meglehetősen költséges. Ezzel szemben ez a módszer nyújtja a legnagyobb biztonságot

authentikáció tekintetében.

EAP-TTLS (Tunneled Transport Layer Security): Annyival egyszerűbb az EAP-

TLS-nél, hogy nincs szükség kliens oldali PKI infrastruktúrára, a kliens jelszóval

azonosítja magát, tehát lecsökkenthetők a költségek. A szerver oldalon viszont továbbra is

szükségesek a tanúsítványok.

PEAP (Protected EAP): Az EAP-TTLS és a PEAP között nincs működésbeli

különbség, mindössze talán az, hogy a Microsoft és a Cisco áll e módszer mögött, ezért e

cégek szoftvereiben (és hardver eszközeiben) ez a beépített funkció található meg. [16]

A Wi-Fi Alliance a 802.11i megjelenése előtt (2003. február – Wi-Fi WPA Certificate)

kidolgozott egy ún. WPA (Wireless Protected Access) eljárást, melynek az Enterprise

változata (WPA – Enterprise) kompatibilis a 802.11i-ben megjelent 802.1x protokollal. A

Wi-Fi Alliance úgy tervezte a WPA eljárást, hogy az el nem fogadott 801.11i megjelenése

után visszafelé kompatibilis legyen a WPA-val, tartalmazza annak kriptográfiai (TKIP)

eljárásait. Tehát a WPA elnevezés hasonlóan magába foglalja a 802.11i authentikációs

eljárásait, hasonlóan, mint a sajtóban és a köznapi használatban elterjedt Wi-Fi elnevezés

magába foglalja a WLAN hálózatokat (IEEE 802.11a,b,g). 2004. szeptember 1.-én a Wi-

Fi Alliance bevezette a WPA2-t, egyedüli eltérés az első változattól, hogy a WPA2 TKIP

helyett AES (CCMP) titkosítást használ, illetve a 2004. júliusában elfogadott 802.11i-re

épül. A sok egymásra épülő protokoll átláthatatlanná teszi a IEEE 802.1x szabvány

– 29 –

Page 30: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

vezeték nélküli implementációját és működését. A következő oldalon, a 12. ábrán egy

egész oldalas rajzon szemléltetem, hogyan rétegződnek az egymásra az egyes protokollok,

hogyan folyik a kommunikáció. Az adatáramlás természetesen nem egyirányú, az

authentikáció irányát tüntettem fel a zöld színű nyíllal, a vörös színű nyíl segítéségével a

felhasználói szinten lévő alkalmazás (pl. egy WEB-böngésző) kommunikációs útvonalát

szemléltetem. Az EAP protokoll LAN hálózati interfészeken az ún. EAPoL (EAP over

LAN) segítségével kommunikál. (12. ábra) [14]

12. ábra: Az IEEE 802.1x protokoll implementációja WLAN hálózatra (WPA Enterprise)

– 30 –

Page 31: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

A RADIUS ( Remote Authentication Dial In User Service - RFC 2138) [16] sem képezi

szerves részét az új szabványnak. Az erre vonatkozó ajánlás fő célja az, hogy a vezetékes

környezetben már bizonyított és jól bevált protokollt WLAN hálózatban alkalmazza. A

RADIUS szerver többféle adatbázist (LDAP, SQL variánsok, ORACLE, szb.) támogat,

melyben a felhasználó adatai (név, jelszó, kulcs, stb.) tárolódnak. Amennyiben az AP fel

van készítve a RADIUS használatára, annak segítségével egyszerű, beágyazott

(encapsulated) EAP üzeneteket továbbít és fogad az AS-től. (12. ábra) Négy ilyen

üzenettípus lehetséges:

• Access-Request: AP → AS irányba, lekéredzés küldése

• Access-Challenge: AS → AP a szervertől visszajövő üzenet, Request elfogadása

után

• Access-Accept: AS → AP sikeres authentikáció esetén

• Access-Reject: AS → AP sikertelen authentikáció esetén

A RADIUS önmagában nem teljesen biztonságos, ezért mind az AP és AS egy előre

beállított statikus kulcs alapján, és MD5 hash-ek alkalmazásával kommunikál egymással.

2.4.3 Kommunikációs folyamatok

Miután bemutattam, milyen kulcsokat és protokollokat használ a 802.11i szabvány, a

folyamatok áttekintésével folytatom. (13. ábra)

13. ábra: Az IEEE 802.11i biztonsági kommunikációs folyamatai

– 31 –

Page 32: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

2.4.4 Biztonsági képességek felderítése (Discovery)

Az első lépésben a MS (Mobile Station) és az AP meghatározzák, milyen biztonsági

beállításokkal rendelkeznek (Discovery). Amikor a MS megtalál egy hálózatot (ha van

SSID szórás, ha nincs a kézzel beállítottat keresi) egy Probe Request keretet küld, ami

megegyezik az 1.4 fejezetben tárgyalttal. Az AP egy Probe Response + RSN-IE

adatcsomaggal válaszol, melyben elküldi a MS felé a hálózat biztonsági képességeit. Az

így küldött keret nem rendelkezik még titkosítási képességekkel. Az ebben a csomagban

található ún. RSN-IE (Robust Security Network - Information Element), amely a

következőkről ad információt:

• Authentikációs képességek,

• Unicast (az MS és AP közötti, két szereplős kommunikációban) titkosítási

beállítások,

• Multicast (egy küldő, több vevő) titkosítási beállítások.

A kommunikáló felek között lejátszódik az ún. IEEE 802.11 Open System Authentication.

Ezt más néven MAC cím alapján történő authentikációnak is nevezhetjük, mely nem jelent

mást, mint annak meghatározását, hogy az MS MAC címe szerepel-e az AP címlistájában.

Ezen megoldásról már írtam az előző fejezetben, a címlisták karbantartásának

erőforrásigénye miatt nem közkedvelt. A visszafelé kompatibilitás megőrzése miatt

építették be az új szabványba. Amennyiben ez a lehetőség nincs beállítva az Ap-on, vagy

szerepel a listában akkor az AP Success üzenettel válaszol. Ezután a kliens egy

Association Request + RSN IE csomaggal válaszol, mely tartalmazza a MS képességeit,

és a kérést, hogy ezekkel hozzáférhető-e a hálózat. Siker esetén az AP Association

Response (success) üzenettel válaszol. (14. ábra)

14. ábra: Az IEEE 802.11i - Discovery folyamat

– 32 –

Page 33: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

Az RSN-IE csomag egyik legfontosabb része az ún. Suite Selector (képesség kiválasztó).

A Suite Selector tartalmazhat a szabványban meghatározott információkon kívül

gyártóspecifikus információkat is. A szabványban meghatározott bináris-oktet üzenet

tartalmak a következők lehetnek:

Authentikációs és kucs management funkciók lehetnek:• 00:00:00:1 – 802.1X authentikáció és kulcs management• 00:00:00:2 – nincs authentikáció, 802.1X kulcs management• egyéb jelölések: gyártóspecifikus

Kulcspár és titkosító funkciók lehetnek:

• 00:00:00:1 – WEP • 00:00:00:2 – TKIP • 00:00:00:3 – WRAP (Wireless Robust Authenticated Protocol)• 00:00:00:4 – CCMP • 00:00:00:5 – WEP-104 (WEP-104 bites kulccsal)• egyéb jelölések: gyártóspecifikus

A biztonsági képességek felderítése során tehát a mobil állomás birtokába kerül az SSID-

nek, a hálózatban használt authentikációs és titkosító eljárásoknak. Az Access Point pedig

tudja, hogy a használható képességek közül, a MS melyiket választotta. [12]

2.4.5 Az IEEE 802.1x authentikáció folyamata WLAN hálózatban

Az authentikációs folyamat megkezdéséhez rendelkeznie előzőleg sikeresen kiépített

kapcsolatra van szükség az AP és a MS között. Ezen kívül rendelkeznie kell a kliensnek

és az authentikációt végző szervernek egy előzőleg megosztott kulccsal (ami lehet

tanúsítvány, jelszó, stb.). Mivel az egyes kulcsok előállításához a MAC címre is szükség

van, ezért ügyelni kell arra, hogy az Access Point és a Mobil Állomás ne rejtse el egymás

elől a MAC címeket. A kommunikáció ezek után EAPoL csatornán történik, a hasznos

adatforgalom TCP portjai (pl. 80, 22, stb.) az authentikációs folyamatok idejére

blokkolódnak, a 802.1x szabványban leírtak szerint. (15. ábra)

– 33 –

Page 34: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

15. ábra: Az IEEE 802.11i – EAP authentikációs folyamat

Az authentikáció folyamata a fenti ábrán látható. Miután az AP és a MS között létrejött a

kommunikációs csatorna, az AP egy EAP-Request Identity üzenetet küld a MS felé.

Sikeres válasz esetén az AP felveszi a kapcsolatot a RADIUS szerverrel, melyre

bejelentkezik. Ezután az AP-nak nincs szerepe a kommunikációban, „átlátszó” proxy-ként

átengedi a forgalmat a szerver és a Mobil Állomás között. Az MS és AS egyaránt

rendelkezik a Master kulccsal, melyből létrehozza a PMK ideiglenes kulcsot. A RADIUS

szerver sikeres EAP kommunikáció után egy Accept üzenetet és a szerver által generált

PMK ideiglenes kulcsot elküldi az Access Point-nak. Az AP sikeres üzenet vétele után

egy EAP-Success üzenetet küld a MS felé, majd a kommunikáció titkosítására a PMK-ból

generált PTK kulcsot használja (2.1.1 fejezet). Nem tüntettem fel az ábrán az EAP típusát,

mivel ez többféle lehet, illetve a titkosító kulcsok cseréjének mechanizmusát sem. Az

IEEE 802.11i „de facto” szabványa az EAP típusára az EAP-TLS -t ajánlja, ezért a

következő ábrán azt mutatom be, hogyan működik az authentikáció immár titkosított, a

kulcsok cseréjével és az Access Point - Authentikációs Szerver viszonylatban a RADIUS

kapcsolat titkosítására használt RADIUS kulccsal együtt. (16. ábra)

– 34 –

Page 35: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

16. ábra: Az IEEE 802.11i – EAP-TLS authentikációs folyamat [11]

– 35 –

Page 36: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

A 16. ábrán látható, hogy sokkal komplexebb az authentikáció folyamata titkos kulcsok

használata esetén. Az AP és AS között is meg kell adni egy közös kulcsot, mellyel

titkosítják az egymás között zajló kommunikációt, a szervertől az AP irányába. Az AP az

AS irányába beágyazza a Mobil Állomás felől érkező EAP üzeneteket, RADIUS protokoll

csomagokba. A szerver oldalon természetesen megtörténik ennek reverziója. A

kommunikációt ebben az esetben is az AP kezdeményezi egy EAP-Request Identity

üzenettel, amire a Mobil Állomás egy EAP-Response Identity / MS-ID (MS-Identifier)

üzenettel válaszol. Ebben leküldi egyéni azonosítóját. Miután az AP észlelte, hogy EAP-

képes eszköz csatlakozott hozzá, kapcsolódik a RADIUS szerverhez, elküld számára egy

RADIUS Access Challange üzenetet, melybe be van ágyazva egy EAP-Response üzenet.

A szerver a titkos kulcsával kódolt Access Challange üzenet érkezik válaszul, melybe be

van ágyazva az EAP-Request üzenet. Az AP dekódolja ezt a titkos kulcsával, és továbbít

egy EAP-Request (TLS) üzenetet azt a MS felé, melybe jelzi, hogy EAP-TLS protokoll

szerint folytatja a kommunikációt. Ezután a kommunikáció a mindkét fél birtokában lévő

digitális tanúsítványokon alapul, amely segítségével és álvéletelen számok generálásával

kommunikál a két fél. Miután sikeres volt az EAP-TLS authentikáció a MS és az AS

között, mindketten generálnak egy PMK kulcsot, melyet a további kapcsolatban az AP és

a MS fog használni adattitkosítás céljára. Az Access Point mindaddig átlátszó marad az

EAP számára a MS és az AS számára, ameddig nem érkezik egy Radius Accept üzenet,

melyben megkapja az EAP-success és PMK kulcs. Az AP ebből tudja meg, hogy sikeres

volt a szerver általi authentikáció (mindaddig átlátszó volt, ezért nem tudta). Ekkor az AP

elküld egy EAP-Success üzenetet a MS számára, immár a PMK kulcsban lévő TK

segítségével titkosítva. Mivel az AP megkapta a PMK-t, és a PMK immár a MS

birtokában is megvan (mivel legenerálta), az AP és MS titkos csatornán fognak egymással

kommunikálni. Az IEEE 802.11i azért ajánlja az EAP-TLS módszert authentikációra,

mert ez biztosítja jelenleg a legnagyobb védelmet a hálózat feltörése, az authentikáció

kijátszása ellen. A szerver oldalról érkező adatok védelmét a szerver és az AP között

további titkosítással fokozza. A másik elterjedt módszer, a PEAP annyiban és a TTLS

(működési módjukba megegyeznek) különböznek a TLS-től, hogy csak egyik oldalon

követelik meg a digitális tanúsítványokat (CA – Certificate Authority), a szerver oldal

authentikálja magát a Mobil Állomáson, melynek elküldi a tanúsítvánnyal aláírt MS által

küldött random számot, mely egy jelszóval vissza tudja azt állítani, így megbizonyosodva

a tanúsítvány és az AS hitelességéről.

– 36 –

Page 37: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

2.4.6 Kulcs management

A kommunikáció további része a kulcsok megosztásával és használatával folytatódik. Az

authentikáció mellett fontos megemlítenem ezeket az eljárásokat is, hiszen ez képezi

alapját a biztonságos kapcsolatnak. Az eredeti IEEE 802.1x szabványban lévő kulcs csere

helyett egy újradolgozott kulcscserét használ a 802.11i (mivel az eredetit feltörték). Az AP

és a MS is az ideiglenesen generált PMK kulcsokat használja, annak KCK és KEK részeit

pedig ideiglenes kulcs csoportok (GTK) képzésére használja fel. Amennyiben a

felhasználó elveszti a kommunikációs csatornát egy Access Point-al, egy másik,

ugyanabba a hálózatban lévővel kapcsolatba kerül (Roaming), az authentikációs folyamat

újra lejátszódik, új kulcsok generálódnak. A kulcsok „authentikációját”, tehát annak

meghatározását, hogy a kliens és az AP ugyanazzal a PMK-val rendelkezik, EAPoL

üzenetek EAPoL-PRF (Pseudo Random Function) segítségével végzi a MS és az AP. Az

üzenetek integritását az ún. MIC (Message Integrity Code) segítségével ellenőrzik

kommunikáló felek. (17. ábra)

17. ábra: „4 utas kézfogás” - kulcs csere a IEEE 802.11i szabványban

– 37 –

Page 38: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

A kulcsok verifikálása és beállítása a 17. ábrán látható ún. „4 utas kézfogás” segítségével

és Unicast-EAPoL üzenetek segítségével történik. A folyamat a következőképpen

játszódik le:

1. Az access point elküldi az általa generált véletlen számot (AP-nonce) a

felhasználónak. A felhasználó, mivel birtokában van a PMK kulcs, generál egy

másik véletlen számot (MS-nonce). Ezután a PMK, az AP-Nonce., az MS-nonce, az

AP MAC címe és a saját MAC címe segítségével generálja a PTK-t, melyet EAPoL-

PRF-nek is neveznek.

2. Az AP egy EAPoL üzenetet fogad a felhasználótól, melyben megkapja a MS-nonce

számot, és a mobil állomás RSN-IE üzenetét (melyben a biztonsági beállításait

tudatja az AP-vel). Ezt az üzenet tartalmaz ezen kívül egy MIC (Message Integriti

Code) kódot, amely az üzenet hash-e, az integritás ellenőrzése céljából. A MIC

kódot szokás a szakirodalomban Michael kódnak is nevezni. Ez nem más, mint az

üzenet MD5 vagy SHA1 (Secure Hash Algoritm) lenyomata. Miután megkapta az

üzenetet, hasonlóan a felhasználóhoz, generál egy PTK kulcsot, amely meg kell

egyezzen a MS oldalon lévővel (amennyiben az üzenet MS-Nonce száma helyes).

3. A harmadik lépésben, miután sikeresen generálta a PTK-t, egy EAPoL üzenetben

felszólítja a klienst a PTK használatára, az üzenet ezen kívül tartalmazza újra az AP-

nonce véletlen számot, egy MIC kódot és az Access Point-on érvényes biztonsági

beállításokat (RSN-IE).

4. Az utolsó lépésben egy EAPoL üzenettel válaszol a Mobil Állomás az AP üzenetére,

amely mindössze a MIC kódot tartalmazza. Ezután mindkét fél beállítja a PTK kód

TK részét adattitkosítás céljára.

Az eljárás megbízhatóságát az biztosítja, hogy a PMK soha nem kerül titkosítatlanul

átvitelre (az AS is titkosítva küldi az Access Point-nak). Ezáltal kiküszöbölhető az ún.

Man-In-The-Middle támadás, mivel a PMK kulcs (és egyik titkosításhoz használt kulcs

sem) kerül nyíltan átvitelre, még a titkosításhoz használt TK kulcs sem. Minden kulcsot

származtat az eljárás véletlenszerűen generált számok segítségével. Ezáltal egyszerűen

megoldható a titkosító kulcs cseréje, akár csomagonként is. A mindkét oldalon

megtalálható PTK kulcs KCK (Key Confirmation Key) segítségével történik a 2, 3 és 4.

üzenet verifikációja. A csoportos kulcsok (Group Keys) cseréje hasonló módon, „4 utas

kézfogás” és nonce véletlenszerűen generált számok segítségével történik. A csoportos

– 38 –

Page 39: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

kulcsok az ún. multicast (kommunikáció egy gép irányából csoport felé) információk

védelmére szolgálnak, míg a PMK és TK kizárólag az Access Point és a felhasználó

közötti adattitkosításra.

2.4.7 Információ titkosítás, algoritmusok

A sikeres authentikáció és kulcs csere (kulcs „authentikáció”) után az IEEE 802.11i

szabvány több módszert, algoritmust is biztosít az információk titkosítására:

• WRAP (Wireless Robust Authenticated Protocol )

• CCMP (Counter CBC-MAC Protocol)

• TKIP (Temporal Key Integrity Protocol)

Az új szabvány az WEP gyengeségeit felismerve a 24 bites IV helyett 48 bites IV-t

használ (~16millió helyett, ~17,5×1012 állapot) mely esetén több mint 15 évig kellene

várni, hogy megismétlődjön ugyanaz az IV, 54 Mbps adatsebesség és 1500bit-es

csomagméret mellett. Az IV ugyan 48 bit hosszú, de az első 4 bitet ismétlés elleni

védelmet szolgál. A nagyobb méretű IV és az ismétlés elleni védelem használatával

kiküszöbölhető a „lexikonépítő” támadással történő kulcsszerzés. Mivel folyamatos az

802.11i bevezetése, ezért került a WEP kiegészítéseként a TKIP a szabványba. A TKIP

használatához nem szükséges a meglévő hardver cseréje, mindössze a hardver meghajtó

szoftverét (firmware) kell frissíteni mind AP és felhasználói oldalon, és továbbra is az

RC4 titkosítást fogja használni, de megnövekedett biztonság mellett, csomagonként

újragenerált kulcsot biztosít. A TKIP algoritmus szétválasztja a titkosító kulcsot az

authentikációhoz használttal, az authentikáció folyamata megegyezik a WEP-nél

tárgyalttal (1.5.1 fejezet). A CCMP és WRAP az AES különböző módozatait (OCB,

CCM) használja titkosításra, de teljesen új felépítésű hardver szükséges hozzá. Mivel az

AES-t a jelenleg legbiztonságosabb titkosítási algoritmus, mindamellett RFC 3268

szabvány (melyet 2002-ben fogadtak el) ezért a legnagyobb biztonságot jelenleg a

legújabb, CCMP-t támogató hardvereszközök beszerzésével lehet elérni (4. táblázat). [9]

[10] [11]

– 39 –

Page 40: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

WEP TKIP CCMPKódoló algoritmus RC4 RC4 AESKulcs mérete 40 vagy 104 bit 128 bit: kódolás,

64 bit: authentikáció

128 bit

Inicializáló vektor (IV) 24 bit hosszú 44+4 bit hosszú 44+4 bit hosszúAdat integritás CRC-32 MIC CCM

Fejléc integritás - MIC CCMIsmétlés ellenivédelem

- IV vizsgálata IV vizsgálata

Kulcs management - (EAP alapú) EAP alapú

4. táblázat: Titkosító algoritmusok és tulajdonságaik [11]

2.4.8 Authentikáció előre osztott kulcsok alapján (WPA-PSK)

Kisebb hálózatokban, költség és erőforrás igénye miatt felmerülhet az authentikációs

szerver (AS) elhagyásának lehetősége. A 802.11i szabvány erre az esetre is kínál

lehetőséget, az ún. WPA-PSK (WPA - Pre Shared Key) megoldást. (18. ábra)

18. ábra: A WPA-PSK működése

Valójában ez a megoldás nem hordoz magában 802.1x alapú (EAP) authentikációs

képességeket, tehát nincs EAP (EAPoL) és RADIUS protokoll alapú kommunikáció a két

eszköz között. A WPA-PSK mód általában mindegyik ma megvásárolható eszközön

kiválasztható, vagy a régebbi WLAN eszközökhöz új firmware frissítéssel használhatóvá

válik. Beállítása egyenként, minden eszközön külön-külön megadott jelszó vagy

– 40 –

Page 41: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

hexadecimális karaktersorozat (amely a PSK) segítségével történik. A PSK fogja

reprezentálni ebben az esetben a RADIUS szervertől kapott PMK kulcsot (2.1.5 fejezet).

A kódoláshoz használt TK meghatározása, hasonló módon, „4 utas kézfogás” és

véletlenszerűen generált (nonce) számok segítségével történik, mint a 17. ábrán, azzal a

különbséggel, hogy nem EAPoL üzenetekkel, hanem normál üzenetcsomagokkal (1500

bit) történik a kommunikáció. A PSK és az ebből generált kulcsok itt sem kerülnek

átvitelre, a TK meghatározása után AES (CCMP, WRAP) vagy TKIP titkosító algoritmus

[15] segítségével történik az adatcsere. Az authentikáció valójában a WEP-nél

megismerthez hasonlóan történik, akkor tekinthető az egyik fél identitása elfogadottnak a

másik oldalon, amennyiben vissza tudják állítani az egymásnak küldött véletlenszerűen

generált (nonce) számokat, ekkor értelemszerűen rendelkeznie kell mindkét félnek

ugyanazzal a kulccsal.

A WPA-PSK módszer használható Ad-Hoc hálózatokban is authentikáció és adattitkosítás

céljára (mivel Ad Hoc esetben nincs authentikációt végző és a kommunikációt irányító

kitüntetett fél). [13]

2.5 Authentikációs eljárások értékelése

Az authentikációs eljárások értékelésekor a maximális biztonság és megbízhatóság mellett

figyelembe kell venni az alkalmazott (vagy alkalmazni kívánt) környezetet, a WLAN

hálózat kiterjedését (térbeli és fizikai), felhasználók változatosságát és maximális számát

(nagy a felhasználók fluktuációja, avagy általában ugyanazok a felhasználók), az eszközök

szabványoknak való megfelelését, stb. Nagyon sokrétű követelményeket kell elemezni,

amennyiben komolyan oda akarunk figyelni a hálózat biztonságának fenntartásához, de

emellett nem szeretnénk indokolatlanul magas üzemeltetési és fenntartási költségeket,

erőforrásokat felhasználni a hálózat működésének fenntartásához.

Biztonság szempontjából az eddigiek közül egyértelműen a IEEE 802.1x - EAP-TLS +

CCMP a legjobb, mivel kétoldalú digitális tanúsítványokat használ az authentikációra, és

az adattitkosítás is a legerősebb, AES algoritmussal történik. Az így megvalósított

hálózatba történő illetéktelen behatolásra gyakorlatilag (és elméletileg sem) nem létezik

módszer, viszont ennek kiépítése és fenntartása (PKI infrastruktúra, chipkártyák a

tanúsítványok tárolására, authentikációs szerver, legmodernebb WLAN eszközök, stb.)

– 41 –

Page 42: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

sok erőforrást igényel - pénzügyi és fizikai tekintetben egyaránt. Az ilyen hálózatokat csak

nagyobb kiterjedésű, nagyvállalati vagy közigazgatási környezetben lehet hatékonyan

realizálni.

Kisebb vagy közepes hálózatokhoz a PKI infrastruktúra elhagyásával jól használható és

megfelelően hatékony biztonsági szempontból a IEEE 802.1x - PEAP vagy TTLS lehet.

Ezekben a kliens oldalról egyszerűen, jelszó- és felhasználónév megadásával, mégis

titkosított kommunikációval lehet authentikációt megvalósítani. A PEAP viszont nem

annyira biztonságos, mivel létezik a feltörésére megoldás. A feltörés a Man-in-the-Middle

(MitM) elnevezésű eljárással és megfelelően módosított driverrel, firmware-el feltörhető.

Az eljárás lényege, hogy harmadik fél ékelődik a felhasználó és a WLAN hálózat közé. A

harmadik fél lehallgatja és módosítja a csatornán lévő adatokat, a felhasználó számára

Access Point-ként kiadva magát, a hálózati oldalról pedig kliensként „látszódik”. Sikeres

csatorna felépítése után az authentikációs szerverrel (anonymus, idegen felhasználóként),

a valódi klienssel is kiépít egy csatornát, mint egy, a hálózat részét képező AP. A

kapcsolat kialakítása után transzparensen közvetíti az adatokat, a valódi kliens és a valódi

hálózat között, közben megfigyelve és rögzítve az adatokat, majd sikeres authentikáció

után a valódi klienssel megszakítja a kapcsolatot, és annak adatait felhasználva

használhatja a hálózatot. A titkosításhoz használt kulcsok azonban így nem kerülhetnek a

birtokába, azokat különböző technikákkal (kripto-analízis, szótár módszer, „brute-force”

támadás) tudja megszerezni, mivel birtokában van a kliens és a szerver által használt

közös kulcsoknak és a csatornán cserélt véletlen számoknak. Védekezni az ilyen jellegű

támadások ellen komplexebb, összetettebb jelszavakkal, kölcsönös – kétirányú

authentikációval (mint a TLS-nél, a TTLS csak egyirányú) lehet.

A kisebb, 2-4 Access Point-ot tartalmazó hálózatokban anyagi és strukturális szempontok

miatt nem alkalmaznak külön authentikációs szervert, sőt a legkisebb hálózatokban

(otthoni, vagy kisebb irodai – SOHO Small office Or Home hálózatok) előfordulhat hogy

még szerver sincs. Ebben a szituációban alkalmazható a WPA-PSK módszer, TKIP vagy

AES titkosítással. Sajnos 2003. novembere óta ez sem teljesen biztonságos, ugyanis ekkor

jelent meg először leírás a WPA-PSK módszerrel védett, TKIP titkosított hálózatok ellen

alkalmazható támadásról. Azóta internetről szabadon letölthető alkalmazás is megjelent,

mellyel komplett támadás indítható. Mivel a támadási módszer szótár alapú, „brute-force”

ezért minél komplexebb és összetettebb megosztott közös kulcsok segítségével lehet

egyedül védekezi.

– 42 –

Page 43: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

A legrégebb óta alkalmazott WEP (különböző változatai: 40, 104, 256 bit hoszzú kulccsal)

nyújtja a legalacsonyabb védelmet a támadásokkal szemben, számos alkalmazás létezik a

feltörésére, ezért ennek használata egyáltalán nem ajánlott.

Az informatika területén 100%-os biztonság nem létezik, nincs védelem például durva

behatolás (az authentikációs szerver feltörése, adatok ellopása, cseréje) ellen, ezért a

biztonsági szintek, authentikációs metódusok megtervezésénél minél körültekintőbben

kell eljárni, az alkalmazandó módszer(ek) tulajdonságainak, gyenge pontjainak

feltérképezésével. A rendszer annyira lesz védve, amennyire a leggyengébb láncszeme

biztonságos. Amennyiben authentikációs szervert használ a hálózat, akkor ez a

kulcsfontosságú, hiszen ezen vannak a Master kulcsok, felhasználói adatok, a szerver

hibája, kapcsolat megszakadása megbéníthatja az egész hálózatot. Másik járható út lehet a

magasabb rétegek biztonságának fokozása. Ilyen lehet például az IPSec (Internet Protocol

Security) vagy a VPN (Virtual Privte Netvork) alkalmazása.

– 43 –

Page 44: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

3. Saját authentikációs módszer kidolgozása

Az önálló labor gyakorlataink során társaimmal a Híradástechnikai Tanszék teljes területét

lefedő kísérleti- minta vezeték nélküli hálózatot építettünk ki. A hálózat gerincét több

különböző gyártótól származó Access Point alkotja. A WLAN hálózat folyamatos

fejlesztés, tesztelés alatt áll, különböző biztonsági és authentikációs megoldások

telepítésére került már sor. A hálózatot jelenleg is eredményesen használják a tanszék

oktatói és az MC2L (Mobil Communications and Computing Laboratory) diákjai. A

következőkben röviden bemutatom a hálózat felépítését- és működését, illetve a

diplomatervem céljából fejlesztett, a jelenleg működő hálózathoz illeszkedő

authentikációs alkalmazás-csomagot.

3.1 A tanszéki WLAN hálózat

Önálló labor gyakorlataink során azt a feladatot kaptuk társaimmal, hogy a

Híradástechnikai Tanszék területén a tanult vezeték nélküli és hálózati technológiák

segítségével működő WLAN hálózatot építsünk ki. A hálózat építése a lehetséges

felhasználók számával és elhelyezkedési területeinek feltérképezésével kezdődött. A

második lépés az így kapott lefedettségi terület-igényekhez alkalmazkodva a telepítendő

Access Point-ok helyét kerestük meg, tekintettel a különböző gyártótól származó eszközök

energiaellátási és hatótávolság paramétereire. Az így kapott eredmények alapján tervet

készítettünk, majd kiviteleztük a hálózatot, mely folyamatosan üzemel.

3.1.1 A hálózat fizikai felépítése

A fizikai telepítéskor felmerült a kérdés, hogy használható-e az akkor meglévő kiépített

LAN hálózat, de ettől el kellett tekintenünk, mivel nagyon sok bontással átépítéssel járt

volna. Ezért úgy döntöttünk, hogy a meglévő vezetékes hálózat elemeit a lehető

legminimálisabb módon használjuk fel. Az egyes Access Point-okhoz mi magunk

építettünk ki a kábelezést és a tápellátást, így gyakorlatilag függetlenné vált a hálózatunk

(fizikai értelemben) az egyetemen már kiépítettel. Tehát az általunk telepített hálózat egy

ponton kapcsolódik az egyetemihez, egy switch-en és egy szerveren keresztül. A hálózat

– 44 –

Page 45: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

viszonylagos nyíltsága (bárki elérheti az Access Point-ok hatósugarán belül) miatt kellett

egy szerver számítógépe telepíteni, amely gateway, tűzfal- és authentikációs eszközök

segítségével korlátozza a első, egyetemi hálózathoz történő hozzáférést. Ez a számítógép

különféle szűrési funkciói által biztosítja, hogy a vezeték nélküli hálózatot elválasszuk a

vezetékestől és kizárólag a regisztrált felhasználók vehessék igénybe a WLAN-t és az

engedélyezett portokon folyjon kommunikáció. A gép egyéb feladatokat is ellát ezeken

kívül: a rajta futó DHCP (RFC 2131 - Dynamic Host Configuration Protocol) - szerver

segítségével IP címet oszt a klienseknek, DNS szolgáltatást biztosít, IPSec segítségével

titkosított adatkapcsolat létesíthető a vezeték nélküli kliensek és szerver számítógép

között, amely egy felsőbb rétegbeli adattitkosítási protokoll [16]. (19. ábra)

19. ábra: A tanszéki WLAN hálózat strukturális felépítése

A kiépítés során az Access Point-okat megpróbáltuk minden esetben a folyosón

elhelyezni, az álmennyezetbe építve, így egy karbantartás esetén könnyen elérhetők (20.

ábra ). A folyosón elhelyezett eszközöket távtáplálással tápláltuk az UTP kábelek

kihasználatlan érpárain keresztül (POE – Power On Ethernet), melyek tápegységeit a

switch közelében helyeztük el. Az MCL laborban két eszköz került telepítésre a várható

nagyobb sávszélesség igények miatt (önálló laboratórium – mérések).

– 45 –

Page 46: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

20. ábra: Az Access Point-ok elhelyezkedése a tanszék első emeletén

Az AP-ok telepítése úgy zajlott, hogy először mindegyiken beállítottunk statikus IP

címeket, alhálózati maszkot és eszköznevet. Ezután a vezetékes hálózat központi rendező

helyiségéből (szerverterem) UTP kábeleket vezettünk az álmennyezetben a tervezett AP

telepítési pontokig. Az Access Point-ok rögzítését az álmennyezetben már előttünk

kiépített kábeltartó profilokhoz erősítettük, ezekben futottak az UTP kábelek is. A fizikai

kiépítés után a tesztelés következett, amikor megvizsgáltuk, hogy mindegyik Acces Point

működik-e, elérhető-e vezetékes és vezeték nélküli módon is. Majd kipróbáltuk hogy a

lefedni kívánt helyiségekből megfelelő, 11 Mbps sebességgel elérhető-e a hálózat. Az

ellenőrzés után beállítottuk a tűzfal, gateway és DHCP funkciókat a szerver gépen, majd a

hálózat tesztüzeme kezdődött el. A kiépítéshez Cisco (Aironet-350, 1100, 1200), Nokia-

A036 és 3Com-6000 típusú Acess Point-ok kerültek felhasználásra. A tesztüzem során azt

tapasztaltuk, hogy bekapcsolt WEP titkosítás esetén a mozgó kliens nem tudott

átjelentkezni a különböző gyártótótól származó Access Point-ok között, kézzel kellett ezt

megtenni ilyen esetekben, amely kényelmetlenséghez, nem elfogadható működéshez

vezethet. Emiatt úgy döntöttünk, hogy nem használjuk az amúgy is gyenge védelmet

biztosító WEP-et, ahelyett keresünk más, alternatív biztonsági megoldásokat a hálózat

védelmére.

– 46 –

Page 47: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

A szerveren lévő Debian GNU/Linux operációs rendszer alatt futó DHCP szerver minden

bejelentkezés esetén új IP címet oszt ki kliensek részére, ezért az IP alapján történő szűrés

nem megoldható (tűzfal segítségével). A DHCP megoldás előnye, hogy folyamatosan

központilag lekérdezhető, beállítható, hogy hány kliens kapcsolódhat a hálózathoz, illetve

milyen tartományú címeket kapjanak. Ezzel szemben az AP-okon lévő gyárilag beépített

DHCP esetén ennek kontrollálása nehezebben lenne áttekinthető, ezért az Access Point-

okon lévő beépített DHCP funkció kikapcsolásra került.

A szerverre telepített két hálózati kártya közül az egyikkel a tanszéki hálózathoz

kapcsolódik és dedikált (fix) IP címmel rendelkezik, a másikra vannak kapcsolva egy

switch segítségével az Access Point-ok. A gateway funkció feladata, hogy a WLAN

hálózatról érkező forgalmat továbbítsa az Internet felé. Ezt a funkciót, a hálózati

címfordítással együtt, a Linux kernel beépített csomagszűrője, a netfilter valósítja meg.

A szerver hálózati címfordítást is végez (NAT – Network Access Translation), ami azt

jelenti, hogy a vezeték nélküli hálózat összes számítógépének IP címe egy IP címre kerül

átfordításra. Ez az egy IP cím pedig a külső, egyetemi hálózathoz kapcsolódó hálózati

kártya fix IP címe. Erre a címfordításra általában akkor van szükség, amikor egy dedikált

IP címen keresztül szeretnénk összekötni belső hálózatunkat az Internettel. A belső

hálózatunkon lévő eszközöknek az Interneten a belső hálózatok részére fenntartott

tartományból oszt IP címeket a DHCP szerver. Esetünkben ez a tartomány: 192.168.0.0 /

255.255.255.0 . A tartományban lévő második tag, az ún. Netmask által meghatározható a

hálózatban kiosztható maximális IP tartomány, ami esetünkben 255 darab kliens eszközt

jelent, de ezek száma igény szerint növelhető a Netmsask módosításával. A NAT másik

előnye, hogy az Internet irányából érkező esetleges támadások elől elrejti a kliens

eszközöket (ennek hátránya lehet, hogy nem, vagy csak külön szerver beállításokkal

működhetnek ezen keresztül a peer-to-peer programok – file-cserélők, hálózati játékok –

és a VoIP - Voice over IP telefon alkalmazások).

A szerveren lévő tűzfal a kernelbe beépített egyszerű csomagszűrő, de az eddig felmerült

igényeinket tökéletesen kielégíti. Mivel közvetlenül a kernel része, ezért gyorsan és

hatékonyan valósítja meg a csomagszűrő funkciókat, a lehető legkisebb erőforrásigény

mellett. Az iptables nevű programmal egyszerűen módosíthatók a tűzfal szűrési szabályai

(alkalmazható MAC és IP szerinti szűrés is) ezért ennek használata mellett döntöttünk.

– 47 –

Page 48: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

3.1.2 Alternatív biztonsági megoldások alkalmazása

A WLAN szabványok által ajánlott biztonsági megoldások nem alkalmazhatók a

hálózatunkban, mivel nem működnek együtt a különböző gyártótól származó eszközök, –

nem érhető el az eszközeinkhez megfelelő firmware frissítés.

ACL (Access Control List), azaz hozzáférést szabályozó lista mindegyik Access Point-on

beállítható. Ez a módszer az ún. Open System Authetication módszer (Nyílt Rendszer

Authentikáció), vagyis a kliens hálózati kártya MAC címe alapján dönti el, hogy valakit

beengedünk-e a hálózatba vagy sem. Ezen módszer alkalmazását elvetettük, mivel nem

lehetséges központi adminisztráció, minden eszközön külön-külön be kell állítani a listát

és a lehallgatás ellen sem véd, a MAC cím is viszonylag egyszerűen módosítható és

kényelmetlenséget jelent felhasználói oldalról a MAC cím leolvasása, bevitele,

módosítása, stb.

A biztonság fokozása érdekében azonban a felsőbb rétegek titkosítására esett a választás,

melyet meg lehet valósítani a központi szerver gép segítségével. Az IPSec

protokollcsomag alkalmazására (IP Security - RFC 2401, RFC 2410, RFC 2411, stb.) esett

a választás, amely jelenleg is elérhető, amennyiben a kliens eszközökön telepítve van e

szolgáltatás.

Segítségével hitelesítést és titkosítást is eg lehet valósítani, így nem csak a hálózaton átvitt

adatok vannak védve, de magának a hálózat használatát s megakadályozhatjuk

illetéktelenek számára. Az IPSec az alábbi szolgáltatásokat biztosítja:

• IPSec kapcsolat felépítése során a résztvevő felek közvetlenül azzal veszik fel a

kapcsolatot, akivel szeretnék (Tunnel – csatorna).

• Transzport vagy tunnel mód szerinti átvitel.

• A felépült kapcsolatot csomagok szintjén is ellenőrzi, így elkerülhető a harmadik fél

általi információ módosítás (Man in the Middle -MitM)

Az IPSec jó megoldásnak tűnik a WLAN biztonsági problémáinak orvoslására, hatásosan

véd a lehallgatás, illetve a csomagok módosítása ellen. A vezeték nélküli kliens és a tűzfal

között IPSec tunnelt biztosítja a védelmet, mely szakaszon a hálózati forgalom

biztonságban van. Hátránya lehet, hogy az eltérő operációs rendszerrel rendelkező

kliensekre történő telepítése és beállítása bonyolult lehet laikus személy számára, akik

– 48 –

Page 49: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

„csak” használni szeretnék a hálózatot, ezért más authentikációs módszer is bevezetésre

került.

3.1.3 A jelenlegi authentikációs megoldás

Mivel alapvetően nem használtuk a 802.11 szabványok beépített biztonsági funkcióit a

hálózat védelmére, ezért a hálózatunk központi szerverén futó tűzfal szolgáltatás

segítségével oldottuk meg a felhasználók hozzáférésének korlátozását. A védelem a

következő módon működik:

A DHCP szerver segítségével minden egyes csatlakozni kívánó felhasználó kap IP címet,

de a tűzfalon beállított szabályok alapján csak az érheti el a belső hálózatot, aki előzőleg

regisztrálta a kártyája MAC címét a hálózat adminisztrátoránál. Ez a módszer lényegében

egy továbbfejlesztett ACL technika. A szerveren beállított FORWARD tűzfal –

csomagszűrő lánc tartalmazza azokat a szabályokat amelyeket a vezeték nélküli

kliensektől érkező továbbítandó csomagokra kell alkalmazni. Tehát amennyiben egy

kliens eszköz számára elérhetővé szeretnénk tenni az Internetet (az egyetem belső

hálózatát), akkor annak a hálózati kártyájának a MAC címére engedélyezni kell a

csomagok továbbítását a következő, szerveren futtatott parancs segítségével:

iptables -I FORWARD -m mac –mac-source 00:60:1D:22:25:2F -j ACCEPT

(A feltüntetett MAC cím - 00:60:1D:22:25:2F - példa, ennek helyére kerül a felhasználó MAC címe.)

Az IP cím alapján történő engedélyezés nem megoldható, mivel a DHCP folyamatosan

változó címeket oszt ki és hard handover, vagy újracsatlakozás esetén a kapcsolat

megszakadásához vezetne ennek alkalmazása, ez esetben mindig újra kellene

engedélyezni a kliens eszköznek az új IP címével a kommunikációt amely ugyancsak

kényelmetlen és nem felhasználóbarát megoldás lenne.

A felhasználó kommunikációjának letiltása hasonló módon történhet az alábbi parancs

segítségével:

iptables -D FORWARD -m mac –mac-source 00:60:1D:22:25:2F -j ACCEPT

(A feltüntetett MAC cím - 00:60:1D:22:25:2F - példa, ennek helyére kerül a felhasználó MAC címe.)

– 49 –

Page 50: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

Az engedélyező és tiltó parancsok közötti különbség a -I vagy -D kapcsoló használatában

rejlik. Engedélyezés esetén a -I (Insert) beillesztést jelent a FORWARD láncba, míg a -D

(Delete) törlés a láncszabályból.

Alapbeállítás a hálózaton, hogy az Internet felé egyetlen kliens forgalmát sem engedi ki a

szerver. A DHCP által biztosított IP cím segítségével csak egy belső honlapot, a

https://zen.hit.bme.hu/login címen tudják elérni melyen keresztül engedélyezhető, a

számukra regisztrált eszköz. A felhasználók amennyiben használni kívánják a hálózatot,

egy egyszerű webes felületen keresztül végezhetik el az authentikációt. (21. ábra)

21. ábra: Az engedélyező webes felület

Amennyiben egy felhasználó igénybe szeretné venni a tanszéki vezeték nélküli hálózatot,

regisztráltatnia kell az általa használni kívánt kártya MAC címét a rendszergazdánál. A

rendszergazda egy felhasználói nevet és egy jelszót biztosít számára, amivel belépve a

webes felületre, kiválasztható, mely eszközt szeretné használni (egy felhasználóhoz több

MAC címmel rendelkező eszköz is regisztrálható), megváltoztathatja a jelszavát, és

kijelölheti a hálózat előzetesen becsült használati időtartamát. A biztonságos

kommunikáció érdekéken az oldal https (RFC 2818 - HTTP Over TLS) protokollal érhető

el, így a felhasználói név és a jelszó titkosítva kerül továbbításra, a hálózati forgalom

megfigyelésével nem lehet megfejteni azokat. Az engedélyezés technikailag egy PHP (Php

the Hypertext Preprocessor – szerver oldali program) szkript segítségével történik, amely

miután megkapta a titkos csatornán átvitt információkat, lefuttat egy shell scriptet a kapott

paraméterekkel. A shell scriptben van benne a fentebb említett iptables parancs, mellyel

– 50 –

Page 51: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

engedélyezi, illetve egy másikkal létrehoz egy fájlt, melyet a kapott időtartam lejárta után

hív meg az at program. A fájl tartalmazza a törlő parancssort.

3.1.4 A mintahálózatban alkalmazott biztonsági eljárások értékelése

Mint az előzőekben már leírtam, sajnos a különböző gyártóktól származó Access Point-ok

miatt nem volt kielégítő a WEP alkalmazása. Sajnos a berendezések nem voltak

felkészítve a 802.11i szabvány szerinti nagyobb biztonságot nyújtó authentikációs

(802.1x, TTLS) és titkosító (TKIP, AES) protokollok használatára, ezért kellett saját

módszereket kidolgozni a biztonság fokozására. Az alkalmazott IPSec megoldás

elterjedten használt már vezetékes környezetben is, nagyfokú védelmet biztosít a hálózat

számára, és kölcsönös authentikáció is végezhető vele. A hátránya abból származik, hogy

mind a szerver, mind a kliens eszközökre fel kell telepíteni az IPSec protokollt,

megfelelően konfigurálni kell mindkét oldalon és ez a viszonylag bonyolultabb műveletsor

(a jelszavas bejelentkezéshez képest) megnehezíti használatát. Sajnos ezt tapasztaltuk is,

mivel csak nagy nehézségek árán sikerült feltelepíteni a legelterjedtebb Windows

operációs rendszer több elérő változatára. Az egyre elterjedtebb PDA (Personal Digital

Assistant) eszközön pedig nem sikerült működésre bírni.

Az authentikációra alkalmazott sokkal egyszerűbb eljárás kényelmesebben használható,

viszont nem nyújt megfelelő biztonságot, hiszen nincs adattitkosítás. Egy másik gyenge

pontja is van a webes felületű authentikációnak. Az engedélyező script meghívásakor be

kell állítani egy időkorlátot (mivel a rendszer nem állapottartó és nem figyeli a

kapcsolatot, így oldható meg a felhasználó MAC címének törlése a láncból), azonban ha a

támadó lehallgatja a hálózatot, egy egyszerű programmal, máris birtokába kerül a rajta

forgalmazó eszközök MAC címének. Amennyiben megszakad a kapcsolat az

engedélyezett eszközzel, vagy végzett a hálózat használatával, a támadó beállítja magának

az előzőleg lehallgatott MAC címet és máris forgalmazhat a hálózaton. Ez igen nagy

sebezhetőséget rejt magában. A második gyengesége hogy az alkalmazott https

technológia támadható Man-in-the-Middle módszerrel, hasonlóan, mint a PEAP (TTLS)

tárgyalásánál leírtam. Felhasználói részről pedig kissé kényelmetlen, hogy ha más

eszközről szeretnénk használni a hálózatot, mint amelynek a MAC címe előzetesen

regisztrálva lett a számunkra, újra föl kell keresni az adminisztrátort, illetve ha több

eszköz is bejegyzésre került a felhasználó számára, a nehezen megjegyezhető MAC címek

– 51 –

Page 52: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

kiválasztása kényelmetlen lehet.

Az utóbbi authentikációs módszer leváltására dolgoztam ki egy program-csomagot, amely

kiküszöböli a legtöbb gyengeségét és a kényelmetlen használatot. Az általam kidolgozott

módszer sem nyújt adattitkosítást, viszont nyílt hálózatban jól alkalmazható

authentikációra, kényelmes és biztonságos a kezelése. A következőkben ez kerül

bemutatásra.

3.2 A saját authentikációs módszer tulajdonságai

A saját módszer kidolgozásakor a következő célkitűzéseket valósítottam meg:

• Jól illeszkedjen a programcsomag a jelenleg működő hálózatba (szoftveresen)

• MAC cím alapján történő adatforgalom-engedélyezés (a meglévő felhasználó-

adatbázis alapján történő név-jelszó kezelés)

• Windows (98-XP) és Linux alapú grafikus illetve konzolos kliens

• Jelszó változtatási lehetőség

• SSH (SSH2 – Secure Shell-ver.2) alapú biztonságos kommunikáció a szerverrel

• A kapcsolat folyamatos figyelése

• Könnyű és egyszerű kezelhetőség szerver és kliens oldalon egyaránt

• Ne kelljen MAC címeket felhasználókhoz rendelni

A fent említett viszonylag komplexnek tűnő célokat jól sikerült megoldanom, melynek

folyamatát a következőkben mutatom be.

3.2.1 Az alkalmazott eljárások

Az egyik legfontosabb a megfelelően biztonságos csatorna kiépítése és fenntartása a

szerver és a kliens között. A legalkalmasabbnak az elterjedt és nagyon biztonságosnak

tekinthető SSH2 protokoll tűnt erre a célra. Az SSH2-t feltörésére nem létezik még eljárás

jelenleg ezért elterjedten használják nagy Unix (és Linux) rendszerek távoli

adminisztrációja céljából, de alkalmas fájlok átvitelére is és biztonságosan elérhetők vele

olyan szolgáltatások, amik egyébként nem használnak titkosítást. Az SSH-nak kétféle

változata van, a régebbi (sima SSH) tartalmazott egy hibát, melyet kihasználva feltörhető

– 52 –

Page 53: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

volt, ezért ma már csaknem kizárólag az SSH2-t használják, ezért esett a választásom erre

a megoldásra (a továbbiakban az SSH alatt az SSH2 protokollt kell érteni).

Az SSH2 az ún. Diffie–Hellman kulcscsere-protokollon alapul (hasonlóan az IPSec is). A

Diffie–Hellman kulcscsere-protokollt a kifejlesztőiről kapta nevét és 1976-ban hozták

nyilvánosságra. A módszer lényege hogy a két kommunikáló fél átvigyen egy titkos,

mások által ismeretlen adatot egy nyilvános csatornán anélkül, hogy előtte bármilyen

közös jelszót megbeszélnének egymással majd egy agyirányú matematikai eljárással

(modulo hatványozás) egy közös titkos kulcsot generáljanak, amely ezután egy

szimmetrikus titkosító bemeneti kulcsa lehet. A protokoll elméletileg bizonyítottan

biztonságos, mivel diplomatervemnek nem célja a kulcsgenerálás matematikai elemzése,

az megtalálható az irodalomban. Az SSH erőssége abban rejlik, hogy többféle algoritmust

is tud használni az adatok titkosítása céljából, a legelterjedtebbek: AES, Blowfish, 3DES,

vagy bármilyen szimmetrikus algoritmus lehet, amiben a két fél megegyezik és tudja

használni. Az SSH a Man-in-the-Middle támadás ellen is fel van készítve, mivel minden

kulcsot eltárolnak a kommunikáló felek és amennyiben változás áll be a kulcsokban,

értesíti a felhasználót, a lehetséges támadásra. [17] [18]

Mivel a platformfüggetlenség volt a következő legfontosabb cél, ezért olyan programozási

nyelven kellett megírni a szoftverkomponenseket, melyek egyaránt futtathatók Linux

(Unix) és Windows rendszerű számítógépeken. Első megközelítésben a

legalkalmasabbnak a Java környezet tűnt. Mivel azonban nem volt megtalálható megfelelő

SSH2 támogatottság Java platformra ,ezért a választásom egy másik nyelvre, a Python-ra

esett.

A Python nyelv teljes mértékben nyílt forrású (OS-Open Source), platformfüggetlen nyelv

és szabadon felhasználható mind üzleti és egyéb célokra (szemben ezzel, a Java nem nyílt

forrású nyelv). Ezért nagyon sok függvény könyvtár (Python alatt moduloknak nevezik,

továbbiakban modul) található hozzá. A meglévő SSH támogatottság azért volt fontos,

mert egy teljes SSH protokoll sikeres megírása sajnos nem fért volna bele a

diplomatervezésre adott félévbe. A Python-hoz egy nagyon jól kidolgozott SSH2 modul

található az Interneten (paramiko), ennek segítségével implementáltam az SSH

funkcionalitást az alkalmazásaimba. [21]

A Python adatbázis-kezelő modulja segítségével valósítottam meg a PostgreSQL

adatbázisban tárolt jelszavak és felhasználó nevek lekérdezését, valamint a

– 53 –

Page 54: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

jelszómódosítást. A MAC cím lekérdezéséhez az arp programot használtam, melyet

Python alól meghívva az eredménynek tartalmaznia kell a csatlakozni kívánó kliens IP-

MAC cím párost (mivel a belső hálózat számára a szerver biztosítja a címfeloldást), ezzel

kiküszöböltem a MAC címek nyilvántartásának szükségességét. Sikeres bejelentkezés

után a szerver meghívja a MAC cím engedélyező iptables parancsot, ezután periodikusan

figyeli a szerver és kliens is a csatorna állapotát. A kliens véletlen szám generátorral

előállított adatokat küld a szervernek, így fenntartva a kapcsolatot. Amennyiben a csatorna

vagy a kapcsolat megszakad, a szerver azonnal törli az engedélyezett kliens MAC címét a

FORWARD listából. A folyamatban az AP „átlátszó” marad, az egyedüli célja az

adattovábbítás a szerver és a kliens között. (22. ábra).

A szerver oldali GNU/Linux operációs rendszernél biztosítani kellett a folyamatos

működést, ezért be kellett állítani, hogy esetleges szerver leállás (pl. áramszünet) utáni

újraindulás esetén is hibamentesen elinduljon az authetikációs szerver. Ehhez fel kellett

venni a /etc/inittab fájl-ba a következő parancssort:

w0:2345:respawn:/usr/bin/python /root/toobi_diploma/mcl_server1.1.py > /dev/tty8

A parancs jelentése a következő;

w0: a parancs azonosítója,

2345: a 2-től 5-ig terjedő Linux program futási szinteken fusson a program,

respawn: amennyiben megáll, újra elinduljon, /usr/bin/python: Python Interpreter, és a

/root/toobi_diploma/mcl_server1.1.py a szerver program elérési útvonala,

> /dev/tty8 itt van megadva, hogy a tty8-as virtuális terminálra küldje a hibaüzeneteket,

melyeket a cat /dev/vcsa8 parancs kiadásával lehet megtekinteni (hibakeresés).

A szerver és a kliens oldali szoftverek összesen 815 programsorból állnak.

– 54 –

Page 55: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

3.2.2 Az authentikáció folyamata

22. ábra: Saját authentikációs eljárás működése

A saját eljárás authentikációs folyamatai a 22. ábrán láthatók. Az ábrán nem tüntettem fel

a kapcsolat felépítését az AP-al, és a dinamikus IP cím kiosztását, mivel az authentikáció

folyamatában nincs szerepe, megegyezik az előző fejezeteknél tárgyalt Probe Request /

Response – Open System Authentication metódusokkal. Miután a Mobil Állomás

sikeresen kommunikál a szerverrel, az SSH2 protokoll (Diffie-Hellman kulcscsere)

segítségével kiépítenek egy biztonságos SSH csatornát és megegyeznek a szimmetrikus

kódoló algoritmus használatában (jelen esetben AES van beállítva) [19]. Az adatok

átvitele ezután a titkosított csatornán keresztül történik. Az eljárásom során az SSH2

csatorna kiépítését és a felhasználói adatok átvitelét egy lépésben végzi a kliens szoftver.

– 55 –

Page 56: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

A szerver komponens, miután megkapta a felhasználó adatait, egy SQL (Structured Query

Language) lekérdezést hajt végre a PostgreSQL adatbázisból. Amennyiben létezik

regisztrált felhasználó, a szerver elküld egy sikeres authentikáció üzenetet a kliens felé,

amennyiben nem, bontja a kapcsolatot sikertelen üzenet küldése után.

Sikeres kapcsolódás estén a kliens elküldi az új jelszót a csatornán. Amennyiben nem volt

beállítva a jelszóváltoztatás, egy előre meghatározott adatot (a kliens és a szerver oldalon

előre be van állítva) küld a kliens. Az új jelszónak 4 és 8 karakter közötti hosszúságúnak

kell lennie (megjegyezhető), melyet a kliens oldali szoftver ellenőriz és csak ebben az

esetben küldi el. Az előre meghatározott adat egy ennél lényegesebben hosszabb

karaktersorozat, mely alapján a szerver el tudja dönteni, hogy változtat-e jelszót a

felhasználó.

Ezután egy arp -an (felhasználó IP címe) parancsot futtat a szerver, mellyel meghatározza,

hogy a kliens belső hálózatból próbál-e kapcsolódni, 192.168-al kezdődik az IP címe és

megtalálható-e az ARP (Address Resolution Protocol) táblában a hozzá rendelhető MAC

cím. Amennyiben szerver meggyőződött arról, hogy a WLAN hálózatról próbál

kapcsolódni a felhasználó, lefuttatja a kliens MAC címét engedélyező parancsot, illetve

megváltoztatja egy SQL paranccsal a felhasználó jelszavát (amennyiben az eltér az előre

beállított karaktersorozattól) és elkezdődik a kapcsolat figyelése. A kapcsolat figyelése két

részből áll: periodikusan (3-5 másodpercenként) figyeli az SSH2 csatorna állapotát és

fogadja a kliens felől érkező véletlen generált számokat. Amennyiben megszakad a

csatorna (kliens bont vagy megszűnik a WLAN kapcsolat), vagy nem érkezik adat, a

szerver a megfelelő iptables parancs lefuttatásával azonnal törli a felhasználó MAC címét

a FORWARD láncból. Sikeres jelszóváltoztatást kizárólag belső hálózatról végezhet a

felhasználó (sikeres authentikáció és bejelentkezés után). Ellenkező esetben a szerver a

kapcsolat bontása előtt „sikertelen jelszó változtatási kísérlet” üzenetet küld a

felhasználónak. A sikeres jelszóváltoztatásról is kap üzenetet a felhasználó.

A szerverfolyamatok többszálú programozás segítségével lettek kialakítva, így elvileg egy

időben végtelen számú kapcsolatot tud kezelni a rendszer. A szerver folyamatai közé

tartozik még a logfile készítése. A kliens sikeres kapcsolódás után – hasonlóan a

szerverhez – figyeli a csatorna állapotát és periodikusan küldi a véletlen szám generátorral

előállított adatokat a szerver felé.

– 56 –

Page 57: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

3.2.3 A Python nyelv

Az MC2L WLAN hálózatára kidolgozott saját authentikációs eljárásomat, mint az

előzőekben már említettem, Python nyelven írtam meg.

A Python egy interpretált, objektum orientált, magas szintű programozási nyelv. Könnyen

lehet benne programokat fejleszteni, gyorsan tanulható, a hibakeresést az interpreteres

volta teszi egyszerűvé. Hasonlóan a Java nyelvhez, platformfüggetlen (részben, külső

programhívások nélkül). Sajnos hazánkban nem annyira általános a használata, azonban a

nyugati országokban egyre több nagyvállalat kezdi alkalmazni az egyszerűsége,

gyorsasága és a moduláris felépítése, megbízhatósága miatt. (pl. NASA, Industrial Light

& Magic, Google, Yahoo, stb.) Főbb jellemzői:

• a magas szintű adattípusok lehetővé teszik egyetlen utasításban egy összetett

művelet kifejtését;

• az utasítások csoportosítása a sorok elejének behúzásával történik a kezdő és

végzárójelek helyett (átlátható, egyszerű szintaxis);

• nem szükséges a változók és argumentumok deklarálása a program elején, bárhol a

programban megtehető ez (dinamikus típus változtatás);

• minden elem objektumként van kezelve (változó, függvény, osztály, stb.)

• integrált grafikus modul (Tcl/Tk – Windows alá)

A Pythonban megírt programokat a Python Interpreter futtatja, automatikus

memóriakezelés és „szemétgyűjtés” (Garbage Collection) segítségével folyamatosan törli

a nem használt objektumokat a memóriából, megkönnyítve így a programot író munkáját.

A Python programokat le lehet fordítani bináris, futtatható állománnyá is, ekkor nem

szükséges a Python telepítése futtatás előtt. A Python nyelv egy nyílt szoftver (Open

Source), ezért nagyon dinamikusan fejlődik, a sok önkéntes fejlesztő összehangolt

munkája eredményeként kevés hibával rendelkezik. Gyakorlatilag bármilyen feladat

megoldásához rendelkezik beépített modullal, amennyiben mégsem, az Interneten

található hozzá (pl. SSH2 modul).

A fenti előnyök miatt választottam a Pythont a diplomatervem készítésekor a

szoftverkomponensek létrehozásához. [20]

– 57 –

Page 58: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

3.2.4 A szerver oldali szoftver működése

A szerver oldali szoftver fő feladata, hogy SSH2 csatornán keresztül authentikálja és

engedélyezze a kommunikációt a felhasználók számára. Mivel egy időben több kliens is

csatlakozhat a szerverhez, ezért a többszálú működés és a mindenre kiterjedő

kivételkezelés (try, except) alapvető feltétel.

Az authentikációs szerver (továbbiakban: szerver) működése:

Indítás után importálja a működéshez szükséges modulokat, majd beolvassa a szerver

oldali DSS (Digital Signature Standard) kulcsot, melyre a titkos csatorna kiépítéséhez van

szükség. Miután ez megtörtént, létrehoz egy socket objektumot, melyet a 2200-as TCP

port-hoz rendel. Röviden bemutatom a fontosabb függvényeket, osztályokat, amelyeket a

programom ezután használ:

• uj_kapcsolat_figyelese(); az indításkor létrehozott socket objektum segítségével egy

végtelen ciklusban figyeli a beérkező kapcsolatokat és minden egyes kapcsolathoz

létrehoz egy MclThread(threading.Thread) osztálypéldányt, majd elindítja egy új

szálban.

Az MclThread(threading.Thread) osztályon belüli folyamatok:

• ssh_csat(self.thread_client,self.thread_addr[0]); a socket példány és az IP cím

segítségével létrehoz a szálon belül egy ServerTransport(paramiko.Transport)

osztálypéldányt, mely a Paramiko SSH2-Python modul tulajdonságait örökölte. A

szálon belül ez a fő függvény, mely a kapcsolat kiépítéséért felelős. A

ServerTransport osztályon belüli függvények a modul belső függvényei, melyek

segítségével történik a Diffie–Hellman kulcscsere, a titkos csatorna felépítése,

csatornatulajdonságok egyeztetése. Az objektum orientált szemlélet előnye, hogy

ezekkel a folyamatokkal nem kellett foglalkoznom.

• A ServerTransport osztály check_auth_password(self, username, password)

függvénye segítségével történik a titkos csatornán érkező név és jelszó ellenőrzése.

• access_leker(nev,jelszo,uj_jelszo) ezt a függvényt hívja meg a

check_auth_password, visszatérési értéke True vagy False. Az uj_jelszo változó

értéke „0”, mivel lekérdezés történik. A függvénynek a nevével ellentétben több

– 58 –

Page 59: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

feladata van; lekérdezi a PostgreSQL adatbázisból a név – jelszó párost, ha talál

ilyet, True értékkel kilép, ha nem, a kilépési értéke False. Amennyiben az uj_jelszo

változó értéke „1”, akkor beállítja a név-jelszó pároshoz tartozó új jelszót az SQL

táblában, és a sikertől függően Igaz vagy Hamis értékkel tér vissza.

• mac_enable(enable); függvény végzi a felhasználó MAC címének engedélyezését

vagy tiltását az iptables külső parancs meghívásával. Amennyiben az enable változó

értéke „1”, meghívja a socket objektumhoz tartozó IP cím segítségével az arp -an

[IP] parancsot. Amennyiben talál megfelelő IP – MAC cím párost és az IP cím

belső hálózatról származik, meghívja a külső engedélyező iptables programot a

megfelelő paraméterekkel, és visszaér True értékkel, amennyiben a folyamat

sikertelen, False lesz a visszatérési értéke. Az enable változó „0” értéke esetén

meghívja a MAC cím tiltó iptables programot, megfelelő paraméterekkel.

• logtofile(mit); függvény felelős a log-file létrehozásáért és a logolásért. A mit

változóval meghívva, az összes függvény használja. Működésekor létrehoz egy

logfile-t a megadott helyen és hozzáfűzi az időbélyeggel ellátott mit sztring típusú

változót.

Sikeres kapcsolat felépítése után, az ssh_csat függvényen belül történik az SSH2 csatorna

állapotának és a csatornán véletlenszerűen érkező adatok meglétének periodikus figyelése

is. Amennyiben a csatorna megszakad, vagy nem érkezik adat a beállított 10 másodperces

időn belül (timeout), a függvény meghívja a mac_enable(0) parancsot és letiltja ezáltal a

felhasználó kommunikációját, majd bezárja a szálat ( sys.exit ) (23. ábra).

23. ábra: Authentikációs szerver; logfile

– 59 –

Page 60: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

3.3 A kliens oldali szoftverek működéseA szerver oldalon a lehető legrobusztusabb és hibamentes működés megvalósítása volt a

cél, ezért nem készült hozzá sem konzolos, sem grafikus vezérlő felület. Mivel a program

speciálisan csak a vázolt célokra használható és mivel a forrás-file interpretáltan kerül

indításra, a beállításokat (TCP-port, logfile elérési útja) a forrás tartalmazza, melyet

egyszerű szövegszerkesztő editorral lehet igény szerint módosítani (pl. mcedit).

A kliens oldalon a megbízható működés mellett biztosítani kellett az igény szerinti

konzolos (CLI- Console Line Interface), vagy grafikus (GUI – Graphic User Interface)

felhasználói felületet is, a két legelterjedtebb (GNU/Linux és Windows 98/2000/XP)

operációs rendszerre. Mivel nem várható el a leendő felhasználóktól, hogy az

authentikációs kliens szoftver használata előtt telepítsék a használathoz szükséges Python

Interpretert és SSH2 modulokat, ezért futtatható bináris illetve telepíthető fájl-ok készítése

tűnt a legcélszerűbbnek. Alapvetően kétféle kliens oldali szoftvert (CLI és GUI) kellett

készítenem, mivel a Python platformfüggetlen nyelv. [22]

3.3.1 A konzolos kliens működése

A konzolos kliens felépítése nagyon egyszerű, nem tartalmaz függvényeket, mégis

kiválóan ellátja feladatát. (24. ábra)

24. ábra: Windows, konzolos kliens

– 60 –

Page 61: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

A 24. ábrán látható a konzolos kliens működése, mellyel jelenleg a belső hálózaton

kívülről történő bejelentkezést - és a kapcsolat elutasítását – demonstrálom. A program

indításakor először bekéri az authentikációs szerver (host) nevét (Enter-t nyomva az

zárójelben beállított, alapértelmezett címre, és a 2200-as TCP portra próbál csatlakozni a

program (host:port formátumú megadás esetén automatikusan felülbírálja az

alapértelmezettet). Utána elkéri a nevet és jelszót, majd rákérdez a jelszó változtatásra.

Amennyiben háromszor elrontjuk, vagy nem a paramétereknek megfelelő új jelszót adunk

meg, nem történik új jelszó beállítás, a program továbblép és megpróbál csatlakozni.

Sikertelen csatlakozás esetén a 24. ábrán látható üzenetet küldi a szerver, amennyiben volt

új jelszó beállítva, értesít annak sikertelenségéről (külső hálózatból történő próbálkozás

esetén) vagy sikerességéről. Sikeres csatlakozás esetén a szerver üzenetet küld, majd

megindul a véletlenszerű adatok küldése a szerver felé, illetve az SSH2 csatorna figyelése.

A csatorna megszakítása, vagy a kilépés a programból a CTRL-C billentyűzetkombináció

leütésével lehetséges. Ekkor a program megszakítja futását, a szerver észleli a csatorna

megszakadását és letiltja a felhasználó MAC címét. Linux alá a cx_Freeze-3.0 szabad

szoftver segítségével készítettem futtatható bináris csomagot. (25. ábra)

25. ábra: GNU/Linux, konzolos kliens, jelszóváltoztatással

– 61 –

Page 62: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

3.3.2 A grafikus kliens működése

A grafikus klienst, telepíthető formában készítettem Windows operációs rendszer alá.

Mind a grafikus és a fentebb bemutatott konzolos Windows-os kliens program a py2exe-

0.5, szabadon használható, nyílt forrású, telepíthető Python-modul segítségével történt. A

py2exe futtatása után létrejött könyvtár tartalmazza a futtatáshoz szükséges összes fájl-t,

modult. Mivel a célom egy grafikusan telepíthető, Windows 2000/XP alatt a korlátozott

felhasználók (Limited Account) számára is elérhető telepítőprogram elkészítése volt, ezért

az Inno-Setup-4.2.7 szabad szoftvert használtam fel a megfelelő telepítő program

elkészítéséhez. Az így készített fájl tömörítve tartalmazza az összes futtatáshoz szükséges

modult, és telepítés után bemásolja a konfiguráció során megadott helyre (C:\Program

Files\MCL-WLAN-Auth.1.1\) és elhelyezi az összes felhasználó desktop-ján az indító

ikont. A grafikus felületen és az ablakokban használt ikonokat az IconArt nevű, freeware

szoftver segítségével készítettem, az MC2L logó felhasználásával.

A grafikus kliens működéséből fakadóan többszálú, hiszen a GUI felület figyeli és

feldolgozza a felhasználók által generált eseményeket (megszakítás, jelszóváltoztatás,

stb.), míg a háttérben maga az authentikációs program fut, kiépítve és figyelve az SSH2

csatornát. A GUI-t a Python beépített grafikus könyvtára, az ún. Tcl/Tk-8.4 segítségével

készítettem el. A GUI-verzió főbb osztályai, függvényei:

• NewPassDialog(tkSimpleDialog.Dialog); ez az osztálypéldány jelszóváltoztatás estén

jön létre, a tkSimpleDialog Tk tulajdonságait örökli, függvényei:

• body(self, master); A jelszóváltoztató - TkSimpleDialog ablakban lévő grafikus

komponenseket rajzolja ki,

• apply(self); Az eseményeket figyelő függvény, a gombok lenyomásakor hívódik

meg.

• class MclCliGui; A fő osztálypéldány, ebben található az összes többi függvény:

• CreateWidgets(self); A grafikus felületen megtalálható komponensek (gombok,

szövegablak, kapcsolat-jelző, stb.) rajzolásáért és elhelyezéséért felelős.

• __init__(self); A fő osztály konstruktora, egyedüli célja a CreateWidgets meghívása.

• ssh_connection(self); A kapcsolat létrehozásakor meghívódó függvény, melynek

feladata az adatok (host, név, jelszó) beolvasása, majd a kapcsolat kiépítése. A

– 62 –

Page 63: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

„Kapcsolódás” gomb megnyomásakor hívódik meg.

• kapcsfigy(self); Az ssh_connection függvény hívja meg, miután kiépült a kapcsolat,

egy független program-szálat indít számára, feladata a véletlen-számok generálása

és elküldése a szerver felé, illetve az SSH2 csatorna állapotának figyelése.

• widgets_enable(self); A grafikus felületen található vezérlőelemek, szövegmezők

alapállapotba állításáért felelős, meghívása esetén.

• widgets_disable(self); A grafikus felületen található vezérlőelemek, szövegmezők

letiltása a célja, sikeres kapcsolat esetén, hogy ne lehessen ugyanarról a felhasználói

felületről újabb kapcsolatot létesíteni.

• loctime(self); Visszatérési értéke a helyi idő, a logto_text() függvény használja.

• logto_text(self,data); A GUI-n található szövegablakba történő szerver-üzenetek,

illetve log-üzenetek kiírása a feladata.

• adatok_check(self); A felhasználó által megadott adatok helyességét ellenőrzi (pl.

meg kell adni kiszolgálót és felhasználónevet a kapcsolódáshoz).

• SetNewPass(self); Jelszóváltoztatás gomb lenyomásakor példányosítja, meghívja a

jelszóváltoztató – osztályt (NewPassDialog).

• kilepes(self); A kilépés esetén hívódik meg, alapállapotba állítja a beviteli

szövegmezőket, belső adatokat, megszakítja a kapcsolatot a szerverrel.

• kilepes_hard(self); Kilépés és az ablak bezárása esetén hívódik meg, megszakítja a

szerverrel a kapcsolatot, majd bezárja a GUI-ablakot.

• Run(self); A MclCliGui osztály meghívásakor fut le, lényegében elindítja a program

futását.

A program elindításakor a következő parancsok hívódnak meg:

if (__name__=="__main__"): myapp = MclCliGui() myapp.root.title("MCL WLAN SSH2 Auth. v1.1") myapp.root.minsize(265,150) myapp.root.resizable(0,0) try: myapp.root.iconbitmap(r'mcl2.ico') except:

– 63 –

Page 64: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

pass myapp.root.protocol("WM_DELETE_WINDOW", myapp.kilepes_hard) myapp.Run()

A myapp példányosítja az MclCliGui() osztályt, majd a paraméterek megadása

következik az alábbi sorrendben: ablak-fejléc megadása; ablak-méret beállítása; az

átméretezés letiltása; az ablak-ikon beállítása illetve egy fontos külső paraméter, a

myapp.root.protocol("WM_DELETE_WINDOW", myapp.kilepes_hard) függvény

meghívása, melynek a célja az, hogy sikeres kapcsolódás esetén, kilépés előtt megerősítést

kérjen a felhasználótól a kapcsolat bezárására és a kilépésre.

A grafikus kliens működéséhez nem szükségesek a Windows natív könyvtárai, mivel a

Python platformfüggetlen, lefordított moduljait használja működése során. Ebből

következik, hogy minden 32-bites Windows-on változtatás nélkül használható, sikeres

telepítés után. Ebből következik egyetlen hátránya is, hogy viszonylag nagyobb méretű a

szoftver (~ 2Mbyte).

A 26. ábrán látható a grafikus kliens, Windows XP operációs rendszeren futtatva, a 26/1

ábrán a program indításakor látható felület, majd sikeres kapcsolódás után a 26/2 ábrán.

A szövegablakon látható, hogy a 2204-es ideiglenes TCP-portra csatlakoztam, kizárólag

ideiglenesen, demonstrációs célból engedélyezve a külső hálózatból történő belépést.

26/1., 26/2. ábra: Windows XP, grafikus kliens, alapállapot és sikeres kapcsolódás után

– 64 –

Page 65: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

27/1., 27/2. ábra: Windows XP, grafikus kliens, alapállapot és sikeres kapcsolódás után

A 27/1-2. ábrán látható a jelszóváltoztatás esetén létrejövő dialógus-ablak, illetve a sikeres

jelszómódosítás esetén a szervertől kapott üzenet.

28. ábra: Windows, a GUI-kliens telepítő ablaka

A grafikus telepítő használata esetén a Windows rendszerek esetében a megszokott

módon, a lehető legegyszerűbben történik. A telepítőn végiglépkedve létrehozza a

program könyvtárát (rákérdez, telepítés folyamán megváltoztatható) és létrehozza a

Desktop-Ikont, minden felhasználó számára. [22]

– 65 –

Page 66: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

4. Az alkalmazott eljárás vizsgálata

A általam megvalósított authentikációs eljárást a gyakorlatban, a fejlesztés során

folyamatos tesztelésnek vetettem alá. Sikeresen működött éles körülmények között is, amit

többféleképpen, - a kapcsolat szándékos megszakításával kábel kihúzásával, a szerver

újraindításával - vizsgáltam. A vizsgálatok fő célja az volt, hogy minden esetben törlődik-

e a felhasználó MAC címe az ipfilter táblából. Egyedül abban az esetben, ha a szerver

működés közben leáll (lefagy, kikapcsolják, stb.) maradnak benn MAC címek, amely

gyengeséget lehetne orvosolni a jövőben pl. az SQL adatbázis aktív használatával, az

éppen belépett felhasználók címeinek tárolására (így megvalósítható az állapottartás). Az

authentikáció biztonsága megfelelő, amelyről az SSH2 protokoll erős titkosítása

gondoskodik, a jelszavak és nevek a központi szerveren tárolódnak, amely biztonsága

fogja ezentúl meghatározni az authentikáció biztonságosságát. A felhasználók

adminisztrációja egyszerű, webes felületről történik, a már meglévő adatbázist és az arra

épülő PHP szkripteket felhasználva (nem változott). Nagy előny, hogy nem kell ezentúl a

MAC címekkel és az engedélyezés időtartamával bajlódni. Nincs letiltva és nem vizsgálja

az eljárás azt az esetet, ha egy felhasználó többször jelentkezik be ugyanarról a gépről, de

ez nem jelent problémát, mert az elkülönített szálkezelés miatt - és az iptables

működéséből fakadóan - minden eseteben törli a szerver a szálhoz tartozó címet a

táblából. A kapcsolat ideiglenes megszakadását is teszteltem, (pl. handover, térerő-

ingadozások) és tíz másodperces timeout-ot állítottam be szerver és kliens oldalon. A

tapasztalatok szerint legrosszabb esetben is 4-5 másodperc alatt megtörték a cellaváltás,

ennek az időnek a duplája megfelelőnek tűnik, és mivel a szerver az SSH csatornát is

figyeli, más, támadó szándékú felhasználó gyakorlatilag csak a timeout idejéig tudna

kommunikálni a hálózaton.

Az általam kifejlesztett eljárást például jól lehetne használni nyilvános elérési pontok

(HotSpot-ok), vagy kisebb, szerverrel rendelkező WLAN hálózatok központi védelmére,

mivel egy szabvány- és platformfüggetlen authentikációs módszerről van szó. Nyilvános,

de fizetős elérési pontok erős védelmére is kiválóan alkalmas lehet, mivel egyszerűen

bővíthetők a szoftver-komponensek és gyorsan beépíthető egy, már meglévő rendszerbe.

– 66 –

Page 67: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

Összefoglalás

A vezeték nélküli hálózatok korábbi biztonságtechnikai problémái megoldódni látszanak

az IEEE 802.11i szabvány bevezetésével. Mivel a technológia viszonylag új, a bevezetése

folyamatosan fog megtörténni. A WLAN hálózatokat a biztonsági problémái miatt sajnos

sok magas biztonsági követelményeknek megfelelő rendszerben ez idáig nem szívesen

alkalmazták. Az authentikációs és adattitkosítási problémák megoldásával, illetve a

sebesség további növelésével remélhetőleg egyre többen bíznak majd a vezeték nélküli

technológiákban és az elterjedése olyan helyeken is nőni fog, ahol ez idáig

gyermekbetegségei miatt nem alkalmazták.

Az eddigi munkám során részletesen megismertem a WLAN technológiákat, fizikai és

authentikációs/biztonságtechnikai oldalról egyaránt. Laborgyakorlataink során társaimmal

megterveztünk és kiépítettünk egy mintahálózatot, különböző biztonsági és authentikációs

módszerek telepítésével biztonságossá tettük a használatát. Így a hálózat folyamatosan a

hallgatók és a tanszék rendelkezésére áll.

A diplomatervem keretében bemutattam a legújabb vezeték nélküli biztonsági

megoldásokat és egy olyan szerver-kliens alkalmazáscsomagot mellyel kényelmesebben és

biztonságosabban lehet használni a tanszéki mintahálózatot, mint azelőtt.

Az informatika területén száz százalékos biztonság azonban nem létezik. A felhasználók

egyre jobban követelik a biztonságot, azonban tudatosítani kell bennük, hogy a hálózat

megbízhatóságához ők is hozzájárulnak az adatok bizalmas és felelősségteljes kezelésével.

Végül bízom benne, hogy az általam bemutatott legújabb szabványok és az újszerű

módszer, mellyel megoldottam a mintahálózat authentikációs problémáit, hozzájárul sok

fejlesztő és hálózattervező eredményes munkájához.

– 67 –

Page 68: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

Felhasznált irodalom[1] Makk Attila: Hálózat, vezeték nélkül

COMPUTERWORLD – Számítástechnika 2003. év 22. szám.

[2] ANSI/IEEE Std 802.11, 1999 Edition (R2003): Part 11: Wireless LAN Medium

Access Control (MAC) and Physical Layer (PHY) Specifications, Reaffirmed 12 June

2003, IEEE-SA Standards Board, Secretary, IEEE Standards Board 445 Hoes Lane P.O.

Box 1331 Piscataway, NJ 08855-1331 USA

[3] IEEE Std 802.11b-1999 (R2003): (Supplement to ANSI/IEEE Std 802.11, 1999

Edition), Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer

(PHY) specifications: Higher-Speed Physical Layer Extension in the 2.4 GHz Band, ISBN

0-7381-1812-5 SS94788

[4] IEEE Std 802.11a-1999(R2003) (Supplement to IEEE Std 802.11-1999) [Adopted by

ISO/IEC and redesignated as ISO/IEC 8802-11:1999/Amd 1:2000(E)], Part 11: Wireless

LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications High-

speed Physical Layer in the 5 GHz Band, IEEE Standards Board 445 Hoes Lane P.O. Box

1331 Piscataway, NJ 08855-1331 USA

[5] IEEE Std 802.11b-1999/Cor 1-2001(Corrigendum to IEEE Std 802.11b-1999): Part

11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY)

specifications Amendment 2: Higher-speed Physical Layer (PHY) extension in the 2.4

GHz band — Corrigendum 1, ISBN 0-7381-3002-8 SS94952

[6] IEEE Std 802.11g™-2003 (Amendment to IEEE Std 802.11™, 1999 Edition (Reaff

2003) as amended by IEEE Stds 802.11a™-1999, 802.11b™-1999, 802.11b™-1999/Cor

1-2001, and 802.11d™-2001): 802.11gTM , Part 11: Wireless LAN Medium Access

Control (MAC) and Physical Layer (PHY) specifications Amendment 4: Further Higher

Data Rate Extension in the 2.4 GHz Band, ISBN 0-7381-3701-4 SS95134

[7] Rosario Macri, Product Manager, Psion Teklogix: 802.11 WLAN Security, September

24, 2004

[8] Dr. Peter J. Welcher: Wireless LAN (WLAN) Security

http://www.netcraftsmen.net/welcher/seminars/wlan-security-02.pdf

[9] IEEE Std 802.1X-2001 Recognized as an American National Standard (ANSI): IEEE

– 68 –

Page 69: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

Standard for Local and metropolitan area networks — Port-Based Network Access

Control, ISBN 0-7381-2927-5 SS94940

[10] Jyh-Cheng, Ming-Chia Jiang, and Yi-Wen Liu: Wireless LAN Security and IEEE

802.11i, IEEE Wireless Communications, 2004 Hsieh Po-Tsai

[11] Nancy Cam-Winget Cisco Systems, Tim Moore Microsoft, Dorothy Stanley

AgereSystems, Jesse Walker Intel Corporation: IEEE 802.11i Overview

http://csrc.nist.gov/wireless/S10_802.11i Overview-jw1.pdf

[12] C. Brian Grimm Wi-Fi Alliance: Overview Wi-Fi Protected Access, rev. 10/31/2002

[13] C. Brian Grimm Wi-Fi Alliance: Wi-Fi Protected Access for the Home, rev.

10/31/2002

[14] Wi-Fi Alliance: Enterprise Solutions for Wireless LAN Security, February 6, 2003

[15] Jesse Walker Network Security Architect, Platform Networking Group Intel

Corporation: 802.11 Security Series Part II: The Temporal Key Integrity Protocol (TKIP)

[16] IETF RFC page

http://www.ietf.org/rfc.html

[17] Az SSH működése

http://www.remote.hu/articles.php?id=18&page=1

[18] Endrődi Csilla: Diffie-Hellman kulcsegyeztető protokoll

http://www.biztostu.hu/mod/resource/view.php?id=241

[19] Csorba Kristóf: Advanced Encryption Standard (AES)

http://www.biztostu.hu/mod/resource/view.php?id=211

[20] RASHI GUPTA: Mindentudó Python, ISBN: 963 09 4449 9

[21] paramiko, SSH2 protocol for python

http://www.lag.net/paramiko/

[22] Pyton nyelv dokumentáció; Windows, Linux telepítő csomagok

http://python.org/

– 69 –

Page 70: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

Rövidítésjegyzék

AES Advanced Encryption Standard

AP Access Point

ARP Address Reolution Protocol

AS Authentication Server

BPSK Binary Phase Shift Keying

CCK Complementary Code Keying

CCMP Counter CBC-MAC Protocol

CLI Command Line Interface

CRC Cyclic Redundancy Check

CSMA/CA Carrier Sense Multiple Access/Collosion Avoidance

CSMA/CD Carrier Sense Multiple Access/Collosion Detection

CTS Clear to Send

DBPSK Differential Binary Phase Shift Keying

DHCP Dynamic Host Control Protocol

DQPSK Differential Quadrature Phase Shift Keying

DSSS Direct Sequence Spread Spectrum

EAP Extensible Authentication Protocol

EAPoL EAP over LAN

GUI Graphical User Interface

FHSS Frequency Hopping Spread Spectrum

HTTP HyperText Transfer Protocol

HTTPS Secure HTTP

IEEE Institute of Electrical and Electronics Engineers

IP Internet Protocol

IPSec IP Security Protocol

ISM Industrial, Scientific, and Medicine

IV Initialisation Vector

LAN Local Area Network

– 70 –

Page 71: WLAN authentikációs eljárások vizsgálata

WLAN authentikációs eljárások vizsgálata – diplomaterv

MAC Medium Access Control

Mbps Megabytes per second

MC2L Mobil Communications and Computing Laboratory

MK Master Key

MS Mobile Station

NAT Native Address Translation

OFDM Ortogonal Frequency Division Multiplex

PHP Php the Hypertext Preprocessor

PMK Pairwise Master Key

PRF Pseudo Random Function

PTK Pairwise Temporary Key

PSK Pre Shared Key

QAM Quadrate Amplitude Modulation

RADIUS Remote Authentication Dial In User Service

RSN Robust Security Network

RTS Request to Send

SSH Secure Shell

SSID Service Set Indentifier

TCP Transmission Control Protocol

TKIP Temporal Key Integrity Protocol

TLS Transport Layer Security

UDP User Datagram Protocol

UTP Unshielded Twisted Pair

WEB Wireless Ethernet Bridge

WECA Wireless Ethernet Compatibility Alliance

WEP Wired Equivalent Privacy

Wi-Fi Wireless Fidelity

WPA Wireless Privacy Access

WLAN Wireless Local Area Network

– 71 –