BackTrack

From EIK wiki

Sissejuhatus

Käesolev referaat on koostatud IT Kolledži aine "IT infrastruktuuriteenused" raames. Referaat annab tutvustava ülevaate tarkvarast BackTrack, esitab näiteid selle kasutusjuhtumite kohta, samuti põhjendab antud tarkvara rakendamise vajadust.

Referaadist arusaamine eeldab algteadmisi linuxi-laadsete operatsioonisüsteemide käsurea kasutamisest ja oskust seadistada arvuti BIOS-e sätteid.

Samas on referaati püütud koostada piisavalt illustratiivsena, nii et esitatud sammudest piisaks näidetes püstitatud eesmärkide saavutamiseks.

Referaadi koostamisel on kasutatud BackTrack versiooni 3, käivitades seda live-USB seadmelt arvutis, millele on paigaldatud Windows XP, samuti arvutis, millel on Windows 7. *

*Tarkvara uusima ehk 4. versiooni analoogsel käivitamisel esines tõrkeid, mis takistasid tarkvara kasutamist Windows XP ja Windows 7 operatsioonisüsteemi sisaldavatel arvutitel.

Mis on BackTrack

BackTrack on võrguturvalisuse testimist võimaldav vabavara, mis sisaldab suurt hulka võrguadministraatorile kasulikke vahendeid. Programm on tasuta kättesaadav veebilehel www.backtrack.org, kust leiab lisaks ka õpetusi ning linke foorumitele ning koolitustele. BackTrack on loodud võrguturvalisuse testimise eesmärgil, kuid loomulikult saab seda võimalusterohket tarkvara kasutada ka pahatahtlikel eesmärkidel.

Backtrack3-final2.png

Miks on hea tutvuda BackTrack'i võimalustega

Tegev võrguadministraator või selleks õppiv tudeng võiks tutvuda BackTrack võimalustega selleks, et mõista, kui kerge/raske on ära kasutada võrku, samuti selleks, et muuta oma hallatav võrk turvalisemaks. Muu hulgas saab testida kasutatavate paroolide tugevust (st tõenäosust, kui kiiresti need on murtavad).

BackTrack'i analüüsivahendid

BackTrack on väga suurte võimalustega tarkvara, mis on sisuliselt kogumik laialt kasutatavatest võrguanalüüsivahenditest. Muu hulgas sisaldab BackTrack järgmiseid tööriistu:
- Wireshark
- Airmon
- Aircrack
- Fping
- Nmap
- Netcat
- Kismet
- Sõnastikud ja brute-force vahendid (pentest-vahendid)

Näitliku loetelu BackTrack (v.3) vahenditest koos lühiselgitusega leiab käesolevalt viitelt: [1].

BackTrack'i kasutamine vs. üksikute analüüsivahendite paigaldus

Kuna BackTrack sisaldab paljusid sagedasti ka eraldiseisvalt kasutatavaid analüüsivahendeid, võiks küsida, kas BackTrack kasutamine on mõttekas. Sellele küsimusele tuleb jaatavalt vastata, kuna BackTrack on väga mugav ja kompaktne olukorras, kus ühe või mitme analüüsivahendi väljundit kasutatakse teise (või mitme) analüüsivahendi sisendina. Lisaks aitab BackTrack kokku hoida aega, mis oleks kulunud eraldiseisvate tööriistade allalaadimisele, paigaldamisele ja seadistamisele.

BackTrack'i kasutamine arvutis

Backtrack'i saab kasutada järgmiselt:

a) kirjutades üle olemasoleval kettajaol oleva operatsioonisüsteemi, mille tulemusena on Backtrack arvuti ainuke operatsioonisüsteem. Vastava õpetuse leiab käesolevalt viitelt:[[2]]
b) jaotades kõvaketas mitmeks kettajaoks, nii et Backtrack paikneb olemasolevast operatsioonisüsteemist erineval kettajaol. Selle tulemusena säilib olemasolev operatsioonisüsteem ja alglaadimisel saab valida, kas käivitatakse operatsioonisüsteem või Backtrack. Vastava õpetuse leiab käesolvelt viitelt: [[3]]
c) käivitades Backtrack live-andmekandjalt (USB-seade või CD), mille tulemusena kõik tehtud muudatused kustuvad arvuti taaskäivitamisel. 1
Vastav õpetus sisaldub järgmises peatükis.


