Yersinia

From ICO wiki

Koostaja

Nimi: Joonas-Tanel Kessel

Rühm: A21

Aasta: 2015

Rakenduse tutvustus [5]

Yersinia on võrgupõhine turva tööriist mida kasutatakse rünnete tegemiseks ja turvameetodite parendamiseks. See on mõeldud Unix-i[6] laadsete operatsioonisüsteemide tarvis, kasutades ära teatud võrguprotokollide nõrkusi Layer 2-e tasemel. Yersinia on maailmas kõrgelt hinnatud tööriist ja samamoodi ka laialdaselt kasutusel. Yersiniat endiselt arendatakse ja viimane stabiilne versiooniuuendus kannab numbrit 0.7.3. Nime on saanud see rakendus bakteri järgi, mis põhjustab katku. Yersinia nimi on eelkõige seotud 14. sajandil puhkenud katkuga. Yersinia arendusmeeskonna pragmaatiline ja "avatud lähtekoodi" suhtumine jätab kasutajatele vabaduse rakendada rohkem protokolle programmi lähtekoodi ning muuta see veelgi paremaks.

Yersinia arhitektuur.
Yersinia arhitektuur[1]


Rakenduse paigaldamine

Yersinia on saadaval Ubuntu, FreeBSD ja Debiani distributsioonidele, kuhu pakutakse eelkompileeritud pakke. Yersinia paigaldamine Sinu Linux masinale toimub täpselt samamoodi nagu mistahes teise rakenduse paigaldus. Käsuga “apt-get install yersinia”. Kindlasti on vaja eelnevalt ära teha juba olemasolevate rakenduste uuendused, käsuga “apt-get update”.

Tehtavad ründed võrguprotokollidele

Allpool on välja toodud mõned populaarsemad ründed, kus on tuginetud Yersinia kodulehel olevale infole ja seletustele[7].

Spanning Tree Protocol[8]

  • Võimalik saata RAW konfiguratsioone BPDU(Bridge Protocol Data Unit) kaudu.[9]
  • Võimalik saata RAW TCN(Topology Change Notification) BPDU kaudu.[10]
  • DoS(Denial of Service) RAW konfiguratsioon, BPDU kaudu
  • DoS RAW TCN BPDU kaudu.
  • Root-kasutaja õiguste võtmine
  • Teiste kasutajate rollide võtmine
  • Man-in-the-middle ründe tegemine(MITM)

Cisco Discovery Protocol

  • CDP(Cisco Discovery Protocol) saatmine ruuterite/switchide/seadmete vahel.
  • DoS üleujutus CDP neighbors table kaudu.
  • Võõra virtuaalmasina ülesseadmine võrku.

DHCP ründed

Kuigi DHCP rünneteks kasutatakse teisi rakendusi, mis on spetsiaalselt sellistele rünnetele orienteeritud, võimaldab Yersinia siiski ka neid ründeid kaitsta ja ka simuleerida. Mõned väljatoodud ründed:

  • DHCP packet-ite saatmine kohtvõrgus
  • Discover-paketi saatmine võrgus(ip-pooli koormamine)
  • Võõra DHCP serveri kohtvõrku ülesseadmine
  • DoS ründeks IP-aadressi realease-mine.

Hot Standby Router Protocol(HSRP)

  • HSRP-pakettide saatmine
  • Aktiivse ruuteri rolli ülevõtmine
  • Man-in-the-middle ruuter rolli täitmine

Dynamic Trunking Protocol

  • DTP-paketi saatmine ehk võimalik Trunkide automaatne loomine[11].
  • Trunkimise võimaldamine switch-ide vahel.


Kasutamine ja süntaks[12]

Yersinia kasutamine on võrdlemisi lihtne, kes on eelnevalt Unix/Linux laadsetes op. süsteemidega kokku puutunud. Kuna Yersinia on C-koodi[13] põhine ja paralleelselt kasutatav erinevate rünnete tegemiseks(multithread), teeb see tööriista väga kasutajasõbralikuks ja multifunktsionaalseks kolmes eri meetodis.

Yersinia -l ehk interaktiivne meetod

Selle meetodi puhul me räägime ncurses(New Curses)[14] teegist graafilisest liidesest, kus on võimalik programmeerijal tekstipõhiseid kasutajaliideseid kirjutada. See on ka kõige populaarsem meetod Yersinia kasutamisel. Selle kasutamisel annab programm tagasisidet võrguprotokollist, mida turvatakse või kuhu ründeid simuleeritakse. Vaikimisi on selleks protokolliks STP(Spanning tree protocol)[15]. Lisaks tavapärasele “-h” käsule, mis kuvab help-i ehk manuali, saab “g” käsuga vahetada kiirelt protokolli, “x” käsuga minna ründe modei-i ja et muuta protokolle, piisab “e” käsust.

Yersinia Ncurse interaktiivne meetod.
Yersinia Ncurse interaktiivne meetod[2]

Yersinia -D ehk Daemon meetod

See meetod võimaldab käivitada yersinia Linux keskkonnas ja sellele ligi pääseda mistahes teisest masinast. Näiteks kui on soov teha ründeid IOS op. süsteemile, mis on Cisco[16] seadmetel, saab simuleeritavale seadmele ligi Telnet-i[17] abil. Eelnevalt on vaja ära määrata port(vaikimisi on 12000/tcp) ja lokaalne ip-aadress. Selleks, et ründeid hakata tegema, peab välised liidesed(interface) üles seadma. Näiteks STP rünnakute tegemiseks “run stp 1”, tuleb see käsk käivitada enne iga rünnakut ja teiste võimalike rünnakute tegemiseks soovitatakse teha “run stp?” käsk. Rünnakud toimuvad automaatselt ise edasi, seega enne kui ei ole käivitatud käsku ”cancel all” toimuvad need edasi. Siin on võimalik ka monitoorida tehtud rünnakuid ja nende(eba-)õnnestumisi.

Yersinia Daemon meetod.
Yersinia Daemon meetod[3]

Yersinia -G ehk GTK graafiline liides

Kolmas ja viimane meetod on lihtne graafiline liides, kus on võimalik hiirekursori abiga teha erinevaid ründeid. See on ka kõige hilisem ja tihtilugu ka väikeste vigadega(buggy) ning mitte nii laialdaselt kasutusel.

Yersinia Graafiline meetod.
Yersinia graafiline meetod[4]

Kokkuvõte

Yersinia lihtsus, eeldusel, et kasutaja on eelnevalt kokku puutunud Unix põhiste op. süsteemidega, on just see mis paneb inimesi huvi tundma oma võrgu turvalisuse vastu ja seda ka rünnete eest kaitsma. Tänu rünnete läbiviimise oskusele on võimalik jõuda tasemele, et ise nende eest kaitstud olla. Yersinia on rakendus mis seda võimaldab ja kasutajat ka arendab. Rakendus on hea turvalisuse tagaja nii väikeste, kui ka keskmise suuruse ettevõtete jaoks nende kohtvõrgus. Olgugi, et tugi on vaid Unix põhiste op. süsteemidel, on tegemist siiski avatud lähtekoodiga rakendusega. On ilmselt aja küsimus, mil saabub tugi ka Windows op. süsteemiga masinatele[18].


Kasutatud kirjandus