Gépészmérnök és Informatikai Kar Mérnök informatikus Szak
Biztonságos vezeték-nélküli hálózat tervezése és tesztelése
Bodnár Szabolcs, I4LMET Szlovákia, 07671,Čičarovce 114. 3515, Miskolc Egyetemváros 1
2
3
EREDETISÉGI NYILATKOZAT
Alulírott Bodnár Szabolcs; Neptun-kód:I4LMET a Miskolci Egyetem Gépészmérnöki és Informatikai Karának végzős Mérnök informatikus szakos hallgatója ezennel büntetőjogi és fegyelmi felelősségem tudatában nyilatkozom és aláírásommal igazolom, hogy Biztonságos vezeték-nélküli hálózat tervezése és tesztelése
című szakdolgozatom/diplomatervem saját, önálló munkám; az abban hivatkozott szakirodalom felhasználása a forráskezelés szabályai szerint történt. Tudomásul veszem, hogy szakdolgozat esetén plágiumnak számít: - szószerinti idézet közlése idézőjel és hivatkozás megjelölése nélkül; - tartalmi idézet hivatkozás megjelölése nélkül; - más publikált gondolatainak saját gondolatként való feltüntetése. Alulírott kijelentem, hogy a plágium fogalmát megismertem, és tudomásul veszem, hogy plágium esetén szakdolgozatom visszautasításra kerül. Miskolc, 2014 év Május hó 05. nap
…….……………………………….… Hallgató
4
Tartalomjegyzék 1. Bevezetés 7. oldal 2. Vezeték nélküli hálózati szabványok 7. oldal 2.1 IEEE Szabványok 7. oldal 2.2 802.11 8. oldal 2.3 802.11b 9. oldal 2.4 802.11a 9. oldal 2.5 802.11g 10. oldal 2.6 802.11n 11. oldal 2.7 802.11ac 11. oldal 2.8 802.11i 13. oldal 3. Vezeték nélküli hálózatbiztonság 14. oldal 3.1 Biztonsági problémák 14. oldal 3.2 Hálózati veszélyek 14. oldal 3.2.1 Hálózaton belüli veszélyek 15. oldal 3.2.2 Külső veszélyek 15. oldal 3.3 WLAN hálózatok elleni támadások 16. oldal 3.3.1 WLAN hacker eszközök 16. oldal 3.3.2 Támadási formák 16. oldal 4. WLAN hálózatok főbb hitelesítési és titkosítási módszerei 19. oldal 4.1 WLAN hitelesítési módszerek 19. oldal 4.1.1 Nyílt kulcsú hitelesítés 19. oldal 4.1.2 Osztott kulcsú hitelesítés 20. oldal 4.1.3 MAC- cím hitelesítés 20. oldal 4.1.4 Az EAP protokoll 20. oldal 4.2 WLAN titkosítási módszerek 21. oldal 4.2.1 WEP 21. oldal 4.2.2 A WEP működése 21. oldal 4.2.3 WEP hibái 23. oldal 4.2.4 WPA 24. oldal 4.2.5 WPA2 24. oldal 5. LDAP protokoll és az OpenLDAP szoftver működése 25. oldal 5.1 LDAP 25. oldal 5.1.1 LDAP működése 25. oldal 5.1.2 LDAP műveletek 25. oldal 5.1.3 LDAP konfigurációs lehetőségek 26. oldal 5.2 OpenLDAP szoftver működése 27. oldal 5.2.1 A szoftver részei 28. oldal 5.2.2 Háttérrendszerek 28. oldal 5.2.3 Overlay- ek 29. oldal 6. RADIUS protokoll és a FreeRADIUS szoftver működése….31. oldal 6.1 AAA protokoll 31. oldal 6.1.1 AAA megvalósítása RADIUS protokollal 31. oldal 6.2 RADIUS használata vezeték nélküli hálózatokban 33. oldal 6.3 FreeRADIUS 33. oldal 5
7. 802.1x szerinti hitelesítés 7.1 Áttekintés 7.2 A 802.1x alapú hitelesítés működése 7.3 A 802.1x funkciói 8. Kis mintahálózatok létrehozása és tesztelése 8.1 A felhasznált eszközök 8.2 Nyílt vezeték nélküli hálózat és veszélyei 8.3 Mintahálózat WEP használatával 9. Mintahálózat az ismeretett technológiák alkalmazásával 9.1 Rövid leírás 9.2 OpenLDAP szoftver telepítése és konfigurációja 9.2.1 Alapfogalmak 9.2.2 Telepítés és konfiguráció 9.3 FreeRADIUS szoftver telepítése és konfigurációja 9.3.1 Alapfogalmak 9.3.2 Telepítés és konfiguráció 9.4 A rendszer üzembe helyezése 10. Összegzés 11.Summary 12. Irodalomjegyzék
6
37. oldal 37. oldal 37. oldal 38. oldal 38. oldal 38. oldal 39. oldal 41. oldal 44. oldal 44. oldal 44. oldal 44. oldal 45. oldal 51. oldal 51. oldal 51. oldal 55. oldal 56. oldal 57. oldal 58. oldal
1. Bevezetés Régebben a számítógép csak számítógép, a telefon pedig csak telefon volt. Napjainkban ez a megkülönböztetés már sokkal nehezebb. A világon egyre elterjedtebbek a vezeték vagy drót nélküli (wireless) technológiák. Ezek a technológia számos eszközzel teszik lehetővé adatok elérését a világ bármely pontjáról. A vezeték nélküli hálózatok csökkentik vagy megszüntetik az optikai és más kábelezés lefektetésének magas költségeit, és tartalék rendszerként használhatók a vezetékes hálózatok mellett. A vezeték nélküli technológiák a kis hatótávolságú vezeték nélküli összeköttetésre optimalizált infravörös fénytől a rádiófrekvenciás technológiákig terjednek. Vezeték nélküli hálózati kommunikációban általában hordozható számítógépek, asztali számítógépek, kézi számítógépek, táblaszámítógépek, mobiltelefonok és személyhívók vesznek részt. A vezeték nélküli technológiáknak számos gyakorlati haszna van. A mobilfelhasználók például telefonjuk segítségével elérhetik e-mailjeiket, vagy a hordozható számítógéppel rendelkező utazók repülőtereken, vasúti pályaudvarokon és más nyilvános helyeken felállított bázisállomásokon keresztül csatlakozni tudnak az internethez. Sajnos, mint minden új műszaki megoldásnak nem csak előnyei, de esetleges biztonsági hátrányai is vannak. Ezek a hátrányok, különösen a vezeték nélküli rendszerek esetében bizony jelentősek. A problémák közül még a szerényebb, ha valaki az internetkapcsolatunkra csatlakozva szabadon töltöget, és ingyen böngészik, a lista csúnyábbik végén olyan tolvajok és bűnözök találhatók, akik személyes adatokat lopnak. A mobiltelefonok kézi számítógéppé alakulásuk közben áldozatul esnek a PC-ket gyötrő kártevőknek. Szakdolgozatom célja a vezeték nélküli számítógép- hálózatok különböző megoldásainak és ezen megoldások biztonsággal kapcsolatos kérdéseinek bemutatása, illetve egy biztonságos vezeték nélküli hálózat tervezéséhez szükséges ismeretek megismerése. Mivel a vezeték nélküli technológiával kommunikáló eszközök száma rohamosan növekszik, ezzel együtt a levegőben terjedő információ mennyiség is, így egyre inkább a támadók célpontjává vállnak. Egy nem megfelelően védett WLAN esetében sokkal könnyebb az információszerzés, mint vezetékes hálózat esetén. Elég ha a támadó az antennák hatósugarában tartózkodik. Ezért az eszközök megfelelő biztonsági beállítása roppant fontos, pl. egy cég informatikai infrastruktúrájának működése és biztonsága elengedhetetlen feltétel. Persze feltörhetetlen, kijátszhatatlan védelem soha sem létezik, de mindent meg kell tennünk, hogy ez a lehető legnehezebb legyen. Ezt a legújabb technikák és eszközök hálózatunkba való integrálásával érhetjük el.
2. Vezeték nélküli hálózati szabványok 2.1
IEEE Szabványok
Először a három legelterjedtebb IEEE- szabványt mutatom be, a 802.11b, 802.11g, 802.11a. A b, g és a szabványok az adatátvitel alapvető kérdéseivel foglalkoznék. A b, g és a 7
jelű szabványok több dologban is eltérnek: a kapacitásban (mennyi adatot képesek átvinni adott idő alatt), az áthidalt távolságban (milyen messzire képesek továbbítani a jelet), a használt rádióhullámok tartományaiban, illetve hogy miként kezelik az interferenciát. (A rádióhullámú jeleket zavarja a tereptárgyak – falak, födémek, természeti képződmények, például hegyek – által okozott interferencia, de ugyanígy ütközhetnek a más készülékek, például mikrohullámú sütők gerjesztette elektromágneses mezővel is.) A legszélesebb körben elfogadott szabvány a 802.11b, ami azt jelenti, hogy a megvásárolt vezeték nélküli berendezések és nyilvános hozzáférési pontok (amelyek például kávézókban találhatók) többsége használja vagy támogatja ezt a szabványt. A 802.11b maximális kapacitása másodpercenként 11 megabit, és körülbelül 50 méter távolságot képes áthidalni. Az újabb szabványok még nagyobb sebességet nyújtanak – másodpercenként 54 megabitet, és mostanra már talán át is vették a 11 megabites eszközöktől a vezető helyet. Szinte naponta jelennek meg új termékek, amelyek közül néhány többféle szabványt is támogat, és a hálózati követelményektől függően váltani is tud köztük. A szabvány kiválasztásakor különféle kompromisszumokat kell kötni. A 802.11a hatótávolsága például feleakkora, mint a többié, de az 5 GHz körüli sávban működik, ami kevésbé zsúfolt, és kevésbé hajlamos a mágneses interferenciára. A 802.11b-nek és g-nek nagyobb a sebessége, és rengeteg fogyasztói Wi-Fi eszköz és vezeték nélküli hálózat támogatja. Ezekben azonban érezhető interferenciát okozhatnak a vezeték nélküli telefonok és mikrohullámú sütők. [1]
Működési Sebesség Sebesség Hatótávolság Hatótávolság IEEE Megjelenés frekvencia (jellemző) (maximális) beltéren kültéren szabvány ideje (GHz) (Mbit/s) (Mbit/s) (méter) (méter) Eredeti 1997 2,4 0,9 2 ~20 ~100 802.11 802.11a
1999
5
23
54
~35
~120
802.11b
1999
2,4
4,3
11
~38
~140
802.11g
2003
2,4
19
54
~38
~140
802.11n
2009
2,4 / 5
74
600
~70
~250
802.11ac
2013 vége (terv)
5
500
1300
140
350
1. táblázat IEEE szabványok [1] Tegyük fel elhatároztuk, hogy kiépítjük otthonunk vagy cégünk vezeték nélküli hálózatát engedve a kor követelményeinek és persze kényelmünknek. Első körben minden bizonnyal meglepetésként ér bennünket a kapható eszközök hatalmas választéka, itt aztán nem egyszerű a választás! Hirtelen különböző számokkal, betűkkel és ezek különböző kombinációival találjuk szemben magunkat, ami rendszerint jól elbizonytalanítja a vásárlót, legalábbis ha nincs megfelelően felkészülve. A vezeték nélküli hálózatok az évek során több szabvánnyal is gazdagodtak. A mai hivatalos szabványok (az adatátviteli képességet, sávszélességet tekintve) az IEEE 802.11b, 802.11a, és 802.11g. Az IEEE (Institute of Electrical and Electronics Engineers) a nemzetközi szabványügyi szövetség, a 802.11 a Wi-Fi szabványrendszert a B, A és G betűk pedig a konkrét szabványt jelzik. Lássuk ezeket a szabványokat kicsit bővebben.[2] 8
2.2
802.11
A 802.11- es szabvány 1997.ben jelent meg, 1999-bwn hagyták jóvá de mára ez a szabvány már elavultnak minősül. Tartalma: - két hálózati bitráta, 1 és 2 Mbit/s sebességgel - továbbítási hibajavító kód - 3 alternatív fizikai réteg béli technológia - szórt infravörös 1 Mbit/s - frekvenciaugrásos szórt spektrum 1 és 2 Mbit/s - közvetlen sorozatú szórt spektrum 1 és 2 Mbit/s Utóbbi 2 mikrohullámú adatátvitelt használt 2,4 GHz- en.[1]
2.3
802.11b
Ez a szabvány a 2,4 GHz- es nyílt frekvenciatartományt használja, ahogy mikrohullámú sütőnk, vezeték nélkül telefonunk és egyéb hétköznapi vezeték nélküli eszközeink is. Ennek megfelelően a különböző eszközök rádióhullámai interferálhatnak, magyarul zavarhatják egymást. A továbblépést az alap 802.11-nél is alkalmazott direkt szekvenciális CDMA kódjainak kicserélésével érték el. Sávszélességét tekintve 11Mbit/s elméleti maximum adatátviteli sebességre képes, ami a gyakorlatban 4-6Mbit- et jelent. Ez jóval gyorsabb, mint például DSL kapcsolatunk sebessége, azaz bőven elegendő több kliens egyidejű internet kiszolgálására, komolyabb adatforgalom esetén (zenehallgatás, filmnézés, fájlmásolás stb.) azonban már kevés lehet. Előnye viszont, hogy manapság már nagyon elterjedt és nagyon olcsó, ezért találkozunk vele a legtöbb elektronikai eszközben (telefonokban, PDA- kban stb). Hatótávolsága 30-50 méter épületben, 1 km épületen kívül az Access Point- ra történő tiszta rálátás esetén. [1][3]
2.4
802.11a
A 802.11a szabvány szinte egyszerre jelent meg a 802.11b szabvánnyal, amelytől azonban több aspektusban is eltér. Legfontosabb, hogy az 5GH - es tartományban üzemel, tehát szokásos eszközeink, amelyek rádiófrekvenciás hullámokat bocsátanak ki, nem zavarják az adatforgalmunkat. A megemelt frekvenciából adódóan sávszélessége is növekedett, maximum 54Mbit/másodperc (a gyakorlatban 21-22Mbit), viszont a nagyobb frekvenciájú rádióhullámok tulajdonságainak köszönhetően (könnyebben elakadnak a különböző tárgyakban, falakon) hatótávolsága kisebb, mindössze 10-25 méter épületen belül. Ezt ellensúlyozza, hogy az 5GHz-es tartományban több, egymást nem átfedő "csatornát" vehetünk akár egyszerre is igénybe, azaz növelhetjük konkrét sávszélességünket, lehetővé téve, hogy egyszerre több felhasználó nyugodtan nézhessen filmet (streaming) vagy másolhasson nagy fájlokat anélkül, hogy jelentős sebességcsökkenést érzékelne. Ez az igen 9
korszerű ortogonális frekvenciatartománybeli multiplexálás (Orthogonal Frequency Division Multiplexing, OFDM)[1][4]
2.5
802.11g
2003 júniusában hagyták jóvá a 802.11g szabványt. A 802.11b- hez hasonlóan ez is 2.4GHzen működik, de ugyanazt az OFDM- en alapuló átviteli sémát használja, mint a 802.11a. Tulajdonságok: -54 Mbit/s maximális sebesség, ebből 22 Mbit/s átlagos átviteli sebesség - Továbbítási hibajavító kód - Kompatibilis a korábbi szabványokkal, így a 802.11b eszközökkel is együtt tud működni. A 802.11g termékek már jóval a szabványelfogadása előtt kezdtek megjelenni 2003 januárjában, mivel nagy volt az igény a gyorsabb sebességre, és az alacsony előállítási költségekre. 2003 nyarára a 802.11a/b termékek nagy része három sávosra cserélődött, támogatva az a/b/g szabványokat, egyetlen mobil adapter vagy access point formájában. Ahhoz, hogy g és g hálózatok együtt tudjanak működni, hosszas technikai folyamatok kellenek, így egy g- s hálózatban tartózkodó b- s eszköz lelassíthatja az egész hálózat működését. A b- hez hasonlóan a g- s eszközök is interferencia gondokkal küzdenek a többi 2,4 GHz- en működő eszközökkel szemben.[1][5]
1. ábra 802.11g WLAN Router
10
2.6
802.11n
A 802.11n szabvány természetesen kompatibilis az a,b és g szabványokkal, de ha két 802.11n-es berendezést kapcsolunk össze, akkor akár 12-szer gyorsabb eredményt kaphatunk a 802.11g szabványhoz képest. Alkalmas médiaalkalmazásokhoz, használhatjuk játékra, online videózásra, VOIP célokra. A szabvány OFDM-et használ. Az OFDM rendszerekben egy 10, 20, vagy 40MHz-es nagysebességű vivőt 52 szubvivőre osztanak, 300KHz-es távolságokban elhelyezve ezeket. Ezek egymással parallel módon, tehát egy időben kerülnek átvitelre. Ebből az 52 szubvivőből 48 szolgál adatok szállítására, a fennmaradó négyet pedig a vevők fázis szinkronizációjára használják. Ezt a megoldást COFDM-nek (COFDM - Coded Orthogonal Frequency Division Multiplexing - kódolt ortogonális frekvenciaosztásos multiplexálás) hívják. A 802.11n technológia az alap 802.11 szabvány kiterjesztése a MIMO-val (Multiple In, Multiple Out). A MIMO egy többantennás rendszer, amely ellentétben a normál vezeték nélküli hálózatokhoz képest nem zavarodik össze a visszavert jelektől, hanem ellenkezőképpen a reflektált jeleket felhasználva kiterjeszti a hatósugarat, és csökkenti az elérhetetlen pontokat. Így a jel akár négyszer távolabb eljut, mint a 802.11g szabvány jelei. A MIMO Spatial Division Multiplexing, SDM egy absztrakt matematikai modell a több antennából álló rendszerek számára. Ezt szokás intelligens smart antennáknak is nevezni. Az adónak és a vevőnek is több antennája van. Több antennán megy végbe az adás és a vétel egyidőben. Ez a megoldás lehetővé teszi a valós 315 Mbit/s-os sebességet, két antenna között. Nagyobb rendszerekben pedig a 630 Mbit/s-ot, (csak a fizikai régetben!). A biztonsági kérdések ebben a szabványban sem kerültek megnyugtatóan rendezésre, így továbbra is a WEP, PSK és PSK2 valamint a Radius a legmegbízhatóbb megoldás a biztonság garantálására.[6]
2. ábra 802.11n WLAN Router 3. 2.7
802.11ac
Az IEEE 802.11ac jelenleg még nem végleges (draft) változatban lévő Wi-Fi szabvány, aminek véglegesítése 2013végén várható. Természetesen lényegesen gyorsabb az előző generációs, n-es Wi-Fi megoldásoknál, amit elsősorban szélesebb, 20/40 MHz helyett 80 vagy akár 160 MHz-es csatornákkal és a korábbi, legfeljebb háromnál több, akár nyolc adatfolyam (spatial stream) összefogásával érnek el. 11
Adatfolyamok Wi-Fi n Spatial stream 20 MHz
Wi-Fi n 40 MHz
Wi-Fi ac 80 MHz
Wi-Fi ac 160 MHz
1
75 Mbps
150 Mbp
433 Mbps
867 Mbps
2
150 Mbps
300 Mbp
876 Mbps
1,7 Gbps
3
225 Mbps
450 Mbp
1,3 Gbps
2,6 GBps
2. táblázat Spatial stream[7] Mivel a csatornák frekvenciatartománya nagyon széles, a klasszikus 2,4 GHz-en nem üzemel a Wi-Fi ac szabvány, csak 5 GHz-en, ahol négy (USA-ban öt) darab, egymással nem átlapolódó 80 MHz-es csatorna hozható létre. A magasabb frekvencia miatt elvileg csökken a Wi-Fi hatótávolsága, amit a Beam Forming eljárással küszöbölnek ki. Körkörös sugárzás helyett az adó (router) és vevő (hálózati adapter) megállapítja, hogy melyik az optimális átviteli irány a kapcsolatuk fenntartásához. Ez a technológia létezett már az n-es Wi-Fi-nél is, de többféle, inkompatibilis megvalósítása volt, ezért nem alkalmazták a gyártók. A Wi-Fi ac szabványnál egységesítették ennek megvalósítását.
3. ábra Beamforming
Az új szabvány nagyon ígéretes, eleme a Muli-User MIMO. A több adatfolyamra képes (több antennás) routerek képesek lesznek egy-egy adatfolyamukat (antennájukat) konkrét hálózati eszközhöz (például mobiltelefonhoz) rendelni, ami stabilabb és gyorsabb adatátvitelt eredményez. Az ac-s Wi-Fi szabványon érezni, hogy a megváltozott használati szokásokhoz, mobil készülékekhez igazodik, mert elsősorban ott fontos az egy adatfolyamon (antennán) átvitt sebesség növelése és a kapcsolat stabilizálása.[7][8]
12
4.ábra 802.11ac (draft) WLAN Router
2.8
802.11i
2004 nyarán fogadták el. 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 igen szerteágazó, a vezeték nélküli hálózatokban eddig nem alkalmazott hitelesítési metódusokat és kriptográfiai újdonságok sorát vonultatja fel: • • •
IEEE 802.1x (vezetékes hálózatokban alkalmazott hitelesítési eljárásokat foglalja keretbe) EAP, RADIUS, WPA 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 hitelesítésen é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 802.11i szabvány bevezetéséig mindössze egyetlen titkos kulcs létezett a hitelesítésre és az adattitkosításra. 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.[9]
13
3. Vezeték nélküli hálózatbiztonság 3.1
Biztonsági problémák
A vezeték nélküli helyi hálózatok alapvető tulajdonságaiból adódóan más biztonsági jellemzőkkel bírnak, mint vezetékes társaik. A legfontosabb különbségek e tekintetben abból adódnak, hogy a jel térben hová jut el vezetékes és vezeték nélküli hálózatokban. Mind réz, mind optikai vezetékekben a jelterjedés gyakorlatilag a kábelben vagy legalábbis a kábel vonalán történik. Ezzel szemben a vezeték nélküli helyi hálózatokban a rádiófrekvenciás jel minden irányban terjedhet. A hálózati forgalom pontosabban az átvitt jelek lehallgatásának lehetőségét tekintve ez azt jelenti, hogy vezetékes hálózatok esetén mindenképen a kábel közelébe kell jutni ahhoz, hogy lehallgathassuk a hálózatot. Réz kábelek esetén a lehallgatás gyakorlatilag triviális a vezetékekhez történő galvanikus csatlakozással, de rendszerint lehetséges a vezetékekhez való közvetlen hozzáférés nélkül is, az azok körüli elektromágneses tér analizálása alapján. Optikai hálózatok lehallgatásához pedig feltétlenül szükséges a közvetlen hozzáférés az optikai szálakhoz. Szemben ezekkel a vezeték nélküli hálózatok lehallgatásához elegendő, ha a támadó a kommunikáló lokális hálózati eszközöktől távolabb az adott szituációtól függően akár 50-100 méterre helyezi el a lehallgatáshoz használt eszközt. Szintén lényeges különbség a lehallgatás bonyolultságát illetően, hogy míg a vezetékeken átvitt jelek lehallgatásához valamilyen többé kevésbé speciális eszközre van szükség, addig a vezeték nélküli közegen átvitt jelek egy egyszerű hálózati kártyával vehetők sok esetben. A pusztán passzív lehallgatás mellett a hálózatra aktív állomásként való csatlakozásról hasonlók mondhatók el. Vezetékes hálózatok esetén a csatlakozáshoz szükséges a hálózati vezetékhez való hozzáférés, legyen az akár optikai, akár réz vezeték. Vezeték nélküli hálózat esetén elég annyi, hogy az állomás a hálózat hatósugarába kerüljön. A (passzív) lehallgatás és a hálózathoz való illetéktelen (aktív) hozzáférés problémája tehát egyaránt létezik vezetékes és vezeték nélküli helyi hálózatoknál is, de a vezeték nélküli hálózatok esetén ezek a problémák rendszerint sokkal gyakoribbak. Természetesen mindkét hálózattípus esetén lehetőség van ezen problémák kiküszöbölésére vagy a kockázatoknak megfelelő mértékű enyhítésére, adminisztratív és műszaki eljárásokkal, intézkedésekkel. A következőkben öt pontban összefoglaljuk a WLAN hálózatok biztonságos kialakításához és üzemeltetéséhez szükséges védelmi intézkedések körét.[10] 3.2
Hálózati veszélyek
Napjainkra a vezeték nélküli hálózatok egyre nagyobb teret nyernek, gomba módra szaporodnak az access pointok. Ezen hálózatoknak hatalmas előnye a mobilitás, de ez az előny sokszor nincs összhangban a velük együtt járó veszélyekkel, biztonsági kockázatokkal, melyeket rádiós, szabadtérben terjedő mivoltuk képez. Ha egy nagyvárosban sétálva bekapcsoljuk WLAN kártyával ellátott mobil eszközünket, meglepő módon rövid időn belül több olyan helyet is lelünk, ahol eszközünk képes kapcsolatot teremteni egy közeli hálózattal. WLAN technológia alkalmazásakor körültekintően kell eljárnunk, úgy kell használni, hogy az esetleges problémákat kompromisszummentesen legyünk képesek elhárítani. A vezeték nélküli hálózat esetében különösen fontos, hogy mások ne tudják lehallgatni az adatforgalmat, illetve ne tudjanak jogosulatlanul belépni a hálózatba.[11]
14
3.2.1 Hálózaton belüli veszélyek: 1. Betolakodó acces point Az alkalmazottak könnyen elrejthetik saját acces pointjukat , mondjuk a laptopjuk MAC- címének duplikálásával. 2. Ad- hoc üzemmód alkalmazása 3. VPN- konfiguráció Nagyvállalatok úgy gondolják ha a WLAN hálózatukban VPN technológiát alkalmaznak, akkor a hálózatuk behatolhatatlan lesz, azonban ez nem garantálja a hálózat biztonságát. Ha nincs megfelelően konfigurálva, nem sokat ér egy erőteljesebb támadás ellen. Konfigurációs hibák: - az alapbeállítások tartalmaznak egy default jelszavat, ill. nincs is jelszó beállítva - alapbeállításként be van kapcsolva az SSID- broadcast - gyenge színvonalú titkosítás(WEP) van beállítva vagy nincs titkosítás beállítva. - az is előfordulhat, hogy az alkalmazottak konfigurálják át a beállításokat, ill valamilyen rendszerleállást követően a beállítások alapértékre állhatnak. 4. Előre nem látható kapcsolódások Ez valamely kliensünk és a szomszédos WLAN hálózat között jöhet létre, mivel ilyenkor a kliens a szomszéd AP jelét fogja és válaszol is annak, becsatlakozik a hálózatba. Ennek 2 oka lehet: A szomszéd AP jele túl erős, ill. az OS beállításaiban van egy funkció ami ha nincs kikapcsolva akkor a számítógép automatikusan kapcsolódik a fellelt acces pointokhoz. Ha a mi AP- nk hibás beállításai miatt adódik egy hasonló fordított helyzet, még nagyobb a baj, hiszen a beférkőző kliens elterjesztheti hálózati jelszavunkat, vagy féltett dokumentumainkat mások számára.[12] 3.2.2 Külső veszélyek: 1. Kémek és lehallgatók A lehallgatók akik figyelik az adáshoz szükséges rádióhullámokat, könnyen el tudják kapni a kódolatlan üzeneteket. A WEP- kódolt adások pedig könnyen dekódolhatók különböző az interneten fellelhető alkalmazások által. 2. Azonosító lopás A Service Set Identifier (SSID), ami jelszóul szolgál és a MAC- cím, ami személyes azonosító számként szolgál, a kliensek azonosítására és hitelesítésére szolgálnak. Ha ezek a behatolók kezébe jutnak hitelesített felhasználóként tudnak bejelentkezni és csatlakozni a rendszerhez, majd esetleges károkat okozni a hálózatban. 3. Tervszerű támadás A legkomolyabb támadások, leállíthatják a hálózat működését és megadásra kényszeríthetik még a VPN biztonsági pajzsát is.[12]
15
3.3
WLAN hálózatok elleni támadási módszerek
3.3.1 WLAN hacker eszközök 1. Ingyenes alkalmazások (freeware) Ezen alkalmazások beszerzéséhez nincs szükség semmi másra, csak internet kapcsolatra, sajnos manapság már ez nem ütközik különösebb nehézségekbe. 2. Antennák Ha a támadó nagy távolságú antennát használ akár több száz méterrel is megnövelhető a hálózathoz való csatlakozás lehetőségének távolsága. Ilyen antennákat nem nehéz beszerezni a piacon, de egy némi hozzáértéssel akár házilag is elkészíthető. A betolakodók így könnyen meg tudják oldani, hogy ne kelljen hálózatunkhoz túlságosan közel tartózkodnia. 3. Kódtörés A biztonsági kódok töréséhez szükséges programok hatékony működésének az alapja a WEP- kódolás gyengeségeiből adódik. 4. Wardriving Egy tevékenység, melynek keretében Wi-Fi hálózatok után kutatnak. Ez kezd egyre népszerűbbé válni, a wardriving eredetileg a hálózatok nevének/helyzetének felderítésének öröméről szól. Azt a tevékenységet pedig, amikor valaki azért keres védetlen hálózatokat, hogy azokat használja, azt piggybacking-nek hívják. A tevékenység neve az 1983-as Háborús Játékok című filmre utal. A wardriving-hez szükséges szoftverek az interneten szabadon hozzáférhetőek, minden fontosabb PC operációs rendszerre, okos-telefonokra, illetve néhány játékkonzolra. A Piggybacking nem törvénytelen, de etikátlan, mert mások berendezését és a mások által fizetett sávszélességet használja, és személyiségi jogi kérdéseket is felvet, hiszen ezáltal a Piggybacker mások személyes adataihoz fér hozzá. A tevékenység közben általában autóban mozognak. Ha gyalog mennek, akkor warwalkingnak nevezik, ha biciklivel, akkor warbikingnak. Ehhez szükséges kellékek: GPS, „Autó”, Laptop, WLAN antenna. Támadásokhoz általában felhasznált hardverek: Laptopok, okos telefonok, AP-ok, routerek, antennák, vezeték nélküli hálózati kártyák, GPS vevők.[12] 3.3.2 Támadási formák 1. A rosszindulatú támadások általános formája A támadók a széles körben alkalmazott eszközök segítségével gyanútlan állomásokat tudnak kényszeríteni. A támadó eszköz először acces point ként funkcionál. Az áldozati kliens gép felfedezve az AP-t egy kérést (request) küld neki, majd az választ küld neki vissza, sőt ha ez szükséges IP- címet is kap az APtól. Ettől kezdve a kapcsolat létrejött. Ezen támadások ellen az egyetlen jó megoldás a virtuális magánhálózatok (VPN) alkalmazása. A nagyvállalatok
16
folyamatosan monitorozzák az étert, s csak a hitelesített AP- okat engedik hálózatukhoz kapcsolódni.[12] 2. MAC- címekkel való visszaélés A vállalatok többsége hitelesített MAC- címek listájával (ACL) próbálja megóvni saját WLAN hálózatát. A probléma abban rejlik, hogy a felhasználók könnyen képesek megváltoztatni saját MAC- címüket! A módosítás a következő alkalmazásokkal valósítható meg: MacChanger, SMAC. wincontrol… Különböző szoftverek segítségével pl. Kismet vagy az Ethereal a hackerek képesek megszerezni a hitelesített Mac- címeket, és így hitelesített felhasználóként tudnak csatlakozni a hálózathoz. Ezt a problémát is monitorozással küszöbölik ki, kiszűrik a szimultán használt MAC- címeket. A WLAN védelmi rendszerek képesek a MAC- címek azonosítására a hálózati kártya gyártójának „ujjlenyomatát” ellenőrizve, mivel a MAC- címek gyártónként előre kiosztottak.[12]
5. ábra Windowsos szoftver MAC-cím cseréhez
3. Hamis AP (Rogue AP) Számos infrastruktúra rendelkezik informatikai szabályzattal, ami kimondja, hogy a vezetékes hálózatra nem szabad kapcsolni semmilyen külső hálózati eszközt, a dolgozók ezt sajnos sokszor nem tartják be. Ilyenkor egy rést nyitnak a hálózaton, ami egy könnyen támadható felület, ha nincs megfelelően konfigurálva. Ennek oka lehet szándékos egy támadó csoportot segítve vagy önös érdekből. Ez támadástípus sok más támadás kiindulópontjának tekinthető. A rogue AP támadáshoz szervesen kapcsolódik a az Ad Hoc Associations támadás. Minek a lényege, hogy a támadó csatlakozik egy gyenge védelemmel ellátott eszközhöz(laptop, okos telefon), amin aktív Ad Hoc kapcsolat van. Támadhatja magát az eszközt, vagy az eszközön keresztül az infrastruktúrát is.[13] 4. AP támadása Ez a támadás közvetlen az AP ellen irányul. Ha a hálózat nem megfelelően védett vagy nyitott ezt könnyen végre lehet hajtani. Sikeres azonosítás esetén IP-címet kapunk és a kapcsolat felépül. Ekkor meg lehet kezdeni a támadást melyben 17
számos weboldal áll segítségére a támadónak, melyek tartalmazzák az AP eszközök alapbeállításait és jelszavait. Ezek birtokában könnyen hozzáférhet a beállításokhoz. Egy ilyen támadás esetén a lehetőségek kimeríthetetlenek.[13]
6.ábra A képen a NETGEAR routerek default jelszavaira kerestem rá 5. Illetéktelen hozzáférés (Unauthorized association) Ez a támadás akkor jön létre, ha az infrastruktúra dolgozója tudtán kívül egy közeli WLAN- ra csatlakozik, de számítógépe eközben a vezetékes hálózaton is rajta marad. Ekkor a támadó a hálózati infrastruktúrába addig láthat be ameddig a felhasználónak jogosultsága van.[13] 6. Lehallgatás (Eavesdropping) Ez egy minimális szaktudást igénylő és könnyen végrehajtható támadási forma. A támadó ebben az estben lehallgatja és rögzíti a kommunikációt, majd ezeket az adatokat később kiértékeli. Elsősorban titkosítatlan kommunikáció esetén használják, ebben az estben egyszerű szoftverek segítségével megjeleníthetőek a felhasználónevek és jelszavaik. Ilyen programok: bsd- airtools, Ettercap, Kismet, Wireshark. Ezek a lehallgató szoftverek léteznek már okos telefonon is, így a támadók szinte észrevétlenül képesek ezt a támadási formát elvégezni bárhol. Pl. Android operációs rendszer esetén a Shark alkalmazás.[13] 7.
Gonosz iker (Evil Twin) A támadó célja egy már működő AP adatainak megszerzése, hogy saját AP- ját ugyanúgy konfigurálva rávegyen egy felhasználót, hogy az ő AP- jára csatlakozzon. Ennek a támadásnak elsődleges célja a felhasználók adatainak, jelszavainak a megszerzése.[13]
8. Közbeékelődéses támadás (Man int he Middle) Ez a gonosz iker továbbfejlesztése. A behatoló beférkőzik az áldozat és az eredeti AP közé és a teljes adatfolyamot képes rögzíteni. Ezt gyakran használják nyilvános helyeken pl. kávézókban. Elég gyakori,hogy a támadó készít egy login felületet, ahol személyes adatokat szerezhet meg az áldozatoktól pl. bankkártya információit.[12] 18
4. WLAN hálózatok főbb hitelesítési és titkosítási módszerei 4.1
WLAN hitelesítési módszerek
Az SSID (Service Set Identifier) vezeték nélküli hálózatok közösen használt jellemzője, ami egy fejletlen szintű biztonságot hivatott megvalósítani. Egy acces point által kiszolgált alhálózatot az SSID nevezi meg, vagyis az itt lévő gépek mind azonos SSID- vel rendelkeznek. Egy elérési pont az SSID által tudja megkülönböztetni és külön hálózatba sorolni őket, elválasztva a többi vezeték nélküli alhálózattól. Az SSID megadása manuálisan történik, vagy az AP juttatja el a kliens géphez a probe response üzenetben, ill. megerősíti vagy módosítja a szabályos időközönként sugárzott beacon jelek által. Az elérési pontok az általuk figyelt tartományba beacon vagy broadcast jeleket, valamint másodpercenként kb 10szer egy a hálózat nevét tartalmazó azonosítót (SSID) bocsájtanak ki a kliensek számára. A tartományban lévő vezeték nélküli hálózati kártyával felszerelt eszközök fogadni tudják az SSID- t, és kapcsolódni tudnak a hálózathoz, ennek alap feltétele ként IP- cím kéréssel fordulnak az AP- hoz. Ha ezt megkapja kapcsolódhat. Az SSID egy paraméter amit az AP és a kliens is megvizsgálnak és csak egyezés esetén jön létre köztük kapcsolat. A WEP szerint: amíg egy állomás nem hitelesíti magát, nem kapcsolódhat a többi állomáshoz. A hitelesítési módszert minden állomáson külön kell konfigurálni, és ennek egyeznie kell az AP-n beállítottal. A 802.11 kliensazonosítás a következő lépéseket tartalmazza: 1. A kliens fürkésző üzenetet úgynevezett probe request frame-t küld szét az összes csatornán. 2. Ha a hatókörében van, az AP válaszol. 3. A kliens kiválasztja melyik AP nyújtja számára a legjobb hozzáférést és egy hitelesítési kérelmet küld (authentication request). 4. Az AP erre válasz üzenetet küld (authentication reply). 5. Sikeres hitelesítést követően a kliens kapcsolódási kérelemmel fordul az AP felé (association request frame). 6. Erre az AP válaszol (association response), miután a kliens ezt megkapta csatlakozhat az AP- hoz, és forgalmat bonyolíthat azon keresztül.[12]
7. ábra: hitelesítés 4.1.1 Nyílt kulcsú hitelesítés (open authentacion) Ez az alapértelmezett hitelesítés, e során a hitelesítő üzenetváltások titkosítás nélkül zajlanak, így a kliens kulcs nélkül tud csatlakozni az AP- hoz. Ez gyakorlatilag egy üres hitelesítési algoritmus, ugyanis az AP minden kérést jóvá hagy. Ennek az oka a 802.11 szabványban keresendő. A hitelesítési követelmények úgy lettek tervezve, hogy minden 19
eszköz számára gyors kapcsolódást biztosítson a szabvány. Vagyis ha egy hálózat nincs titkosítva, bármely eszköz képes hozzá csatlakozni ha ismeri az SSID- t. Ezért találták ki a tervezők a WEP- kódolást.[12] 4.1.2 Osztott kulcsú hitelesítés (shared key authentication) Ennek a hitelesítési módszernek az alapvető feltétele, hogy a kliens gépen be legyen állítva a statikus WEP- kulcs használata. Ennek a folyamata a következő: 1. A kliens egy osztott kulcsú hitelesítési kérelmet küld az AP- nak (authentication request). 2. Az AP válasza egy igazoltató szöveget tartalmaz (challenge text) 3. A kliens az ő helyi beállítású WEP- kulcsát használja a challenge text kódolásához, és válaszol egy újabb authentication request üzenettel. 4. Ha ezt az üzenetet az AP vissza tudja fejteni és visszakapta belőle az eredeti challenge textet, akkor egy hitelesítési válasz üzenetet küld, amiben engedélyezi a kliens hozzáférését.[12]
8. ábra osztott kulcsú hitelesítés 4.1.3 MAC- cím hitelesítés Ezt számos gyártó támogatja, bár nem szerepel a 802.11 specifikációban. A lényege, hogy ellenőrzi a kliens MAC- címét összehasonlítva az engedélyezett címek listájával azt, ami vagy helyileg elérhető, vagy egy távoli autentikációs szerveren található. Ez gyakori megoldás, mivel lecsökkenti a hitelesítetlen eszközök hálózathoz való hozzáférésének esélyeit.[12]
4.1.4 Az EAP protokoll Az EAP protokoll csupán egy hitelesítésre optimalizált, szállító protokoll, nem egy teljes hitelesítési módszer. Valójában egy hitelesítési keret, amely többféle autentikációs eljárást támogat. Alapvetően az EAP közvetlenül az adatkapcsolati rétegekben működik (pl. PPP, IEEE 802), IP protokoll használata nélkül. Az EAP protokollnak 2 nagy előnye van: elkülöníti az üzenetcserét a hitelesítés menetétől egy független réteg használatával, a független réteg használata ortogonális kiterjeszthetőséget eredményez, ami azt jelenti, hogy a hitelesítési folyamat funkcióját ki lehet terjeszteni egy újabb mechanizmus alkalmazásával anélkül, hogy az érintett EAP rétegben változást idéznénk elő.[14] 20
4.2 WLAN titkosítási módszerek 4.2.1 WEP A WEP (Wired Equivalent Privacy) a WLAN- eszközök közötti adatátvitel kódolására és dekódolására használt, opcionálisan használható eszköze az IEEE 802.11 szabványnak, melynek célja – mint ahogy a neve is mutatja – a vezetékes hálózati szakasszal egyenértékű adatvédelem és biztonság nyújtása a hálózat vezeték-nélküli szakaszán. A WLAN- ok által használt vezeték-nélküli közeg miatt a biztonság garantálása sokkal fontosabb szerephez jut, mint a vezetékes hálózatok esetében. Ennek oka, hogy egy esetleges támadó egy nem megfelelően védett WLAN hálózathoz egyszerűen férhet hozzá - például egy WLAN- al ellátott épületen kívül is - és innen teljesen anonim módon indíthat támadást. A támadott fél ekkor úgy érzékeli, hogy a támadó az áldozat hálózatához tartozó személy (vagyis számítógép). A biztonság szempontjából a protokollok két feladatot látnak el: - Hitelesítés (Authentication): A hitelesítő rendszer feladata eldönteni, hogy egy csatlakozni kívánó felhasználó valóban használhatja-e a hálózat erőforrásait. Vagyis például kapcsolódhat-e az adott AP- hoz, és használhatja-e a vezeték-nélküli hálózat erőforrásait, például az Internetet. Emellett létezik üzenethitelesítés is, amely már egy hitelesített viszonyban a titkosított üzeneteket védi a módosítással szemben (integritásvédelem). - Titkosítás (Encryption): A titkosítás biztosítja a lehallgatás-mentességet, vagyis megvédi az adatokat az illetéktelenek hozzáférésétől. 2000-ben hiányosságokat találtak WEP protokollban, és 2002-ben sikeresen fel is törték azt. Mindez azt jelenti, hogy a WEP mégsem képes a vezetékes szakasszal azonos biztonságot nyújtani, sőt: egyáltalán nem biztonságos. A WEP- el védett hálózatok manapság már csak 10 percig nyújtanak védelmet a lehallgatással, és az adatmódosításokkal szemben.[15] 4.2.2 A WEP működése Vezeték nélküli hálózatok esetében két alapvető biztonsági probléma merül fel. Egyrészt a kommunikáció könnyen lehallgatható. Másrészt és ez talán fontosabb, a hálózathoz való csatlakozás nem igényel fizikai hozzáférést a hálózati AP- hoz ezért bárki megpróbálhatja a hálózat szolgáltatásait illegálisan igénybe venni. A WEP az első problémát az üzenetek rejtjelezésével igyekszik megoldani, a második probléma megoldása érdekében pedig megköveteli a csatlakozni kívánó kliens hitelesítését az AP felé. A hitelesítés menetét WEP protokoll esetén feljebb már leírtam, így ezzel most nem foglalkozom. Miután a hitelesítés megtörtént, a kliens és az AP üzeneteikben rejtjelezve kommunikálnak. A rejtjelezéshez ugyanazt a titkos kulcsot használják, mint a hitelesítéshez. A WEP rejtjelező algoritmusa az RC4 kulcsfolyam kódoló. A kulcsfolyam kódolók úgy működnek, hogy egy kisméretű, néhány bájtos titkos kulcsból egy hosszú véletlen bájtsorozatot állítanak elő, és ezen sorozat bájtjait XOR- olják az üzenet bájtjaihoz. Ez történik a WEP esetében is. Az M üzenet küldője (a kliens vagy az AP) a titkos kulccsal inicializálja az RC4 kódolót, majd az RC4 által előállított K véletlen bájtsorozatot XOR- olja az üzenethez. Az M ⊕ K rejtjelezett üzenet vevője ugyanazt teszi, mint a küldő: A titkos kulccsal inicializálja az RC4 algoritmust, amely így ugyanazt a K véletlen bájtsorozatot állítja elő, amit a rejtjelezéshez használt a küldő. Ezt a rejtjelezett üzenethez XOR- olva az XOR művelet tulajdonságai miatt a vevő az eredeti üzenetet kapja vissza: (M ⊕ K) ⊕ K = M. 21
Könnyen látható, hogy ha a rejtjelezés a fentiek szerint működne, akkor minden üzenethez ugyanazt a K véletlen bájtsorozatot XOR -olnánk, hiszen a kódolót minden üzenet elküldése előtt ugyanazzal a titkos kulccsal inicializáljuk. Ez több szempontból is hiba lenne. Tegyük fel például, hogy egy támadó lehallgat két rejtjelezett üzenetet, M1 ⊕ K-t és M2 ⊕ K-t. A két rejtjelezett üzenetet XOR- olva, a támadó a két nyílt üzenet XOR összegét kapja: (M1 ⊕ K) ⊕ (M2 ⊕ K) = M1 ⊕ M2. Ez olyan, mintha az egyik üzenetet a másik üzenettel, mint kulcsfolyammal rejtjeleztük volna. Ám ebben az esetben M1 és M2 nem véletlen bájtsorozatok. Valójában tehát M1⊕M2 egy nagyon gyenge rejtjelezés, és a támadó az üzenetek statisztikai tulajdonságait felhasználva könnyen meg tudja fejteni mindkét üzenetet. Az is elképzelhető, hogy a támadó esetleg (részlegesen) ismeri az egyik üzenet tartalmát, s annak segítségével a másik üzenet (részleges) tartalmához azonnal hozzájut. Ezen problémák elkerülése érdekében, a WEP nem egyszerűen a titkos kulcsot használja a rejtjelezéshez, hanem azt kiegészíti egy IV- nek (Initialization Vector) nevezett értékkel, mely üzenetenként változik. A rejtjelezés folyamata tehát a következő: az IV- t és a titkos kulcsot összefűzzük, a kapott értékkel inicializáljuk az RC4 kódolót, mely előállítja a véletlen bájtsorozatot, amit az üzenethez XOR- olunk. A dekódolás folyamata ezzel analóg. Ebből következik, hogy a vevőnek szüksége van a kódolásnál használt IV- re. Ez a rejtjelezett üzenethez fűzve, nyíltan kerül átvitelre. Ez elvileg nem jelent problémát, mert az üzenet dekódolásához csupán az IV ismerete nem elegendő, ahhoz a titkos kulcsot is ismerni kell. A rejtjelezés előtt, a küldő egy integritás-védő ellenőrző összeggel (Integrity Check Value, vagy röviden ICV) egészíti ki a nyílt üzenetet, melynek célja a szándékos módosítások detektálásának lehetővé tétele a vevő számára. A WEP esetében az ICV nem más mint a nyílt üzenetre számolt CRC érték. Mivel azonban a CRC önmagában nem véd a szándékos módosítások ellen (hiszen egy támadó a módosított üzenethez új CRC értéket tud számolni), ezért a WEP a CRC értéket is rejtjelezi. A mögöttes gondolat az, hogy így a támadó nem tudja manipulálni az üzeneteket, hiszen a titkos kulcs hiányában nem tudja a módosított üzenethez tartozó rejtjelezett CRC értéket előállítani. Mint azt alább látni fogjuk, ez a gondolatmenet nem teljesen hibamentes.[15]
9. ábra WEP működése
22
4.2.3 WEP hibái A WEP tulajdonképpen a rossz protokolltervezés mintapéldája, lényegében egyetlen kitűzött biztonsági célt sem valósít meg tökéletesen. A hitelesítés egyirányú, a kliens hitelesíti magát, az AP viszont nem hitelesíti magát a kliens felé. A hitelesítés és a rejtjelezés ugyanazzal a titkos kulccsal történik, így a támadó mind a hitelesítési, mind pedig a rejtjelezési eljárás potenciális gyengeségeit kihasználhatja egy, a titkos kulcs megfejtésére irányuló támadásban. A protokoll csak a hálózathoz csatlakozás pillanatában hitelesíti a klienst, miután a hitelesítés megtörtént gyakorlatilag bárki küldhet üzenetet az AP- nak a kliens nevében annak MACcímét használva. A WEP rejtjelezési algoritmusa az RC4 folyamkódoló. Nemcsak az üzeneteket kódolják az RC4 segítségével, hanem a kliens ezt használja a hitelesítés során is az AP által küldött kihívás rejtjelezésére. Így a támadó a hitelesítés során küldött üzenetek lehallgatásával könnyen hozzájut a C kihíváshoz és az arra adott R = C ⊕ K válaszhoz, melyből C ⊕ R = K alapján azonnal megkapja az RC4 algoritmus által generált K véletlen bájtsorozatot. A WEP -ben egyáltalán nincs semmilyen mechanizmus mely az üzenetek visszajátszásának detektálását lehetővé tenné. A tervezők nemes egyszerűséggel erről a biztonsági követelményről megfeledkeztek. A támadó tehát bármely eszköz korábban rögzített üzenetét vissza tudja játszani egy későbbi időpontban, s ezt a WEP nem detektálja. Az IV csak 24 bites, ami azt jelenti, hogy kb. 17 millió lehetséges IV van. Egy Wi-Fi eszköz kb. 500 teljes hosszúságú keretet tud forgalmazni egy másodperc alatt, így a teljes IV teret kb. 7 óra leforgása alatt kimeríti. Azaz 7 óránként ismétlődnek az IV értékek, s ezzel az RC4 által előállított véletlen bájtsorozatok is. A gyakorlatban minden eszköz ugyanazt a titkos kulcsot használja, potenciálisan különböző IV értékekkel, így ha egyszerre n eszköz használja a hálózatot, akkor az IV ütközés várható ideje a 7 óra n-ed részére csökken. Egy másik súlyosbító tényező, hogy sok WEP implementáció az IV- t nem véletlen értékről indítja, hanem nulláról. Ezért beindítás után a különböző eszközök ugyanazt a nullától induló és egyesével növekvő IV sorozatot használják, legtöbbször ugyanazzal a közös titkos kulccsal. Azaz, a támadónak várakoznia sem kell, azonnal IV ütközésekhez jut. A legnagyobb hiba az RC4 kódoló nem megfelelő használatában rejlik. Léteznek ugyanis úgynevezett gyenge RC4 kulcsok, mikből az RC4 algoritmus nem teljesen véletlen bájtsorozatot állít elő, aminek az első pár bájtjából következtetni lehet a kulcsra. A szakemberek szerint az RC4 által előállított bájtsorozat első 256 bájtját mindig el kell dobni és csak az utána generált bájtokat használjuk a rejtjelezéshez. A WEB nem így működik, sőt a változó IV érték miatt előbb- utóbb biztosan gyenge kulcsot fog adni. Ezt a hibát kihasználva a kriptográfusok olyan támadó algoritmust hozott létre a WEP ellen, mely segítségével a teljes 104 bites kulcs néhány millió üzenet lehallgatása után nagy valószínűséggel megfejthető. A WEP minden korábban leírt hibája eltörpül ezen eredmény mellett, ugyanis ezzel a támadással magához a titkos kulcshoz jut hozzá a támadó. Ráadásul a támadás könnyen automatizálható, és néhány „segítőkész”embernek köszönhetően, az Internetről letöltött támadó programok használatával amatőrök által is rutinszerűen végrehajtható.[15]
23
4.2.4 WPA A WEP továbbfejlesztéséből hozták létre a WPA eljárást, amely a WEP biztonsági réseinek megszüntetésére volt hivatott. Alapvetően a Temporal Key Integrity Protocol (TKIP) szabványra épül, amely ugyanúgy az RC4 algoritmust használja, mint a WEP, de a kulcsok szerkesztésében már más eljárásokat alkalmaz. Minden kulcs periodikusan változik és felhasználóként is különbözik. A WPA kiterjesztette az adattitkosítását a TKIP segítségével, amely csomagonkénti kulcsgenerálást tesz lehetővé, valamint kibővítette a WEP IV 24 bitjét 48 bitesre, így a variációk drasztikusan megnőttek. Az üzenetek integritás-ellenőrzése is bevezetésre került (Message Integrity Check Michael, MIC), amely az adatmanipuláció védelmére szolgál. A WPA már lehetőséget biztosít a „vállalati szintű” felhasználói hitelesítésre a 802.1x és az Extensible Authentication Protocol (EAP) felhasználásával. Központi autentikációs szervert alkalmazva a felhasználónak hitelesítenie kell magát mielőtt még a hálózathoz hozzáférhetne, ennek fokozott módja a kölcsönös autentikáció (mutual authentication). A WPA szerkezete négy egységből áll (802.1x, EAP, TKIP, MIC). A WEP- pel szemben, itt nem statikus TKIP kulcsok vannak, hanem egy pairwise master key (PMK) kiindulási kulcsból indul el és ebből generálja dinamikusan a következő titkosítási kulcsokat, úgy hogy ismétlődés ne lehessen. A TKIP kulcsok „kereteként” a 802.1x vagy EAP autentikációs mechanizmust használják. Az autentikációs szerver megkapja a felhasználó azonosítóját, kiszámol egy 802.1x által használt egyedi kulcsot és kiadja a kliensnek és az AP számára, majd végrehajtja a kulcsmenedzselést. A következő lépésben elkezdi az adatcsomagok titkosítását a kommunikációs csatornában. Még egy védelmet építettek a WPA-ba ami az adatcsomagok módosítása, visszaküldése és kiegészítése ellen véd. A Message Integrity Check (MIC) minden forgalom során alkalmaz a WPA és ha az egyezőség vizsgálat során hibát talál a csomagban ,akkor feltételezve a hamisítás tényét azonnal eldobja a csomagot.[16] 4.2.5 WPA2 A WPA2 szakít a WEP és a WPA által használt RC4 titkosítási algoritmussal és az AES (Advance Encryption Standard) algoritmust használja. Megtartotta mindazon részét viszont a WPA- nak, amelyek az autentikációs eljárásai voltak. A TKIP- t és a Michael algoritmust kibővítette a CCMP (Counter Mode with Chiper Block Chaining Message Autehntication Code Protocol) számláló mechanizmussal, amely érzékeli TKIP törésének kísérletét és ebben az esetben ideiglenesen, blokkolja a kommunikációt a támadóval szemben.[16]
3. táblázat Titkosítási módszerek összevetése[16] 24
5. LDAP protokoll és az OpenLDAP szoftver működése 5.1 LDAP Az LDAP betűszó az angol "Lightweight Directory Access Protocol" (könnyû címtár elérési protokoll) kifejezésből származik. Ahogy ezt a név is sugalmazza az LDAP egy kliensszerver protokoll címtár szolgáltatás eléréséhez. Az LDAP TCP/IP vagy más kapcsolat orientált átviteli szolgáltatást használhat. A címtár hasonló, mint egy adatbázis, de arra törekszik, hogy magába foglaljon egy részletesebb, tulajdonság alapú információkezelést. Általában a címtár információit gyakrabban olvassák, mint írják. Ennek következtében a címtárak általában nem alkalmaznak bonyolult tranzakció kezelést vagy roll-back rendszereket, amiket általában az adatbázis kezelők használnak a nagyméretű, összetett frissítésekhez. A címtár aktualizálása tipikusan egyszerű, mindent vagy semmit jellegű változás. A címtárakat összetett kérdések gyors megválaszolására hangolták. Képes arra, hogy széles körben sokszorosítsa az információkat azért, hogy növelje az elérhetőséget és a rendelkezésre állást, miközben a válaszidőt csökkenti. A többszörözött címtár információk egyes példányai között átmeneti rendezetlenség megengedett, de a többszörözések (replica) végül szinkronba kerülnek.[17] 5.1.1 Az LDAP működése Az LDAP címtárszolgáltatás kliens- szerver modellen alapul. Egy vagy több LDAP szerveren tárolt adatból épül fel az LDAP fa vagy LDAP háttér adatbázis. Az LDAP kliens egy LDAP szerverhez csatlakozik, és teszi fel a kérdéseit. A szerver ezekre válaszol, vagy egy mutatód ad vissza, hogy hol talál több információt a kliens (egy másik LDAP szerver). A kliens bármelyik LDAP szerverhez csatlakozik, ugyanazt a címtárat látja, ugyanazon név az egyik címtár szerveren ugyanazt az adatot jeleníti meg, mint egy másikon. Ez egy fontos tulajdonsága az olyan globális címtárszolgáltatásoknak, mint az LDAP. Az LDAP protokoll directory szolgáltatások elérését szabályozza. Mi az a directory szolgáltatás? Az angol directory service egy olyan speciális adatbázist takar, ami keresésre van optimalizálva, ennek megfelelően olyan esetekben célszerű használni, ahol kevés a módosítás, és nagyszámú, gyors lekérdezésre van szükség. Az információ egy faszerű szerkezetben tárolódik, és minden csúcsában bejegyzések (entry) szerepelnek. Egy bejegyzésnek van típusa, amely meghatározza, hogy milyen attribútumai lehetnek. Minden egyes ilyen bejegyzésre egyértelműen hivatkozhatunk a bejegyzés DN-jével (Distinguished Name), mely lényegében a fában a csúcshoz vezető utat írja le.[17][18] 5.1.2 LDAP műveletek Keresés Egy LDAP keresés megadásához a következő információkat kell megadni: a keresés kezdetét (base), a keresés hatáskörét (scope), illetve egy keresési szűrőt (filter). 25
4. base: egy DN ahol a keresést kezdeni kell. A fában ennél feljebb lévő bejegyzések biztosan nem szerepelnek a keresés eredményében. 5. scope: a lehetőségek: base, one, sub. base: csak a base DN által megadott objektum szerepel hatókörben. Amennyiben megfelel a szűrőnek, akkor a bejegyzés szerepel a keresés eredményében. o one: a base DN által meghatározott bejegyzés, és az egy szinttel lejjebb lévő bejegyzések tartoznak a keresés hatáskörébe. o sub: a base DN által meghatározott teljes részfa szerepel a keresésben. o
6. filter: a kereséshez megadható szűrő. Az attributúm definíciója, amire szűrünk, meghatározza, hogy a keresésnél milyen illesztés történik. Például a cn attribútum definíciója alapján mind egyenlőségvizsgálat esetén mind pedig részsztring- vizsgálat esetén az illesztés nem betű érzékenyen történik. Módosítás, új bejegyzés létrehozása, bejegyzés törlése Ezen módosítások az ldapmodify programmal végezhetőek el. A sagítségével attribútumok törölhetők, cserélhetők,és új értékeket adhatunk hozzájuk Egy bejegyzés törlését az ldapdelete programmal végezhetjük el. Itt a törölni kívánt bejegyzésre a DN- vel hivatkozunk. Egy bejegyzés RDN- je megváltoztatható Egy DN több RDN-ből áll. Egy bejegyzés RDN- jének megváltoztatására az ldapmodrdn program ad lehetőséget. Ennek segítségével a fában máshova nem helyezhetünk át bejegyzést, ehhez a bejegyzés törlése, és egy új bejegyzés létrehozása szükséges! [18]
5.1.3 LDAP Konfigurációs lehetőségek Hozzáférés ellenőrzés A konfigurációs file segítségével különböző hozzáférési jogokat adhatunk meg. Lehetőség van különböző felhasználóhoz különböző jogosultság megadására. Ha a felhasználó, akinek jogokat adunk a self, akkor a bejegyzéshez rendelt felhasználó jogai adhatóak meg. Ez azért hasznos, mert pl. egy LDAP szerveren, ahol felhasználók adatait, többek között a jelszavát is tároljuk, szükséges, hogy olyan attribútumokat, mint pl. uidNumber, gidNumber anonymous tudjon olvasni, de a userPassword attribútumot már csak az adott felhasználó módosíthassa. A hozzáférés egészen az attribútumok szintjéig finoman szabályozható. Különböző hozzáférési szintek vannak, melyek segítségével szabályozható, hogy valami valaki számára épp csak összehasonlításra legyen elérhető, esetleg hogy keresési szűrőt is alkalmazhasson egy attribútumra, vagy netán már olvashassa is.
26
A keresési eredmények korlátozása Egy óvatlan keresés nagyon sok bejegyzést visszaadását eredményezheti. Hogy ezeket ne kelljen mind feltétlenül elküldeni, a sizelimit direktíva megadja, hogy legfeljebb hány bejegyzés adható át egy keresés eredményeképpen. Ezért a klienseknek fel kell készülnie arra, hogy további kérések szükségesek a teljes eredmény megszerzéséhez.
Séma megadása A séma megadása a konfigurációs file attributeType és objectClass direktíváival lehetséges. Az include direktíva segítségével külön fájlba tett definíciók a konfigurációs fájlba beemelhetőek. A séma megadásánál először attribútumokat definiálunk, megadjuk az attribútum nevét, a szintaxisát (típusát), azt, hogy milyen illesztés végezhető rá, hogy egyértékű, vagy esetleg több értéke is lehet-e, stb. Lehetőség van egy attribútum esetén "szülő" attribútum megadására, az attribútum a szülő attribútumtól minden tulajdonságot átvesz. Sőt! A szülő attribútumra alkalmazott szűrők vizsgálatánál a gyerek attribútum értékei is ellenőrzésre kerülnek! Az attribútumokból aztán objektum típusokat állíthatunk össze. Ezek definíciója megadja, hogy melyik attribútumnak kell benne lennie, és melyik attribútumnak szabad szerepelnie egy ilyen típusú bejegyzés esetében. Ezek is "örökölhetnek" egymástól. Minden egyes attribútum, objektum típus, szintaxis rendelkezik egy numerikus és egyedi azonosítóval, aminek a neve OID (Object IDentifier). Egy tartományt bármilyen szervezet bármikor igényelhet, az igénylés ingyenes. Ennek a célja az, hogy ezek az azonosítók ne ütközzenek egymással. Tesztelésre mindenesetre fenntartottak egy tartományt, ezt csak lokálisan szabad használni, és soha nem fogják kiadni senkinek használatra. Biztonsági megfontolások Az LDAP protokoll alapvetően kétfajta autentikációs mechanizmust támogat. Az egyik a 'simple', a másik az 'SASL'. Mivel simple autentikáció esetén a jelszavak kódolatlanul utaznak a hálózaton, célszerű a kapcsolatot TLS felett használni. A kapcsolathoz annak biztonságának jelzésére a szerver hozzárendel egy ún. Biztonságossági Faktort (Security Strength Factor = SSF), ami felhasználható pl. hozzáférési jogosultságok beállításakor is. Például megengedhetjük egy adat elolvasását alacsonyabb biztonsági szinten is, de ugyanakkor annak módosításához már magas szintű biztonsági követelményeket fogalmazhatunk meg.[18]
5.2 OpenLDAP szoftver működése Az OpenLDAP szoftver az LDAP- protokoll egy szabad nyílt forráskódú megvalósítása, amit az OpenLDAP Project fejlesztett ki. Az LDAP egy platform független protokoll. Számos Linux disztribúció tartalmazza az OpenLDAP szoftvert a címtár 27
szolgáltatás megvalósításához, de a szoftver még számos rendszeren működik (BSD variánsok). Pl.: Windows, Mac, Android stb.. A jelenlegi elérhető legfrissebb stabil verzió a 2.4.38.[19] 5.2.1 A szoftver részei: Az OpenLDAP 3 fő komponensből épül fel: - slapd – önálló LDAP démon és a hozzá tartozó modulok és eszközök - LDAP protokollt és az ASN.1 Basic Encoding Rules (BES)- t megvalósító függvénykönyvtárak - kliens szoftverek: ldapsearch, ldapadd, ldapdelete, és mások Az OpenLDAP tartalmaz egyéb alprojekteket is: - LDAP – LDAP osztálykönyvtár Java nyelvhez - JDBC-LDAP – Java JDBC – LDAP híd driver - ldapc++ - LDAP osztálykönyvtár C++ nyelvhez[19] 5.2.2 Háttérrendszerek A kezdetekben az OpenLDAP szerver (slapd, az önálló [standalone] LDAP démon) felépítése két részre volt osztva, a frontend, ami hálózati kapcsolatokat és a protokollt kezeli, illetve a backend (háttérrendszer), ami kizárólag az adattárolással foglalkozik. Moduláris felépítésű, így nem csak hagyományos adatbázisokkal, de más technológiákkal is összekapcsolható. Korábbi (1.x) kiadásokban, a "háttérrendszer" és az "adatbázis" kifejezéseket, gyakran használták szinonimaként. Hogy precízek legyünk, a "háttérrendszer" tárolási interfészek egy csoportja, és az "adatbázis" egy ezeket megvalósító példány. A slapd szerver tetszőlegesen sok háttérrendszert használhat egyszerre, és minden egyes backend tetszőlegesen sok példányát (vagyis tetszőlegesen sok adatbázist) használhat egyszerre. Jelenleg 16 különféle háttérrendszer érhető el az OpenLDAP disztribúciókba, és számos külső gyártótó kínál saját tárolót. A sztenderd háttérrendszerek nagyjából három kategóriába sorolhatók:
Adattárolók – ezek ténylegesen adatot tárolnak o back-bdb: az első tranzakciós háttérrendszer az OpenLDAPhoz, a BerkeleyDB-n alapul o back-hdb: a back-bdb egy variánsa, amely teljesen hierarchikus és támogatja a részfa átnevezést o back-ldif: egyszerű LDIF fájlokra alapul o back-ndb: tranzakciós háttérrendszer, ami a MySQL NDB klaszter motorján alapul Proxy háttérrendszerek – ezek átjáróként szolgálnak más addattároló rendszerekhez o back-ldap: egyszerű proxy más LDAP szerverekhez o back-meta: proxy meta-könyvtár képeségekkel o back-passwd: a Unix rendszer passwd and group adatait használja o back-relay: átirányít más slapd hátérrendszerre (belül) o back-sql: tetszőleges SQL adatbázishoz kapcsolódik Dinamikus háttérrendszerek – ezek menet közben állítják elő az adatokat 28
o o o o o o o
back-config: slapd konfiguráció LDAP-on keresztül back-dnssrv: LDAP szerver keresése DNS-ben back-monitor: slapd statisztika LDAP-on keresztül back-null: a Unix /dev/null –hoz hasonló, tevékenység nélküli háttérrendszer back-perl: perl modult futtat az LDAP kérés megválaszolásához back-shell: shell szkriptet futtat az LDAP kérés megválaszolásához back-sock: átirányítja az LDAP kéréseket IPC-n keresztül más démonoknak (tettszőleges)
Néhány a régebbi OpenLDAP kiadásokban szereplő háttérrendszer már nem használatos, például a back-ldbm, amit az eredeti UMich kódból örökölt, illetve a back-tcl, ami a back-perl és back-shell-hez hasonlóan TCL szkriptet futtatott. A gyakorlatban, a –perl, -shell, és -sock háttérrendszerek tettszőleges programnyelven készült modulok készítését teszi lehetővé, így végtelen lehetőségeket kínál a személyre szabásra. Gyakorlatilag így a slapd egy RPC motorrá válik, egy kompakt, jól definiált és széleskörű API- val.[19] 5.2.3 Overlay- ek Alapesetben az LDAP kéréseket a frontend fogadja, dekódolja, majd továbbítja a háttérrendszernek feldolgozásra. Amikor a háttérrendszer elkészült a válasszal, átadja a frontendnek, ami elküldi az eredményt az LDAP kliensnek. Az overlay egy olyan programkód, amit a frontend és a háttérrendszer közé lehet befűzni. Így extra műveleteket ékelhetünk a folyamatba, mikor a háttérrendszer megkapja a kérést, illetve fordítva, mikor a frontend a választ, az overlayek elérik a slapd belső API-ját, és a frontend és backend minden műveletét hívhatja. Egyszerre több overlay is használható, kialakítva egy művelet sorozatot a frontend és backend között. Az overlayek kiterjeszthetik a háttérrendszer képességeit anélkül, hogy teljesen újat kellene írni, és új képességeket adhat kompakt, könnyen debuggolható, és karbantartható módon. Mióta az OpenLDAP 2.2-ben megjelent ez a lehetőség a közösség számos overlayt készített. Jelenleg 21 overlay található az alap OpenLDAP kiadásban, és további 15 a felhasználók által készített szekcióban, és még több vár elfogadásra, hogy bekerülhessenek.
Az alapkiadásban szereplő overlayek: o accesslog: naplózza a szerver tevékenységeit, egy másik LDAP adatbázisba, így LDAP-on keresztül elérhetőek a naplóállományok o auditlog: a szerver tevékenységeinek naplózása egyszerű szövegfájlba o chain: intercept referrals and chain them instead; code is part of back-ldap o collect: X.500 stílusú kollektív attribútumokat valósít meg (mint a Netscape Class Of Service) o constraint: korlátozza egyes attribútumok lehetséges értékeit (értékhalmaz, tartomány) o dds: dinamikus adat szolgáltatás (dynamic data service) – rövid élettartamú, önmaguktól lejáró bejegyzések o deref: a keresés eredményeképpen visszakapott hivatkozott bejegyzésekről szolgáltat adatot o dyngroup: egyszerű dinamikus csoporttámogatás 29
dynlist: kifinomultabb dinamikus csoporttámogatás és mások memberof: a memberOf (tagja) és hasonló hivatkozó attribútumok támogatása pcache: keresési eredmények gyorsító tárazása ppolicy: LDAP jelszó szabályzat (jelszó minősége, élettartama, stb.) refint: hivatkozási integritás retcode: előre meghatározott válaszkódot ad meg az egyes műveletekhez, kliensek debuggolásához használatos o rwm: rewrite modul, LDAP adatok különböző álneveihez o seqmod: szerializálja az írási műveleteket az egyes bejegyzésekhez o sssvlv: szerver oldali rendezés és virtuális listanézet (Server Side Sorting and Virtual List Views) o syncprov: (Syncrepl Provider) a replikáció mester oldalát valósítja meg o translucent: Semi-transparent pass-through, for locally augmenting data on a proxied server (?) o unique: egyediség kikényszerítése egy fában lévő attribútumokon o valsort: egy attribútum értékeinek rendezési sorrendjét tartja karban A felhasználók által készített overlayek: o addpartial: fogadja az Add (hozzáadás) kéréseket és Modified (módosítás) kéréssé alakítja, ha a bejegyzés már létezik o allop: visszaadja az összes működési jellemzőt, azon kliensek számára, akik nem tudják, hogyan kérjék azokat o autogroup: dinamikusan menedzselt statikus csoport o cloak: a külön nem kért attribútumok elrejtése a keresésekben o denyop: megtagadja a tiltott kéréseket (külön konfigurálható) o dupent: többértékű eredményeket, külön bejegyzésekre bontja o lastbind: a felhasználó utolsó sikeres bejelentkezésének idejét rögzíti o lastmod: rögzíti az utolsó módosítást egy adott fában o nops: kiszűri a redundáns módosításokat o noopsrch: megadja hány bejegyzéssel térne vissza az adott keresés o nssov: az NSS és PAM kéréseket közvetlenül a slapd-ben válaszolja meg, kiváltva az nss-ldap és pam-ldap démonokat o proxyOld: támogatja a Sun féle ProxyAuthz elavult kódolását o smbk5pwd: karbantartja a Samba és Kerberos jelszavakat o trace: Naplóz minden LDAP kérést és választ o usn: Update Sequence Numbers (ahogyan Microsoft AD-ben történik, még nem jelent meg)[19] o o o o o o
30
6. Radius protokoll és a FreeRADIUS szoftver működése 6.1 AAA protokoll Az AAA (Authetication, Authorization, accounting) protokoll, azaz hitelesítés, hozzáférés és naplózás egy a számítógépes biztonság köreiben használt kifejezés. Egy biztonsági architektúrára utal, amellyel irányítani lehet az elosztott rendszerekben az egyes felhasználók hozzáférését az egyes szolgáltatásokhoz, illetve hogy mekkora erőforrásokat használtak fel. Az egyik legnépszerűbb protokoll az AAA megvalósítására a RADIUS. Hitelesítés: az a folyamat, melynek során egy egyén azonosításra kerül, általában úgy, hogy bizonyítja, hogy rendelkezik megfelelő felhasználónévvel és a hozzátartozó hitelesítő adatokkal. Ilyen hitelesítő adatok lehetnek: jelszavak, egyszeri jelszavak, digitális aláírások és telefonszámok. Hozzáférés: Ez a funkció dönti el, hogy egy adott egyénnek van e joga egy adott tevékenységhez, általában örökölve a jogokat az alkalmazásba vagy szolgáltatásba bejelentkezés után. A jogosultságokat különböző megszorítások alapján lehet meghatározni. Ilyenek például a napszak megszorítás, fizikai hely megszorítás vagy a többszöri bejelentkezés egy adott felhasználónak vagy egyénnek. Tipikus jogosultságkezelés a mindennapi informatikában például olvasási jogot biztosítani egy bizonyos fájlhoz egy azonosított felhasználónak. Példák szolgáltatástípusokra a teljesség igénye nélkül: IP cím szűrés, cím hozzárendelés, útvonal hozzárendelés, sávszélesség és forgalom irányítás, átirányítás egy megadott címre és a kódolás. Naplózás: Ez alatt azt a folyamatot értjük, amely során gyűjtjük a felhasználó által használt hálózati erőforrásokat kapacitás és trend analízis illetve költség elemzés és számlázás céljából. Ráadásképp gyűjthet egyéb információkat, például azonosítás és jogosultság hibákat vagy biztosíthat ellenőrzési funkciókat melyekkel ellenőrizhetjük az egyes eljárásokhoz való hozzáférések helyességét a felhasználói adatbázis alapján. Valósidejű könyvelésen az erőforrás fogyasztásával párhuzamos könyvelést értjük. Tipikusan könyvelésre kerülő információk: felhasználók azonossága, szolgáltatott szolgáltatás mibenléte, szolgáltatás kezdete, szolgáltatás vége, állapot. A ma használt AAA szerverek RADIUS protokollt használva kommunikálnak. Ennek köszönhetően a TIA specifikációk RADIUS szerverként hivatkoznak az AAA szerverekre. Ennek ellenére a jövőbeli AAA szerverek valószínűleg a RADIUS utódprotokollját fogják használni ami Diameter néven ismert. Az AAA szerverek viselkedése a vezeték nélküli CDMA2000 IP hálózatokban a TIA-835 specifikálja.[20] 6.1.1 AAA megvalósítása RADIUS protokollal Az AAA megvalósítására a legjobb módszer egy egyedi adatbázis létrehozása és fenntartása, amely felhasználókat tartalmaz, mely biztosítja a hitelesítést és jogokat is lehet benne biztosítani a felhasználók számára. A RADIUS ha befut hozzá egy Acces- Request (hozzáférési kérelem) azt egy hitelesítő szerverhez (AS) továbbítja, ezáltal lehetővé válik az, hogy ne kelljen minden hálózati hozzáférést vezérlő szervernél (Network Acces Server NAS, vagy AAA szerver) egy listát a felhasználónevekről és jelszavaikról. Mikor a felhasználó 31
csatlakozni kíván a hálózathoz a NAS egy hozzáférési kérelmet küld az AAA szervernek, melyben a kapcsolat adatai vannak: a felhasználónév, mely porton kapcsolódott, a NAS identitás és a Hitelesítő (Authenticator). A AAA szerver a kérelem fogadása után a kapott adatok alapján megállapítja, hogy a NAS jogosult- e ilyen kérelem küldésére. Ha igen a szerver kikeresi a felhasználónevet és a jelszavát az adatbázisban és még egyéb a kérelemben kapott adatok alapján meghozza az engedélyezési döntést. A hitelesítési metódustól függően az AAA szerver válaszol egy véletlen számot tartalmazó Access- Challenge üzenettel, a NAS továbbít a felhasználó felé, akinek a megfelelő értékkel kell válaszolnia. Ezután a NAS továbbítja az üzenetet az AAA szervernek egy Acces- Request formában. Az AAA szerver ezután döntést hoz és , ha fogadja a csatlakozási kérelmet Access-Accept üzenetet küld, vagy elutasítás esetén Access-Reject üzenetet küld. A hitelesítés lezárul az Access- Accept üzenet küldése után és a felhasználó megkapja a kért hozzáférést a kért szolgáltatáshoz. Sikertelen próbálkozás esetén a NAS bontja a kapcsolatot a felhasználóval. Ha az Accounting engedélyezve van és a kapcsolódás sikeres volt vagyis Access- Accept üzentet kaptunk a NAS egy Accounting- Request üzenetet küld az AAA szervernek, ami létrehoz egy rekordot és nyugtázza a kérelmet, míg a NAS aktívvá teszi a felhasználói kapcsolatot. A kapcsolat befejezésénél egy Accounting- Request üzenettel jelzi a NAS, hogy mennyi ideig volt kacsolódva, és mi volt az oka a kapcsolat megszakadásának.[21][22]
10. ábra RADUS architektúra felépítése 32
6.2 RADIUS használata vezeték nélküli hálózatban A WLAN- okban a kliens a távoli felhasználó és az AP pedig a NAS. A vezeték nélküli állomások valamilyen 802.11 protokollon keresztül asszociálnak a hozzáférési porthoz. A kliens az asszociálást követően egy EAP- Start üzenetet küld a AP- nak ami ezután kéri a kliens adatait az azonosítás céljából, majd azokat továbbítja az AAA szervernek az Access- Request üzenetben. Az AAA szerver és a kliens a hitelesítést az AP-n keresztül áthaladó Access-Challange és Access-Request üzenetek feldolgozásával végzi. Ha az AAA szerver elküldi az Access- Accept üzenetet az AP ésa kliens befejezi a kapcsolat kiépítésétés legenerálják a kulcsokat a WEP vagy TKIP segítségével. Az AP ezután engedélyezi a portot és az állomás ettől kezdve jogosult a küldésre és a fogadásra. Ha az AAA szerver visszautasítja az azonosítási kísérletet, azaz Access- Reject üzenetet küld az AP-nak, akkor az AP bontja a kapcsolatot a klienssel. Amíg a hitelesítés nem történik meg a kliens nem tud adatforgalmat bonyolítani az AP-n keresztül a hálózatba.[21]
6.3 Free RADIUS A FreeRADIUS egy ingyenes és nyílt forráskódú RADIUS- szerver, ez egy olyan kliens- szerver protokoll, ami az AAA feladatainak ellátásához nyújt segítséget. Az aktuális stabil verzió az 2.2.2, ami 2013. október 30.-án jelent meg. A FreeRADIUS egy moduláris, gyors, gazdag protokollkészletű RADIUS- szerver, amely lehetőséget biztosít külső, akár saját modulok használatára is. A FreeRADIUS szoftver ingyenesen letölthető, linuxos verziók a http://www.freeradius.org/ weboldalról, a windows- os verzió pedig a http://www.freeradius.net/ weboldalról szerezhetők be. A FreeRADIUS a felhasználói adatokat a következő forrásokból tudja kiolvasni:
LDAP Kerberos SQL (MySQL, PostgreSQL, MSSQL, Oracle) /etc/passwd
PAM sima szövegfájl ProxyRadius DC (Windows domain controller) külső program (perl, python)
Támogatott hitelesítési protokollok:
PAP CHAP MSCHAP (v1, v2) SIP Digest (Cisco VoIP) EAP, PEAP
Felmerülhet a kérdés, hogy ha van pl. egy LDAP- szerverünk, akkor miért teszünk még egy szervert (RADIUSt) a hálózati erőforrás és az LDAP közé? 33
Biztonsági megfontolásból. o Pl. ha az adott alkalmazást feltörik, akkor nem tudnak közvetlenül hozzáférni az LDAP- hoz, ilyenkor a RADIUS- szerver egyfajta bástya hostként (Bastion host) viselkedik. Vagy: ki akarjuk használni a RADIUS adta lehetőségeket: o központi felhasználóo és jogosultságkezelés, o naplózás.
Leggyakoribb alkalmazási területe: azoknál a hálózati erőforrásoknál, ahol nincs lehetőség vagy mód a fent felsorolt azonosítási protokollok implementálására. Pl. hálózati eszközök (routerek, switchek, AP-k, stb.). Forrásból telepített FreeRADIUS könyvtár alkönyvtárai: bin/ etc/ include/ lib/ man/ sbin/ share/ var/
A konfigurációs fájlok alapértelmezés szerint az etc/raddb könyvtárban vannak. A fő konfigurációs fájl a radiusd.conf ez töltődik be elsőként és tölti be a többi konfigurációs fájlt. A radiusd.conf felépítése: először általános beállítások pl.: IP cím, maximum kiszolgálható konkurens kliensek száma, stb. modulok megadása modulnév { modul beállításai, paraméterei (opcionális) $INCLUDE "fájl" (opcionális) } AAA methodus (itt megadott modulokat sorban dolgozza fel, kivéve, ha Auth-Type van megadva a modulnál, mert akkor csak azt használja, és nem megy a következőhöz) authorize { modulnév . . } authenticate { modulnév . . } preacct { modulnév . . } accounting {
34
modulnév . . } post-auth { modulnév . . } pre-proxy { modulnév . . } post-proxy { modulnév . . }
Az Auth-Type beállításnál csak az ott megadott modult használja, és nem próbálja meg a többi felsorolt modult használni. A authorize-nál megadott modulok segítségével a RADIUS eldönti, hogy engedélyezi-e a felhasználó hitelesítését. A preprocess (elő feladatok) a hints, huntgroup és a realm modulok alapján végez ellenőrzést. A preacct a naplózás előtt elvégzendő műveletek- egyedi kulcsot generál a felhasználónak, amit az sql naplózásnál használnak acct_unique = "User-Name, Acct-Session-Id, NAS-IPAddress, Client-IP-Address, NAS-Port" -preprocess: a naplózás előtt elvégezendő műveleteket adhatunk meg pl.: IP cím ellenőrzés A post-auth az eredményesen hitelesített felhasználók utólagos műveleteit tartalmazza pl.: IPcím-osztás. Vagy a nem eredményesen hitelesített felhasználókat a "Post-Auth-Type REJECT"-nél megadott modullal még megpróbálja hitelesíteni a RADIUS. A pre- proxynál és post- proxynál a RADIUS- Proxy előtt és után elvégzett modulokat lehet megadni. clients: A NAS beállításait lehet megadni: IP, secret, nastype. általános forma: client IP { secret = key shortname = megnevezés nastype = NAS type }
realms : A felhasználónév@realm formátumban megadott felhasználóneveknél használatos. Felhasználói csoportokat hozhatunk létre, és különböző jogosultságokat, beállításokat adhatunk a csoportoknak.
35
huntgroups: A NAS- okat csoportokba szervezhetjük, és a kapcsolatot kezdeményezhető IP címeket, vagy felhasználóneveket adhatjuk meg. Itt tudjuk szabályozni, hogy milyen felhasználónévvel és IP címmel, milyen NAS- okhoz lehet kapcsolódni. Általános forma: csoportnév
NAS-IP-Address == IP1, Calling-Station-Id == IP2 User-Name = felhasznaélónév1, User-Name = felhasználónév1, ...
users: A felhasználók hitelesítési beállításait adhatjuk meg, ezenkívül a felhasználónévhez tartozó jelszót is megadhatjuk. Kezdhetjük a felhasználónévvel, vagy DEFAULT kulcsszó megadással. A DEFAULT joker bejegyzésként viselkedik, és minden felhasználónévre illeszkedik. Általános forma: Felhasználónév (DEFAULT) utána az Attribútumokat kell megadni veszővel elválasztva. Az attributumok megadásánál a következő operátorok használhatók: =,==.:=.+=,<,>,<=,>=,!=,=~,=*,!~,!* attributtum név
leírás
érték
példa
Auth-Type
autentikáció típusa
Accept, Reject, Local, EAP
Auth-Type == Local
User-Password
jelszó megadása
String
User-Password == "jelszo"
Service-Type
szolgáltatás típusa
Login, Outbound-User, Service-Type == Login Framed-User
Huntgroup-Name
csoport megadás
String
Simultaneous-Use
max. konkurens Integer kapcsolatok száma
Huntgroup-Name == "csoport név" Simultaneous-Use :=5
táblázat: A FreeRADIUS- ban leggyakrabban használt attribútumok Példa: JohnDoe
Auth-Type := Local, User-Password == "hello"
Egyéb modulok: A modulok beállításait, ha a radiusd.conf- ban nem lehet, vagy nem akarjuk megtenni, akkor általában a modullal azonos nevű fájlban tudjuk megtenni. Ilyenkor a fájlt includolni kell a radiusd.conf- ban. Példa:
$INCLUDE
${confdir}/fájlnév [23]
36
7. 802.1x szerinti hitelesítés 7.1 Áttekintés A 802.1X alapú hitelesítés független a 802.11 szerinti hitelesítési folyamattól. A 802.11 szabványhitelesítési keretrendszert biztosít különböző hitelesítési és kulcskezelési protokollokhoz. Több különböző 802.1X alapú hitelesítés hitelesítést végez az ügyfélgép és egy a hozzáférési pontra csatlakozott kiszolgáló (például egy RADIUS kiszolgáló) között. A hitelesítés felhasználói azonosító adatokat – például felhasználói jelszót – használ, amelyek átvitele nem a vezeték nélküli hálózaton történik. A legtöbb 802.1X alapú hitelesítés támogatja a dinamikus, felhasználónként és munkamenetenként változó kulcsokat, ezzel erősítve a kulcs biztonságát. A 802.1X hitelesítés kihasználja az EAP (Extensible Authentication Protocol) hitelesítő protokoll lehetőségeit is. A vezeték nélküli hálózatok 802.1X alapú hitelesítésének három fő összetevője van:
A hitelesítő (a hozzáférési pont) A kérelmező (az ügyfélszoftver) a hitelesítő kiszolgáló.
A 802.1X szerinti hitelesítésnél a vezeték nélküli ügyfélgép egy hitelesítési kérelmet kezdeményez a hozzáférési ponton, amely egy EAP- kompatibilis RADIUS kiszolgálón hitelesíti az ügyfélgépet. A RADIUS kiszolgáló hitelesítheti a felhasználót (annak jelszavával vagy tanúsítványával) vagy a gépet (annak MAC- címével). A vezeték nélküli ügyfél elvileg addig nem csatlakozhat a hálózatra, amíg ez a tranzakció végbe nem ment. (Nem minden hitelesítési módszer használ RADIUS kiszolgálót. A WPA- Personal és a WPA2-Personal egy közös jelszót használ, amelyet be kell írni a hozzáférési pontba és a hálózatot használni kívánó összes eszközbe.) A 802.1X többféle hitelesítő algoritmust használhat. Néhány példa: EAP-TLS, EAP-TTLS, Protected EAP (PEAP) és EAP Cisco Wireless Light Extensible Authentication Protocol (LEAP). A vezeték nélküli ügyfél ezek bármelyikével azonosíthatja magát a RADIUS kiszolgáló felé. A RADIUS alapú hitelesítés a felhasználók identitását adatbázisok alapján ellenőrzi. A RADIUS egy sor szabványt valósít meg, amelyek a hitelesítés, az engedélyezés és a használatkövetés (Authentication, Authorization és Accounting, azaz AAA) területét fedik le. A RADIUS több kiszolgálós környezetben proxy útján hitelesíti az ügyfeleket. Az IEEE 802.1X szabvány mechanizmust biztosít a 802.11 szerinti port alapú, vezeték nélküli és vezetékes Ethernet hálózatok elérésére és hitelesítésére. A port alapú hálózati hozzáférésszabályozás hasonlít a kapcsolt helyi hálózatos (LAN) infrastruktúrára, amely a LANportokra csatlakozó eszközöket hitelesíti, és sikertelen hitelesítés esetén letiltja az illető port elérését.[24] 7.2 A 802.1x alapú hitelesítés működése A 802.1X szerinti hitelesítés egyszerűsített sémája a következő: 1. Az ügyfél "hozzáférést kérek" üzenetet küld a hozzáférési pontnak. A hozzáférési pont felkéri az ügyfelet, hogy azonosítsa magát.
37
2. Az ügyfél erre egy azonosító csomaggal válaszol, amelyet a hozzáférési pont továbbküld a hitelesítő kiszolgálónak. 3. A hitelesítő kiszolgáló "elfogadom" csomagot küld vissza a hozzáférési pontnak. 4. A hozzáférési pont az ügyfél portját engedélyezettre állítja, és engedélyezi az adatforgalom folytatását.[24]
7.3 A 802.1x funkciói
A 802.1X kérelmezési protokolljának támogatása Az EAP (Extensible Authentication Protocol, kiterjeszthető hitelesítési protokoll) támogatása – RFC 2284 Támogatott hitelesítési módszerek Windows* XP alatt: o EAP TLS hitelesítési protokoll – RFC 2716 és RFC 2246 o EAP Tunneled TLS (TTLS) o Cisco LEAP o PEAP o EAP-SIM o EAP-FAST o EAP-AKA[24]
8. Kis mintahálózatok létrehozása és tesztelése 8.1 A felhasznált eszközök Mi kell egy vezeték nélküli hálózat létrehozásához? A vezeték nélküli hálózatok legelterjedtebb fajtája az infrastruktúra alapú hálózat. Infrastruktúra alapú hálózat létrehozásához a következők szükségesek: Egy vezeték nélküli útválasztó (WIFI router). - Egy vezeték nélküli hálózati adapter mindegyik gépben vagy mobil eszközben, amit csatlakoztatni kívánunk a vezeték nélküli hálózatra. - Ha a WLAN- t az internetre is szeretnénk csatlakoztatni, nagy sávszélességű - például kábeles vagy DSL - internet-szolgáltatás is szükséges. Ennek része a széles sávú modem. Az általam felhasznált WIFI router egy TP- LINK TL- WR740N, melyet egy UTP kábel segítségével csatlakoztatok a világhálóra, egy az otthoni hálózatomban már használatban lévő útválasztón keresztül, így hozva létre, egy elkülönülő saját vezeték nélküli teszt hálózatot. Majd az AP- hoz vezeték nélküli hálózati adapterrel ellátott laptopom és okos telefonom, ill. további vezeték nélküli, ill. akár vezetékes hálózati adapterrel rendelkező eszközöket is csatlakoztatok szükség esetén. A felhasznált WIFI router, egy a korunk legmodernebb és legújabb szabványainak is megfelelő eszköz, ami az olcsó kategóriába tartozik, de az általam elképzelt hálózatok mindegyikéhez tökéletes választás.
38
11. ábra: A felhasznált WIFI router A készülék rövid specifikációja: A készülék 1 db 10/100Mbps WAN Porttal és 4 db 10/100Mbps LAN Porttal rendelkezik. Van egy darab fix, 5dBi- s antennája. Frekvenciatartománya 2.4- 2.4835GHz. Ismeri az IEEE 802.11n, IEEE 802.11g, IEEE 802.11b szabványokat, ismeri a WLAN hálózatok titkosítási és hitelesítési módszereit, és 150Mbps sebességre képes.[25] 8.2 Nyílt vezeték nélküli hálózat és veszélyei Eszközömön először hagyok mindent gyári beállításban, mikor laptopommal csatlakozni szeretnék, egy nem biztonságos, nyílt WIFI hálózatot kínál fel. Az eszközt, most UTP kábellel csatlakoztatom a gépemhez. A konfigurációs beállítások böngészőbe írva a 192.168.0.1 címen érhetőek el, ezen a címen egy falhasználó név, jelszó párost kér. Ezek alapértelmezett beállításai megtalálhatóak az eszköz hátoldalán, de korábban a 3.3.2 fejezetben leírtam, hogy ezek az alapértelmezett felhasználó név és jelszó párosok megtalálhatóak az interneten is. Ezt javasolt minél előbb megváltoztatni! Ha egy támadó fel csatlakozik a nyílt hálózatra és birtokában van ezeknek, akkor szinte kimeríthetetlenek a lehetőségei. Létrehozok egy Teszt nevű SSID- el rendelkező vezeték nélküli hozzáférési pontot, mixed módban, így bármilyen eszköz tud majd rá csatlakozni, a hálózatot felderíthetőre állítom.
12.ábra Wireless settings 39
A biztonsági beállításokat kikapcsolom, így a kapcsolat során nem használok majd semmilyen titkosítást, sem hitelesítést.
13. ábra Wireless security kikapcsolva Mentem ezeket a beállításokat és csatlakoztatom a laptopom a teszthálózathoz a vezeték nélküli porton keresztül. Az észlelés után a Windows 7 Máris figyelmeztet, a legnagyobb veszélyre, ami érhet minket egy nyílt vezeték nélküli hálózatban, hogy a hálózaton keresztül küldött adatokat mások is láthatják. Miután a csatlakozás sikeresen megtörtént az Anti vírus szoftverem is figyelmeztet erre a veszélyre (Avast free). Egyre több helyen csatlakozhatunk mobileszközeinkkel az internethez a nyílt wifi hálózatok segítségével a köztereken, vendéglőben, szállodában, vonaton – gyakorlatilag bárhol. Kérdés azonban: tisztában vagyunk- e ennek veszélyeivel? Elméletben ugyanis minden közelben lévő gép hozzáférhet az adatainkhoz, kivéve, ha gondoskodunk róla, hogy a minket illető információk erős titkosítással „utazzanak” az éterben. A legtöbb felhasználó soha nem gondol bele, de egy nyílt wifi hálózaton nem azért nem lopják el az adatainkat, mert nehéz lenne, hanem egyszerűen, mert nem akarják. A nyílt wifit úgy kell elképzelni biztonsági szempontból, mint a rádió adását: bárhol fogható a vételkörzetben. Míg azonban a rádiónál csak fogadunk, a wifinél küldünk is adatokat, és bárki „rátekerhet” az adott felhasználó frekvenciájára. Rendkívül egyszerű olyan programokat letölteni az internetről, amelyekkel e-mailes, facebook- os, netes banki és más jelszavakat lehet leszedni a wifis- hálózat adatforgalmából. Az ilyen adathalász szoftvereket wifi csapdának is nevezik. A nem megfelelő védelemmel ellátott a hálózatra csatlakozott gépek nyilvános fáljait is láthatjuk, akár egész meghajtókat is, így könnyű szerrel küldhetünk szét vírusokat.[26] Javaslatom nyílt, ill. nyilvános wifi hálózatok használatakor, ha ez szükséges és nincs más választásunk: Nyilvános hálózatok közül esősorban mindig a legerősebbet válasszuk, amennyiben birtokában vagyunk a jelszónak WPA2- es titkosításnál viszonylag biztonságban érezhetjük magunkat, WPA esetén sajnos már nem érezhetjük magunkat a legnagyobb biztonságban, WEP esetén pedig már szinte olyan mintha nem is lenne titkosítás, akár egy mobil telefonra feltelepíthető applikációval már 10 perc alatt törhető. Ha a hálózat nem rendelkezik semmilyen titkosítással, mint az előző teszt hálózatom, ebben az esetben kerüljük el, ezt a lehetőséget. Ha mégis csatlakoznánk a hálózatra nem törődve a gépünk által is jelzett figyelmeztetésekkel, ebben az esetben olyan weboldalakat, ahová felhasználónévvel, jelszóval lehet belépni, ne keressünk fel. A skype- t, illetve más jelszavas chatprogramot sem tanácsos használni nyílt wifi segítségével. Lehet ugyanis, hogy maga az adatforgalom titkosítottan kerül továbbításra, de a belépéskor a felhasználó még a nyílt wifin belül van, és azon át küldi a belépési információit. Ilyen módon csakis híroldalak felkeresése, ill. böngészés javasolt![26][27] Vállalati környezetben gyakori, hogy kapunk VPN (Virtual Private Network) hozzáférést, ami egy zárt csövet képez a gépünk és a szerver között, hiába a nyitott wifi nem lehet betekinteni az adatainkba. Az egyetlen probléma, hogy általában ez csak a céges alkalmazásokra 40
korlátozódik, s a webes forgalmunk ugyanúgy védtelen marad. Azok a felhasználók viszont, akik tudják, hogy sokat tartózkodnak nem biztonságos hálózatokon, vehetik a fáradságot és előfizethetnek egy saját VPN- re is, ami már megvédi a GMail vagy Facebook forgalmukat is. Fontos, hogy mivel ez esetben minden adatunk a VPN- szerveren fog keresztülfolyni, csak megbízható szolgáltatást válasszunk. több jó megoldás is van a neten, melyek közül sok ingyeneset is találunk. Ilyen például a SecurityKiss, Hotspot Shield és TunnelBear is. Bár nagyobb adatforgalom esetén utóbbiakért is fizetnünk kell, egy gyors böngészés bőven belefér az ingyenes limitbe.[27][30] Én most a SecurityKiss nevű szoftvert szeretném bemutatni működés közben, ezzel a szoftverrel egy távoli szerverhez közvetlenül csatlakozhatunk biztonságos kapcsolaton keresztül, melynek kiépítése után az adathalász nem tud majd közbeékelődni. A szoftver másik előnyös tulajdonsága, hogy ebben az esetben VPN- szerverünk fog kommunikálni a web szolgáltatásokkal, ezáltal például kiadhatjuk magunkat egy idegen ország lakosának, megkerülhetjük az internetcenzúrát, és elrejthetjük valós tartózkodási helyünket. Én a példában egy az Egyesült államokbeli Chicago- i IP címet használok majd.[30] A program elindítása és a nem valós tartózkodási helyem kiválasztása után a program közli velem, hogy egy biztonságos titkosított csatornán keresztül folyik az adatforgalmam.
13. ábra SecurityKiss működés közben 8.3 Mintahálózat WEP használatával A router vezeték nélküli biztonsági beállításait ezúttal, egy 128 bites hexadecimális WEP kulccsal látom el. A készülék már konfiguráció közben figyelmeztet, a WEP gyengeségére és nem ajánlja, azt számomra, de ettől még lehetséges ezt a módot választani. 41
12. ábra: WEP kulcs beállításai A csatlakozás előtt már kéri a biztonsági kulcsot és csak ennek megadása után tudok csatlakozni a hálózathoz. A 4. fejezetben, már leírtam a WEP működését és a hibáit, melyből a gyengesége és kijátszhatósága, adódik. Most egy olyan programot szeretnék tesztelni a hálózaton, ami ezeket a gyengeségeket kihasználva megfejti a titkos kulcsot. Valószínűleg nincs olyan hacker a világon, aki ne ismerné az alapfelszerelés kötelező részének számító Linux alapú BackTrack operációs rendszert. Az Ubuntu Linuxra épülő optikai lemezről és pendrive-ról is - bár sokak szerint virtuális gépről tanácsosabb - futtatható rendszer számos olyan hálózati adminisztrációs szoftvert (adatforgalom figyelők, WiFi feltörők, stb.) és fejlesztőeszközt tartalmaz, amik nélkül egyszerűen lehetetlen meglenni, ha ilyen témákkal foglalkozunk.[31] Én a BackTrack 5 linux disztribúciót használtam teszthálózatom feltöréséhez. Ehhez szükségeltetett számomra egy virtuális gép, amit a VMware Workstation segítségével hoztam létre. Ezen a virtuális gépen futattam a BackTrack 5 –öt. A virtuális gép sajnos a gépemben lévő vezeték nélküli adaptert csak mint vezetékes hálózati adaptert ismeri fel, ezért egy USB- s vezeték nélküli hálózati adaptert kellett használnom. Ez az eszköz a Tenda w311Ma volt. Az eszköznek van egy darab fix 5dBi- s antennája, frekvenciatartománya 2.4GHz, ismeri az IEEE 802.11n, IEEE 802.11g, IEEE 802.11b szabványokat, a WLAN hálózatok titkosítási és hitelesítési módszereit, és 150Mbps sebességre képes.
13. ábra: BackTrack 5 logója és a felhasznált eszköz 42
A teszt során egy a youtube.com- on megtalálható videó instrukcióit követtem, a videó megtalálható itt: https://www.youtube.com/watch?v=TDNUaG59T1E Ez a folyamat körülbelül 10 percet vett nálam igénybe, de ügyesebb hackerek ezt akár 3- 4 perc alatt is elvégzik, ez sokban függ a gépünk teljesítményétől is. Mint ahogy most is leírtam a WEP titkosítás feltörése nem vesz sok időt igénybe és a szükséges szoftverek és hardverek könnyen beszerezhetőek. A folyamat menete röviden: -
-
-
A wifi kártyát promiscuous üzemmódba kapcsoltam. Erre alkalmas az "airmon-ng start wifi0" parancs. Feltérképezésre került a rádiós tér. Ezt a Kismet illetve az Airdump programokkal: "airodump-ng ath1" végeztem. Meghatároztam az AP-m bssid- jét, az általa használt csatorna számát, a biztos siker érdekében egy, a hálózaton érvényes kliens MAC címét. A kliens MAC address megszerzésének feltétele, hogy az eszköz hatósugarában kell lenni. Elindítottam az IV-k fogadását. Pl.: "airodump --ivs --write adatok --channel 9 ath1". A támadás felgyorsításának, az IV-k számának növelése érdekében "érvényes" forgalmat generáltam. Ezt az "ARP request" csomagok elkapásával, azok visszajátszásával végeztem. ARP csomagok megjelenése felgyorsítható, ha leszakítjuk a hitelesítetten forgalmazó klienseszközt a hálózatról, kényszerítve azt a hálózati kapcsolat újra felépítésére. Ha ezt nem szeretnénk, akkor türelmesen várva, előbb utóbb el fogunk kapni ilyen ARP csomagot. Egy másik, hasonló megoldás lehet az érvényes forgalomgenerálásra a csomagok fabrikálása is a packetforge-ng alkalmazás segítségével. Az Aircrack-ng program segítségével a WEP kulcsot feltörtem az összegyűjtött IV-k alapján.
14. ábra: a teszt eredménye 15. 43
Javaslatok a védekezésre: Igazából a WEP titkosítás feltörésének kivédéséhez a mai technológia mellett már nem létezik túl hatékony megoldás. Javaslatom szerint, ha lehetőségünk van rá, válasszunk modernebb eszközöket és erősebb titkosítást mint a WEP saját hálózatunk védelme érdekében. Az erősebb titkosítás fajtákat a hackereknek jóval több időbe telik feltörni, otthoni hálózatunk megvédésére én egy WPA2 titkosítást ajánlok erős jelszóval, mivel a WPA törő programok többsége csak a próbálgatáson alapszik sok ezer jelszót végig próbálva, egy egyedi és nehéz jelszóval viszonylag biztonságban tudhatjuk otthoni hálózatunkat és internet elérésünket a betolakodóktól. Vállalati környezetben, pedig semmiképpen ne használjunk WEP titkosítást, mert az nagy fenyegetést jelenthet a vállalat részére. Vállalati környezetben én WPA2 titkosítást javaslok egyéb hitelesítési módszerek alkalmazásával, ill. VPN- ek használatával a minél nagyobb biztonság elérése érdekéren.
9. Mintahálózat az ismertetett technológiák alkalmazásával 9.1 Rövid leírás Ebben a fejezetben készítek egy mintahálózatot a WPA2-Enterprise AES titkosítás és az LDAP alapú felhasználó-adatbázisból történő EAP-TTLS PAP hálózati hitelesítés tesztelésére. Ehhez az Ubuntu 12.04.4 LTS Linux attribúciót fogom használni és majd erre telepítem az OpenLDAP és FreeRadius szoftvereket. Ezen szoftverek konfigurációját fogom bemutatni, egy biztonságos hálózati hitelesítés létrehozásához. Bármilyen limux attribúció megfelelt volna a hálózat létrehozására, a felhasznált szoftverek működőképesek bármely linuxon, az én választásom az ubuntura a könyü kezelhetősége és az interneten megtalálható ezernyi kezelési útmutató miatt esett. A dolgozatom során már bemutattam a RADIUS és az LDAP protokoll működését és részeit részletesen, ezért is szeretném ebben a teszt rendszerben az OpenLDAP és a FreeRADIUS szoftverek működését bemutatni a gyakorlatban. A felhasznált eszköz szintén az előzőekben bemutatott Wifi router.
9.2 OpenLDAP szoftver telepítése és konfigurációja 9.2.1 Alapfogalmak Az LDAP az angol Lightweight Directory Access Protocol rövidítése, vagyis könnyűsúlyú címtár-hozzáférési protokoll. Egy kliens-szerver protokoll, címtár szolgáltatás eléréséhez. A címtár olyan, mint egy adatbázis, de arra törekszik, hogy magába foglaljon egy részletesebb, tulajdonság alapú információkezelést.[17] A címtár szolgáltatásban "az információ egy faszerű szerkezetben tárolódik, és minden csúcsában bejegyzések (entry) szerepelnek. Egy bejegyzésnek van típusa, amely meghatározza, hogy milyen attribútumai lehetnek. Minden egyes ilyen bejegyzésre egyértelműen hivatkozhatunk a bejegyzés DN-jével (Distinguished Name), mely lényegében a fában a csúcshoz vezető utat írja le.[18] "Az OpenLDAP szoftver a könnyűsúlyú címtár-hozzáférési protokoll (LDAP) egy szabad, nyílt forráskódú megvalósítása, melyet az OpenLDAP Projekt fejlesztett ki.[19]
44
9.2.2 Telepítés és konfiguráció Első lépésként frissítem a telepített csomagokat és telepítem a frissítéseket sudo apt-get update && apt-get upgrade –y Miután evvel végeztem telepítem az slapd és az ldap-utils nevű csomagokat sudo apt-get install slapd ldap-utils –y A telepítő egyes lépéseit tartalmazzák az alábbi képek:
16. ábra: A rendszergazda jelszavának megadása
17. ábra: Jelszó megarősítése
17.ábra: A telepítés befejezése[32] 45
Az slapd szoftver konfigurációja a sudo dpkg-reconfigure slapd paranccsal történik. Ennek lépéseit a következő ábrákon mutatom be:
18. ábra: Kihagyom-e a konfigurációt? Nem
19. ábra: DNS domain neve
20. ábra: Szervezet nevének megadása
21. ábra: A rendszeradminisztrátor jelszavának megadása és megerősítése 46
22. ábra: A háttér címtár adatbázis típus kiválasztása
23. ábra: Az slapd tisztításkor törölheti e az adatbázist. Nem
24. ábra: törlöm-e a régi adatbázist? Igen
25. ábra: Támogassa-e az LDAPv2 protokollt? Nincs rá szükségem.[33] 47
A címtár információk importálása és exportálása két directory alapú szerver között, és a címtárakban alkalmazott változások leírására az LDIF formátumként ismert (LDAP Data Interchange Format) file-okkal lehetséges. Az LDIF file a bejegyzéseket objektum orientált hierarchikus formában tárolja. Az LDAP csomag tartalmazza az LDIF file-ok LDBM formátumba konvertálásához szükséges eszközöket.Mint látható, minden bejegyzésnek saját azonosítója van, a disting uished name (megkülönböztető név), vagy dn. A dn a bejegyzés nevéből áll, megtoldva a névelérési utjával vissza a címtár hierarchia csúcsáig. Az LDAP objektumosztályok határozzák meg a bejegyzések azonosításához használható jellemzők csoportját. Az LDAP standard az alábbi alapvető objektum osztályokat nyújtja: -Group (csoport), független objektumok rendezetlen listája vagy objektumok csoportja. -Location (elhelyezkedés), az országok nevei és leírásuk. -Organization (szervezet). -People (személy). Egy bejegyzés több objektumosztályhoz tartozhat. Például a person bejegyzést definiálja a person objektumosztály, de szintén definiálja az inetOrgPerson, groupOfNames és organization objektumosztályok. Az ldap szerver objektumosztály struktúráját (sémáját) meghatározza az egyes bejegyzések számára szükséges és engedélyezett attribútumok egyéni listája.[28] Én a címtár feltöltéséhez egy PhpLdapAdmin nevű programot fogok használni, amit a sudo apt-get install phpldapadmin paranccsal telepítek. Azért használom ezt a szoftvert a címtár feltöltéshez, mert egy grafikus felületet add a felhasználókezében, amin könnyen el lehet igazodni és egyszerü vele új csoportokat és felhasználókat létrehozni, és adataikat megadni. Később ha a már létrehozott felhasználóka módosítani szeretnénk, ezt is könnyen megtehetjük. A telepítés végeztével konfigurálni kell a programot, hogy tudjon kapcsolódni az LDAP szerverhez. Ezt a config.php fájl módosításával tehetjük meg. A sudo nano /etc/phpldapadmin/config.php paranccsal nyitom meg módosításra ezt a fájlt. A következő sorokat kell módosítanom a fájlban: $servers>setValue('server','host',’localhost’); -Itt a pirossal jelölt rész helyére kell beírnunk az LDAP szerverünk ip címét, vagy a host nevét. A többi sorbanban is a pirossal jelölt részeket módosítottam az LDAP szerverem beállításai alapján. $servers>setValue('server','base',array('dc=szakdoga,dc=hu')); $servers>setValue('login','bind_id','cn=admin,dc=szakdoga,dc=h u'); Az utolsó módosítandó sort pedig ki kell vennünk komment alól és hamisról igazra állítani $config->custom->appearance['hide_template_warning'] = true; Ezzel be is fejeződött a szoftver konfigurációja, böngészőbe beírva pl.: localhost/phpldapadmin használatba is vehetjük. Itt garfikus felületen beléphetünk az 48
LDAP szerverünkbe az admin beállításaival (cn=admin.dc=szakdoga,dc=hu) és a hozzá tartozó jelszóval.[29]
26. ábra: phpLDAPadmin felülete a belépést követően Az általam létrehozott LDAP fa szerkezete így néz ki:
27.ábra : LDAP fa Itt egy users nevű csoportot hoztam létre, melynek beállításai a következő képen láthatóak:
28. ábra: users csoport beállításai 49
A users csoporton belül létrehoztam egy user1 nevű felhasználót. Később ennek a felhasználónak az adatait fogom használni a hálózatba való belépésnél az azonosításhoz. A user1 beállításai a következő képen láthatóak:
29. ábra: user1 beállításai 50
9.3 FreeRADIUS szoftver telepítése és konfigurációja 9.3.1 Alapfogalmak A FreeRADIUS egy ingyenes és nyílt forráskódú RADIUS- szerver, ez egy olyan kliens- szerver protokoll, ami az AAA feladatainak ellátásához nyújt segítséget.[23] Az AAA (Authetication, Authorization, accounting) protokoll, azaz hitelesítés, hozzáférés és naplózás egy a számítógépes biztonság köreiben használt kifejezés. Egy biztonsági architektúrára utal, amellyel irányítani lehet az elosztott rendszerekben az egyes felhasználók hozzáférését az egyes szolgáltatásokhoz, illetve hogy mekkora erőforrásokat használtak fel. Az egyik legnépszerűbb protokoll az AAA megvalósítására a RADIUS.[20] Felmerülhet a kérdés, hogy ha van már egy LDAP- szerverünk, akkor miért teszünk még egy szervert (RADIUSt) a hálózati erőforrás és az LDAP közé?
Biztonsági megfontolásból. o Pl. ha az adott alkalmazást feltörik, akkor nem tudnak közvetlenül hozzáférni az LDAP- hoz, ilyenkor a RADIUS- szerver egyfajta bástya hostként (Bastion host) viselkedik. Vagy: ki akarjuk használni a RADIUS adta lehetőségeket: o központi felhasználóo és jogosultságkezelés, o naplózás.
Leggyakoribb alkalmazási területe: azoknál a hálózati erőforrásoknál, ahol nincs lehetőség vagy mód a fent felsorolt azonosítási protokollok implementálására. Pl. hálózati eszközök (routerek, switchek, AP-k, stb.).[23] 9.3.2 Telepítés és konfiguráció A FreeRADIUS szoftver telepítését a sudo apt-get install freeradius freeradiusldap –y paranccsal végeztem el. A telepítés befejeztével a FreeRADIUS szerverünk már működőképes, a lövetkezőkben bemutatom az általam beállított konfigurációt a szoftver használatához. Az LDAP használatához először az ldap fájl kell módosítani. Ehhez cd /etc/freeradius/modules gedit ldap parancsokat kell beírnunk. A módosítandó sorok, és az általam használt beállítások, az LDAP szerver beállításai alapján: ldap{ server = ”localhost” identity
= ”cn=admin,dc=szakdoga,dc=hu”
password = szabi 51
basedn = ”dc = szakdoga,dc=hu” # Kimommentáljuk az alábbi sorokat ha kommentben vannak! filter = "(uid=%{Stripped-User-Name:-%{User-Name}})” start_tls = yes tls_cacertfile = <path to the certificate of the CA of your LDAP server certificate> tls_randfile = /dev/urandom # Itt szabályozható, hogy kinek van hozzáférése access_attr = "dialupAccess" dictionary_mapping = ${raddbdir}/ldap.attrmap ldap_connections_number = 5 # Itt tároljuk a jelszavakat password_attribute = userPassword } Mentjük a fájlt és kilépünk. A következő lépésben konfigurálnunk kell a clients.conf fájlt az AP beállításai alapján. Ezt a cd /etc/freeradius/ gedit clints.conf parancsokkal hívhatjuk elő módosításra. Itt létrehozunk egy új klienst: client 192.168.0.1 { secret = szabi shortname = apradius } Ezután mentjük a fájlt és bezárjuk. A következő lépés a default fájl módosítása lesz. A default fájlt a cd /etc/freeradius/sites-available/ gedit default parancsokkal hívhatjuk elő módosításra. Itt az authorize{} részen belül engedélyezzük a: preprocess aut_log eap ldap részeket, ill. kommentbe tesszük a files részt. Az authenticate{} részen belül pedig kivesszük komment alól a: Auth-Type PAP { 52
pap } és a Auth-Type LDAP{ ldap } részeket. Ezután mentjük a fájlt és bezárjuk. A következő lépés az inner-tunnel fájl módosítása lesz. Az inner-tunnel fájlt a cd /etc/freeradius/sites-available/ gedit inner-tunnel parancsokkal hívhatjuk elő módosításra. Itt az authorize{} részen belül engedélyezzük az: ldap eap részeket, ill. kommentbe tesszük a files részt. Valamint az authenticate{} részen belül pedig kivesszük komment alól a:
Auth-Type PAP { pap } és a Auth-Type LDAP{ ldap } részeket. Ezután mentjük a fájlt és bezárjuk. Végül módosítjuk az eap.conf fájl tartalmát. Ezt a fájlt a cd /etc/freeradius/ gedit eap.conf parancsok segítségével nyithatjuk meg módosításra. Módosítom a fájl tartalmát a következők szerint: eap { default_eap_type = tls timer_expire = 60 ignore_unknown_eap_types = no tls { 53
private_key_file = <path to a private key for your Radius server> certificate_file = <path to the corresponding certificate file for the Radius server> CA_file = <path to the file containing the certificate of the Certificate Authority> dh_file = ${raddbdir}/certs/dh random_file = /dev/urandom fragment_size = 1024 include_length = yes copy_request_to_tunnel = no use_tunneled_reply = no } ttls { default_eap_type = md5 copy_request_to_tunnel = no use_tunneled_reply = no } } Ha ezzel végeztünk mentjük és bezárjuk a fájlt. Naplózás konfigurálása: nano /etc/freeradius/radiusd.conf log { destination = files file = ${logdir}/radius.log stripped_names = no auth = yes auth_badpass = no auth_goodpass = no }
Biztonsági beállítások: Ajánlott beállítani a következőket: Csak a freeradius authentication és accounting valamint az SSH portot engedélyezni; a freeradius portjaival csak a dedikált eszközök kommunikálhassanak.[34]
54
9.4 A rendszer üzembe helyezése Az AP vezeték nélküli beállításait a következő képek szerint módosítottam és mentettem:
30. ábra: AP Wireless beállítások
31. ábra: Az AP biztonsági beállításai Miután ezen beállításokat elvégeztem Windows 7 segítségével csatlakozom a hálózathoz, csatlakozáskor a Windows lekezeli a biztonsági protokollt és egy azonosítási ablakot dob fel, ahol azonosíthatjuk magunkat az LDAP adatbázisban létrehozott felhasználók segítségével. A FreeRADIUS és az LDAP szerveren keresztül történő azonosítás után a gép csatlakozik a hálózathoz.
32. ábra: Azonosítás csatlakozáskor
55
10. Összegzés A vezeték nélküli hálózatok alkalmazása során nagy figyelmet kell fordítanunk a megfelelő biztonsági beállítások konfigurálására. A vezetékes hálózatokkal szemben itt a kommunikáció rádióhullámok vagy egyéb vezeték nélküli adattovábbítási módszer segítségével megy végbe. A támadóknak nem kell a vezeték közvetlen közelében tartózkodniuk, hogy kárt okozzanak hálózatunkban, elég ha a hálózat hatósugarában tartózkodnak. A munkám során a vezeték nélküli hálózat protokollok bemutatásával és összehasonlításával foglalkoztam. A vezeték nélküli hálózatok eleinte sok-sok biztonsági hiányosságot tartalmaztak. a WLAN- ok legelterjedtebb szabványa az IEEE 802.11. Első verziójában került definiálásra a WEP, ami a LAN- okkal összehasonlítható biztonságot ígért, azonban rövid idő alatt felszínre bukkantak hiányosságai, amelyek az alkalmazott algoritmusok gyengeségeire vezethetőek vissza, így helyes konfiguráció esetén sem nyújt kellő biztonságot. A WEP alkalmazása mára már nem ajánlott, ennek ellenére sok otthoni felhasználásra szánt vezeték nélküli hálózati eszköz ezt ajánlja fel alapértelmezett beállításként. A munkám során létrehoztam egy WEP titkosítással rendelkező hálózatot mely gyengeségeit kihasználva teszteltem egy feltörő programot. Otthoni használatra a WPA2 előre kiosztott kulcsokat alkalmazó változatának használata a javasolt, megfelelően erős kulcs esetén kellő biztonságot fog nyújtani. Munkám során bemutattam a WPA2 előnyeit a WEP titkosítással szemben. Nyílt vezeték nélküli hálózatok esetén fokozottan kell ügyelni a biztonságra, mindenféle biztonsági intézkedés hiányában használata szigorúan csak pár perces böngészésre ajánlott. Nyílt vezeték nélküli hálózat esetén ha van rá lehetőség ajánlott saját VPN alkalmazása. A munkám során egy nyílt vezeték nélküli teszthálózatot hoztam létre, melyen VPN- t és egyéb biztonsági feltételeket biztosító szoftvereket teszteltem. Vállalati környezetben ajánlott a WPA2- Enterprise alkalmazása RADIUS protokoll használatával LDAP vagy egyéb adatbázis szerver használatával, illetve a VPN- ek alkalmazása, ha van rá lehetőség. A munkám során létrehoztam egy WPA2- Enterprise AES protokollt használó hálózatot és Linuxra telepített FreeRadius szerver és OpenLDAP szerver segítségével biztosítottam adatbázist az azonosításhoz.
56
11. Summary In the use of wireless networks we have to take safety measurements into account. Unlike LAN networks, the wireless data transfer happens through radio waves or other means of wireless communication . The attackers don’t have to be in the vicinity of the network to do harm in it, they can do so from the range of connection. In my work I dealt with the introduction and comparison of wireless network protocolls. Early wireless networks had many security faults. The most spred rules of WLAN is IEEE802.11., in it’s first version WEP was implemented, what promised comparable security levels to LAN. However it’s lackings soon hit the surface, they can be traced back to the weaknesses of algorithms, so even in case of correct configuration, it won’t offer necessary protection. Nowadays the usage of WEP is not recommended, in spite of that many wi-fi device, made for home useage, offers this option as default setting. In my work i made a WEP secured network, and took advantage of it’s weaknesses to test a hacker program. For home use the of WPA2 with predifined keys is recommended, with an adequately secure key it can offer satisfying protection.In my thesis is introduced the advantages of WPA2 against WEP. In case of open wireless networks the security must be well attended to. It’s usage without any security settings is strictly recommended for only a few minutes of browsing. In case of open networks, if possible the use of VPN is recommended. I made an open wireless network, where i tested VPN and other security softwares. In business enviroment the use of WPA2-Enterprise with RADIUS protocoll and if possible the use of VPNs is recommended, on LDAP or other database servers. I made a network which ran WPA2-Enterprise AES protocoll, and used FreeRadius and OpenLDAP servers under Linux to secure a datebase for identification.
57
12. Irodalomjegyzék [1] http://hu.wikipedia.org/wiki/IEEE_802.11 [2]_az_ieee_szabvanyok.rtf(http://www.google.hu/url?sa=t&rct=j&q=&esrc=s&source=web &cd=4&ved=0CE8QFjAD&url=http%3A%2F%2Fusers.atw.hu%2Ftomlap%2Fsuli%2Fhaloz at%2Faz_ieee_szabvanyok.rtf&ei=ZghJU_-) [3] http://en.wikipedia.org/wiki/IEEE_802.11b-1999 [4] http://en.wikipedia.org/wiki/IEEE_802.11a-1999 [5] http://en.wikipedia.org/wiki/IEEE_802.11g-2003 [6] http://en.wikipedia.org/wiki/IEEE_802.11n-2009 [7] http://prohardver.hu/teszt/ieee_802_11ac_a_wi-fi_uj_generacioja/ieee_802_11ac.html [8] http://en.wikipedia.org/wiki/IEEE_802.11ac [9] http://www.eetimes.com/author.asp?section_id=36&doc_id=1287503 [10] http://splash.eik.bme.hu/papers/bmewlan.html [11] http://hadmernok.hu/archivum/2007/2/2007_2_takacs.html [12]_http://109.74.55.19/tananyag/tananyagok/H%C3%81L%C3%93ZATOK/vezet%C3%A9 k%20n%C3%A9lk%C3%BCli%20h%C3%A1l%C3%B3zat.pdf [13] http://uni-nke.hu/downloads/konyvtar/digitgy/phd/2013/varga_peter_janos.pdf [14] http://irh.inf.unideb.hu/~jsztrik/publications/papers/OroszSztrikC14.pdf [15] http://iesb.hu/logikai-biztonsag/a-wep-protokoll/ [16] http://uni-nke.hu/downloads/bsz/bszemle2007/2/08_barkanyi.pdf [17] http://tldp.fsf.hu/HOWTO/LDAP-HOWTO-hu/whatisldap.html [18] http://padre.web.elte.hu/ldap.html [19] http://hu.wikipedia.org/wiki/OpenLDAP [20] http://hu.wikipedia.org/wiki/AAA_protokoll [21] http://www.wi-fiplanet.com/tutorials/article.php/3114511 [22] ftp://ftp.rfc-editor.org/in-notes/rfc2865.txt [23] http://unixlinux.tmit.bme.hu/FreeRADIUS [24] http://drivers.zitech.dk/Notebook/COMPAL/EL31-30/WLAN/Docs/HUN/security.htm [25] http://www.tp-link.com/en/products/details/?model=TL-WR740N#spec [26] http://www.biztonsagosinternet.hu/megosztas/hirek/20130605-mint-a-tarva-nyitvahagyott-lakas-a-nyilt-wifi-veszelyei [27] http://www.hwsw.hu/hirek/45651/eset-nyilt-wi-fi-veszelyek-firesheep.html [28] http://gamfinfo.hu/sites/default/files/files/linux_hal_adm_a_gyakorlatban_1.3.pdf [29] https://www.digitalocean.com/community/articles/how-to-install-and-configure-a-basicldap-server-on-an-ubuntu-12-04-vps [30] http://pcworld.hu/szoftver/a-publikus-wi-fi-sotet-oldala.html [31] http://androbit.net/news/2781/backtrack_5_r2_a_hackerek_rendszere.html [32] http://ubuntuforums.org/showthread.php?t=1976883 [33] https://www.youtube.com/watch?v=HvSgWdVb_1k [34] http://ipv6.niif.hu/m/Wireless_Eduroam_FreeRadius
58