Lihtsaim meetod BackTrack'i kasutamiseks on selle käivitamine live-andmekandjalt.

1 On võimalik BackTrack kasutamine live-andmekandjalt selliselt, et muudatused säilitatakse teisel andmekandjal. Vastava õpetuse leiab käesolevalt viitelt. [[4]]

BackTrack'i live-andmekandja tegemine

BackTrack'i saab käivitada nii alglaadivalt CD-lt kui ka USB-mälupulgalt või väliselt kõvakettalt.

Lihtsaim ja kiireim viis live-andmekandja tegemiseks on live-USB loomine. Selleks tuleb astuda järgmised sammud:

1) Laadida alla ja paigaldada vabavaraline rakendus UNetBootin, mis toimib nii Linuxi kui ka Windowsi operatsioonisüsteemidel. UNetBootin on kättesaadav antud viitelt: [[5]];

2) Eraldada väline kõvaketas või USB-mälupulk, mille andmemahu nõuded sõltuvad kasutatavast BackTrack versioonist. Käesolevas referaadis on kasutatud BackTrack versiooni 3, mille korral piisab 1GB-suurusest andmekandjast, kuna nähtuvalt alltoodud joonisest võttis programm 696MB. USB-mälupulk tuleb formatiseerida (piisab määrangust "quickformat FAT").

Vabaruum.jpg

3) UNetBootin käivitamise järel

- tuleb määrata allalaetava distributsiooni valikus "BackTrack";

Unet1.jpg


- seejärel tuleb määrata BackTrack'i soovitav versioon. Antud näites valitakse versioon 3;

Unet2.jpg


- järgmisena tuleb määrata andmekandja, millele BackTrack salvestatakse. Antud näites on selleks USB-ketas D;

Unet3.jpg


- seejärel kuvab programm BackTrack'i allalaadimise ja paigaldamise protsessi, mille lõpuleviimisega on live-andmekandja töövalmis.

Unet4.jpg

BackTrack'i käivitamine live-andmekandjalt

BackTrack'i käivitamiseks alglaadimisel tuleb kohandada arvuti BIOS-e alglaadimise järjekorra (ehk boot preferences ja/või boot order) sätteid selliselt, et arvuti laeks esmajärjekorras väliselt seadmelt.

BIOS-e vastav seadistus oleneb kasutatava arvuti margist ja mudelist, mistõttu käesolev referaat neid samme üksikasjalikult ei käsitle. Järgmine veebileht annab ülevaate klahvikombinatsioonidest, millega pääseb eri tootjate arvutite BIOS-e sätetesse: [[6]].

Kui alglaadimisjärjekord on määratud selliselt, et arvuti laeb esmalt väliselt andmekandjalt, käivitub BackTrack arvuti sisse lülitamisel, loomulikult eeldusel, et live-andmekandja on arvutiga ühendatud.

Kuvatakse järgmine valik, millest tuleb määrata esimene ehk BackTrack'i graafilise keskkonna käivitamine.

Bt.jpg


Seejärel laetakse BackTrack.

Bt2.jpg

BackTrack'i vahendite käivitamine

BackTrack'i vahendite käivitamiseks on 3 moodust:

1) Graafiliselt liideselt saab stardiklahvi kaudu liikuda soovitava vahendi juure (vt joonis allpool alapunkt 2) juures);
2) Graafilise liidese alumise tabloo otsingumootorisse soovitava vahendi nimetuse sisestamise teel;

Bt3.jpg

3) Graafiliselt liideselt käsurea konsoolist, sisestades käsu, mis vastab soovitava vahendi nimetusele.

Bt4.jpg

BackTrack'i vahendite kasutamise näited

