Page 1
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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 –