Näide 1: Arvuti võrgukaardi seadmine "nuhkimisrežiimi" (modprobe-funktsioon)

  • Probleemid Inteli võrgukaartidega BackTrack´i kasutamisel

Backtrack'i mitmete oluliste vahendite (nt kismet, airodump, aireplay, aircrack jm) kasutamisel on vaja saada arvuti võrgukaart "nuhkimisrežiimi", mille all tuleb mõista seda, et võrgukaart on võimeline:

a) liiklust kuulama (ehk olema monitor-režiimis)

b) sisestama võrguliiklusesse pakette ehk olema sisestamisvõimeline (st töötab injection- funktsioon).

Probleemitul juhul saab mõlemad funktsioonid sisse lülitada käsuga airmon-ng start <võrgukaardi nimetus>. (Võrgukaardi nimetuse leiab eelnevalt airmon-ng sisestamisel.)

Enamasti ei piisa sellest käsust, et saada Inteli võrgukaarte (nt iwl3945 ja iwl4965) "nuhkimisrežiimi". Käsuga kismet -c iwl3945,wlan0,Wifi -X saab sellise võrgukaardi küll kuulavasse režiimi, kuid injection-funktsioon ei hakka tööle. Lisaprobleemina täheldab seda, et võrgukaart ei püsi määratud kanalil, vaid hakkab kanaleid vahetama. Selline nähtus aga nivelleerib Backtrack'i vastavate vahendite tõhususe.

  • Modprobe aitab võrgukaardi seadistamisel monitor ja injection-režiimidesse

Esiteks tuleb tuvastada arvuti võrgukaardi mudel käsuga 'airmon-ng. Pildilt näeme, et antud juhul on kasutatud Intel'i iwl3945 võrgukaardiga arvutit, mille võrguliides on wlan0.

K1.jpg


Intel võrgukaardi seadmiseks "nuhkimisrežiimi", tuleb lülitada sisse ipwraw. See on testimisdraiver, mis võimaldab Intel'i kaardil edastada töötlemata pakette, tegutsedes seega töötlemata ehk raw-režiimis. (Vt selgitust allikalt [[7]].)

Võrgukaardi lülitamiseks töötlemata režiimi, kasutatakse käsku monprobe. Muudatust saab kontrollida, sisestades uuesti airmon-ng. Pildilt näeme, et arvuti võrgukaardina nähtub nüüd ipwraw-ng ja võrguliidesena wifi0.

Käsuga iwconfig saab kontrollida, kas võrgukaart on kuulavas (ehk monitor) režiimis. Lisaks nähtub, mis kanalit võrgukaart kuulab.

K2.jpg


Järgmisena tasub uurida, millised pääsukohad on nähtavad. Kui on välja valitud pääsukoht, mille WEP/WPA/WPA2 võtme tugevust soovitakse testida, tuleb tuvastada, mis kanalil see pääsukoht tegutseb. Selleks on Backtrack'il vahend kismet. Võtmega -c määratakse kuulav võrguliides.

NB! Kui Intel'i võrgukaarti ei ole eelnevalt monprobe ipwraw käsuga määratud kuulavasse režiimi, tuleb pildil näidatud võrgukaardi määrangu asemel sisestada iwl3945,wlan0,Wifi.

Ka3.jpg


Pildil nähtub, et välja valitud pääsukoht tegutseb 6.ndal kanalil.

Ka4.jpg


Eelnevast tuleneb, et hetkel ei kuula võrgukaart õiget kanalit. Seega tuleb vahetada võrgukaardi kanalit, määrates võrgukaardi kuulama kanalit, millel tegutseb valitud pääsukoht. Selleks on käsk airmon-ng <võrguliides> start <kanali_number>. Tulemust saab kontrollida käsuga iwconfig. Pildilt nähtub, et võrguliides on edukalt vahetanud kanalit.

Ka5.jpg


Viimasena tuleb kontrollida, kas võrgukaart on sisestamisvõimeline (kas töötab injection-funktsioon). Seda saab teha vahendiga aireplay-ng, kus võti -9 tähistab sisestamistesti, võti -e pääsupunkti BSSID'd ja võti -a pääsupunkti füüsilist aadressi. Käsu viimane määrang on kasutatav võrguliides. Pildilt nähtub, et võrgukaart on sisestamisvõimeline.

Ka6.jpg

Näide 2: WEP võrgu tuvastamine ja murdmine (kismet ja muud vahendid)

Näite eesmärk on selgitada, kuidas kiiresti avastada WEP-võrkude olemasolu. See on oluline põhjusel, et potentsiaalne sissetungija eelistab WEP-võrku WPA/WPA2 võrgule. Nimelt on WEP'i murdmise tõenäosus väga kõrge, võrreldes WPA/WPA2 võrguga. Samuti on see kordades kiirem ja lihtsam.

Käesolev näide ei anna üksikasjalikku õpetust WEP-võrkude murdmise kohta. Seda esiteks põhjusel, et WEP-võrkude osakaal järjest kahaneb, võrreldes WPA/WPA2-võrkudega. Teiseks on WEP murdmine oluliselt lihtsam, kui WPA/WPA2 korral, mistõttu on sellist tegevust lihtsam iseseisvalt katsetada toodud allikate abil. Siinjuures tuletaks meelde, et katsetada tohib enda seaduslikus valduses oleva pääsupunktiga. (Võõras valduses oleva pääsupunkti murdmine on seadusevastane ja karistatav.)

  • WEP-võrgu tuvastamine Kismet'i abil

Eelmises Näites 1 näidatud viisil tuleb siseneda kismet-programmi. Seejärel klahviga S pääseb sorteerimisvalikusse. Viimasest nähtub, et klahviga w saab sorteerida leitud pääsupunkte WEP-krüpteeringu järgi.

Ksm1.jpg


Pildil on näha, et "Y" tähistab pääsupunkti, mis kasutab WEP-krüpteeringut.

Ksm2.jpg


Liikudes nooleklahviga soovitud pääsupunkti reale, saab klahviga I või Enter tutvuda pääsupunkti üksikasjadega: eelkõige näha pääsupunkti füüsilist aadressi, ESSID'd (kui see pole salastatud), kanalit, klientide arvu, tootjamudelit. Nende andmete põhjal saab asuda testima võrgu WEP-võtme tugevust. Antud juhul on WEP-võrgu ESSID salastatud.

Ksm3.jpg


  • Õpetus WEP-võrgu murdmise kohta: [[8]]

Kui arvutil on Intel'i võrgukaart, tuleb enne WEP-murdmist seadistada võrgukaart "nuhkimisrežiimi" vastavalt käesoleva referaadi Näitele 1.

  • Õpetus WEP-i murdmise erijuhtumi kohta: salastatud ESSID'ga võrk [[9]]

Kui arvutil on Intel'i võrgukaart, tuleb enne WEP-murdmist seadistada võrgukaart "nuhkimisrežiimi" vastavalt käesoleva referaadi Näitele 1.

Sellisel juhul on võrgu murdmiseks vajalik, et pääsupunktiga oleks ühendatud vähemalt 1 klient.

Näide 3: pentest'i vahendite, samuti aircrack, airodump ja aireplay kasutamine WPA-võtme murdmiseks

WPA-võtme murdmine koosneb kahest osast: esiteks tuleb kinni püüda handshake ehk paketid, millega pääsupunkt ja tegelik klient teineteist tuvastavad. Teiseks tuleb püütud handshake´i räsi analüüsimise ja eri sõnakombinatsioonidega võrdlemise kaudu murda WPA-võti.

a) Võrgu kuulamine ja handshake´i püüdmine

Olles seadistanud võrgukaardi "nuhkimisrežiimi" vastavalt eespool Näites 1 toodule, tuleb selgitada testitava WPA/WPA2 pääsupunkti ESSID, füüsiline aadress ja kanal. Selleks saab kasutada kismet-käsku, nagu sai näidatud eespool Näites 2.

Vpa1.jpg


WPA/WPA2 võtme murdmiseks on vaja kinni püüda ja analüüsida kliendi ja pääsupunkti vahel vahetatav handshake ehk paketid, millega klient ja pääsupunkt teineteist tuvastavad.

Handshake´i püüdmiseks kasutatakse vahendit ariodump-ng. Võti -c tähistab kuulatavat kanalit, võti --bssid pääsupunkti BSSID'd ja võti -w faili, kuhu kogutakse kinni püütud handshake. Viimasena määratakse võrguliides, mis eetrit kuulab.

Vpa2.jpg


Selle käsuga avaneb järgmine vaade, kus BSSID tähistab pääsupunkti füüsilist aadressi ja STATION pääsupunktiga liitunud klienti. Handshake´i püüdmine eeldab, et pääsupunktil on vähemalt üks klient. Viimase puudumisel tuleb oodata kliendi saabumist.

Vpa3.jpg


Kliendi olemasolul aitab handshake´i genereerida see, kui klient lahkub võrgust ja taasühendub pääsupunktiga. Kliendi lahkumiseks saab talle saata "DeAuthenticate" pakett, mille järel üritab klient taasühenduda pääsupunktiga.

"DeAuthenticate" paketi saatmiseks kasutatakse käsku aireplay-ng. Võti -0 tähistab "DeAuthenticate" paketi saatmist, sellele järgnev number selliste pakettide arvu, võti -a pääsupunkti füüsilist aadressi ja võti -c kliendi füüsilist aadressi. Viimasena määratakse võrguliides, mis eetrit kuulab.

Vpa4.jpg


Kui kliente on mitu, saab eelmist käsku modifitseerida selliselt, et "DeAuthenticate" pakett saadetakse broadcast´ina, mitte ei sihita ühte konkreetset klienti.

Vpa5.jpg


"DeAuthenticate" pakettide saatmise tulemusena on üks või mitu klienti end taasühendanud pääsupunktiga. Viimase tulemusena on kuulava arvuti võrgukaart kinni püüdnud handshake´i, nagu näha järgmiselt pildilt. Järgmisena tuleb asuda WPA-võtme murdmise juurde.

Vpa6.jpg

b) WPA/WPA2 võtme murdmine

Esineb mitmesuguseid meetodeid WPA/WPA2 võtme murdmiseks. Käesolevas referaadis on need meetodid tinglikult kolmeks jaotatud: sõnastike meetod, brute-force ja segameetod (ehk spetsialiseeritud sõnastikud). Selline jaotus ei pretendeeri lõplikkusele, vaid teenib selgitamise lihtsuse huvi.


  • Sõnastike kasutamise meetod

Sõnastike kasutamise meetod annab kiireima tulemuse WPA/WPA2-võtme murdmisel, kuid seda üksnes juhul, kui sõnastikus esineb otsitav võti selle täpsel kujul. Sõnastike efektiivsuse tõstmiseks tasub neid kohandada geograafilisel/lingvistilisel põhimõttel: näiteks on Eestis asuvate pääsupunktide murdmiseks mõttekas eelistada eestikeelseid (või nende puudumisel soomekeelseid) sõnastikke ingliskeelsetele.

BackTrack sisaldab 2 sõnastikku, millest väiksem asub kohas /pentest/wireless/airckrack-ng/test/password.lst ja suurem kohas /pentest/wireless /cowpatty/dict. Mõlema sisu on suures osas kattuv.

Antud juhul kasutame BackTrack'is olevaid sõnastikke. Sõnastike efektiivsuse tõstmiseks tasuks nende kahe sisu kattuvas osas kokku liita. Selleks kopeerin suurema sõnastiku sisu liitfaili suur_sonastik.

Vpa7.jpg


Seejärel tasub leida olemasoleva 2 sõnastiku eriosa, st väiksema sõnastiku need sõnad, mida suur sõnastik ei sisalda.

Vpa8.jpg


Väiksema sõnastiku sõnad, mida suurem sõnastik ei sisalda, lisatakse liitfaili suur_sonastik.

Vpa9.jpg


Seejärel püütakse käsuga aircrack-ng abil murda WPA/WPA2 võti. Liitfaili suur_sonastik sisaldavate sõnade räsi võrreldakse handshake´i räsiga.

Vpa10.jpg


Nähtuvalt tulemusest ei sisalda antud liitfail WPA/WPA2-võtmeks olevat sõna.

Vpa11.jpg


  • Brute-force meetod

Brute-force meetod võimaldab teoreetiliselt iga võtit murda, kuid praktiliselt sõltub edu otseselt murdja kasutuses olevatest ressurssidest: arvuti protsessori võimsus, aeg. Mida pikem ja keerulisem on võti, seda vähem tõenõoline on, et võti murtakse mõistliku aja jooksul.

BackTrack'i brute-force vahend sisaldub pentest tööriistade sees. See on john the ripper, mis kutsutakse esile käsuga john. Võti --stdout=8 tähistab seda, et otsitava võtme pikkus on 8 ühikut. Võti --incremental:alpha tähistab seda, et otsitav võti koosneb üksnes väiketähtedest (mitte suurtähtedest, numbritest ega erimärkidest).

Seejärel suunatakse john´i väljend aircrack´i sisendiks (võtmega -w -).

Vpa12.jpg


Pildilt on näha, kuidas toimub brute-force. Pakutakse kõikvõimalikke kombinatsioone 8 väiketähemärgi võtmele. Tulemuseni ei õnnestunud jõuda, kuna murdmise teisel minutil kuumenes arvuti protsessor üle. Sellest saab järeldada, et antud arvutil ei ole piisavat jõudlust john´i jooksutamiseks.

Vpa13.jpg


  • Crunch ehk kohandatud sõnastiku/kombinatoorika meetod

Kohandatud sõnastiku genereerimise meetod on omamoodi hübriid sõnastike meetodi ja brute-force meetodi vahel. Selle tugev eelis on, et saab rakendada mõlema meetodi tugevaid külgi (sõnastike meetodi kiirus ja brute-force kombinatoorika.), hoides samas sõnastike suurust "kontrolli all".

Nimelt sisaldavad BackTrack'i pentest-vahendid töötiista crunch, mis võimaldab koostada paindlikke kombinatsioone tähemärkidest (ja/või numbritest ja/või erimärkidest). Järgmisel pildil näeb käsku, millega koostatakse selline sõnastik väiketähtede "a" ja "b" kombinatsioonidest, kus võtme pikkus on täpselt 8 tähemärki. Saadud sõnastik on sisendiks airckrack´ile, mis hakkab murdma WPA/WPA2 võtit.

Kui selline kombinatsioon, ei anna tulemust, võib seda järk-järgult keerulisemaks muuta, lisades tähe/numbri/erimärke ja määrates suurema võtmepikkuse vahemiku. Lisaks võimaldab crunch lüüa suur sõnastik osadeks (eri failideks). See võimaldab neid lühemaid faile airckrack´i sisendina kasutada ka arvutil, mille jõudlus pole suur.

Vpa14.jpg


Nagu näha, õnnestus crunch´i meetodil murda sellist lihtsat võtit nagu "abababab" kiirusega alla 30 sekundit.

Vpa15.jpg

Koostaja

Kristiina Kaarna TS26

Allikad - lisaks ülalpool viidatule

Kõigi referaadis toodud piltide allikat näeb, vajutades vastavale pildile.

Referaadis kasutatud allikad lisaks tekstis eespool viidatuile:

Diggleby.com [[10]]

Openwall.com [[11]]

Adaywithtape.blogspot.com [[12]]

Crack-wpa.fr [[13]]

Backtrack-linux.org [[14]]

Ryanunderdown.com [[15]]

Openwall.com [[16]]

Pdftop.com [[17]]

WarDriving-Forum.de [[18]]

Forum.aircrack-ng.org [[19]] ja [[20]]

Wikipedia.org [[21]]

ubuntuforums.org [[22]]

linux.derkeiler.com [[23]]

forum.aircrack-ng.org [[24]]

backtrack-linux.org [[25]] ja [[26]]

Speedguide.net [[27]]

Itworld.com [[28]]