Man in the middle local network attack (mitmf, bettercap)

Izvor: SIS Wiki
Skoči na: orijentacija, traži

Članovi: Danijel Sladović 8.siječnja.2017.

Sadržaj

Man in the middle atack

U računalnoj sigurnosti i kriptografiji man in the middle napad često zvan MITM, MitM, MiM, MitMA napad. Je vrsta napada kod kojeg napadač prekida vezu komunikacije između dvije strane te na taj način si omogućuje tajno odašiljanje ili mjenjanje podataka u komunikaciji između dvije strane, ali tako da obje strane misle da izravno komuniciraju jedna sa drugom. Najveći rizik od MITM napada postoji na javnim mjestima gdje postoji nezaštićena wireles acces point ili acces point koji ima lozinku, ali je ona javna, najčešće se taj napad može izvesti na lokalnim mrežama kafića ili gradskim wifi acces pointovima te samim tim napadaču se omogućuje širenje malware-a ili u slučaju da napadač zarazi router ili žrtvu trojanskim konjem i na taj nač si omogući pristup tom računalu ili manipuliranje računalom(remote controll). Još jedna primjena MITM napada je aktivno prisluškivanje komunikacije između dvije strane tj. između žrtve i usmjernika (routera) lokalne mreže.

MITM.gif

Mete i scenariji MITM napada

Mete MITM napada mogu biti:

- razne stranice kojima napadač želi pristupiti, a koje imaju zaštitu putem prijave i napadaču omogućuju pristup toj stranici

- financijske stranice - između prijave i autentifikacije

- veze koje bi trebale zaštićene javnim ili privatnim ključevima

Scenariji MITM napada:

- Injection

- Key manipulation

- Downgrade attacks

- Filtering

Injecting

Dodavanje paketa kod već uspostavljene veze.

Napadač može odrediti brojeve slijeda i na taj način održati vezu sinkroniziranu dok injecta nove pakete. U slučaju da je MITM napad "proxy napad" još je lakše za napadača da ubaci pakete. Korisna primjena za napadača da koristi MITM napad je prilikom jednostruke autentifikacije kada se koristi RSA token. Kod takvih scenarija "sniffing" lozinke je beskorisno zbog RSA tokena, ali jako važno presresti već autentificiranu vezu jer tada se možemo predstaviti kao autentificirani korisnik imamo pristup svemu što ima i korisnik koji je upisao lozinku i pin sa tokena.Uz to možemo i injectati naredbe prema serveru ili slati lažne odgovore od servera prema klijentu.

Key manipulation

- SSHv1

- IPSEC

- HTTPS

- SSH v1 je modifikacija javnog ključa izmjenjenog od servera i klijenta

SSHv1.png


- IPSEC ako dva ili više klijenata dijele isto tajno pitanje, svaki od njih može predstavljati kao poslužitelj prema drugim klijentima tj.računalima.

Ipsec.png


- HTTPS moguće je napraviti lažni certifikat npr. Issued by VerySign oslanjajući se na pogrešnu konfiguraciju browsera (pretrazivaca) ili glupost korisnika.

Https.png


Filtriranje

Napadač može modificirati payload paketa preračunavajući checksum. Može kreirati filtere u tok. Dužina payloada se također može mjenjati ali samo u full-duplex (u ovom slučaju je potrebno prilagoditi i sekvencu).Filtriranjem koda / ubrizgavanjem se ubacuje maliciozni kod u web stranicu ili email (javascript, trojanac, virus itd). Može se vršiti modifikacija binarnih datoteka prilikom faze preuzimanja (virus, backdoor itd).

Httpredir.png

Filtriranje preusmjeravanje HTTPS-a. To se može izvršiti tako da kada se klijent tj. korisnik želi ulogirati na stranicu za koju je potrebna autentifikacija, tada napadač koji je presreo vezu preusmjerava na svoju web stranicu koja je u identičnog dizajna kao stranica na koju se korisnik želi prijaviti. Korisnik se prijavljuje te predaje podatke na autentifikaciju, a napadač dobiva korisničke podatke te prijavljuje "žrtvu" na njen korisnički račun kako ne bi posumnjala da se nešto krivo dogodilo. Korisnik dalje nastavlja koristiti usluge te stranice, a napadač prisluškuje račun korisnika na toj stranici ukoliko ne bi došao do podataka koje može iskoristiti u svoju korist.

Downgrade attack

Paramteri razmjenjeni od strane poslužitelja i klijenta se mogu smanjiti prilikom početka veze (algoritmi se koriste kasnije) Napadač može forsirati klijenta da pokrene SSH1 umjesto SSH2 konekcije.

Server ovako odgovara:

- SSH-1.99 -- the server supports ssh1 and ssh2
- SSH-1.51 -- the server supports ONLY ssh1

Napadač postavlja filter koji mjenja 1.99 na 1.51.

Mogućnost zaobilaska unknown_hosts.

Alati za MITM napade

Ovdje su navedeni neki od alata za provođenje MITM napade koji su popularni za napade na lokalne mreže:

- Ettercap

- BetterCap

- DSniff

- Cain & Abel

- Ethernal

- Packet Creator

Provođenje MITM napada

MITM napada se provodi uz pomoć backtrack alata koji je generalno Kali Linux operacijski sustav koji u sebi sadrži velik broj alata koji se koriste u području informacijske sigurnosti. Kali Linux se koristi u razne svrhe, kao što su penetracijskih testiranja, digitalna forenzika, mrežna testiranja itd.

Sada je potrebno preuzeti python skripru koja će raditi SSLSrrip kako bi mogli otkriti podatke koja nas zanimaju a u većini slučajeva su to korisničko ime i lozinka. Nju preuzimamo sa https://moxie.org/software/sslstrip/sslstrip-0.9.tar.gz te ju je nakon toga potrebno pokrenuti

wget https://moxie.org/software/sslstrip/sslstrip-0.9.tar.gz
tar zxvf sslstrip-0.9.tar.gz

Kako bi započeli MITM napad potrebno je spojiti se na lokalnu mrežu koji želimo napasti tj. presresti komunikaciju ili promet unutar nje. Da bi to postigli potrebno je omogućiti da paketi prolaze računalo napadača na taj način da korisnici čiji promet napadač presreće ne znaju da je napad u toku. Kako bi postavili da podatci prolaze kroz nas potrebno je izvršiti sljedeću naredbu

echo 1> /proc/sys/net/ipv4/ip_forward

Nakon toga postavljamo iptables kako bi presreli HTTP zahtjeve na način da se izvrši sljedeće

iptables -t nat -A PREROUTING -p tcp –destination-port 80 -j REDIRECT –to-port <yourListenPort>

Pokrećemo SSLStrip

sslstrip.py -l <listenPort>

I sada je još potrebno pokrenuti arpspoof kako bi preusmjerili mrežu na napadačevo računalo.

arpspoof -i <interface> -t <targetIP> <gatewayIP>

iptables

iptebles je firewall koji je ugrađen u kernel te se može koristiti kao alat za pregled, izmjenu, prosljeđivanje, i brisanje IPv4 paketa. Kod za filtriranje IPv4 paketa već je ugrađena u kernel, a organizirana je u zbirku tablica, svaki s određenom svrhom. Tablice su sastavljene od skupa unaprijed definiranih lanaca, a lanci sadrže pravila koja se prate i izvršavaju redosljedom.

Lanci koji su nam poznati su:

INPUT- Ovaj lanac se koristi za usmjeravanje paketa prema nekom lokalnom procesu

OUTPUT- On će propustiti pakete lokalnih procesa prema mreži

FORWARD- Prosljeđuje pakete nekom drugom računalu

PREROUTING- Prevođenje ciljnih adresa

POSTROUTING- Prevodi adrese izvora

MITMf attack

MITMf je jedan od alata za napad na lokalnu mrežu te jedna vrsta Man In The Middle napada. Ovdje će biti prikazano kako uz pomoć MITMf alata kako se radi napad na browser žrtve tj. izvest će se napad pomoću JS Injection. to ćemo napraviti na sljedeći način :

Mitmf install.png

Ovdje je prikazano na koji način se pokreće beef alat tj. iz ovog terminala ćemo dobiti url adresu kojom ćemo pristupiti alatu beef i url adresu pomoću koje hookamo browser žrtve te mu radimo js injection pomoću beef-a.

Beef.png

Ovdje je prikazan alat beef kojem pristupamo tako da u browser u Linux-u upisemo url iz terminala koju smo dobili prilikom pokretanja beef-alata.

Hookanje browsera zrtve.png


Bettercap napad

Bettercap je portabilan alat koji je kreiran u Ruby programskom jeziku. Pomoću njega mogu se izvršiti raznovrsni MITM napadi na lokalne mreže, omogućuje manipulaciju HTTP-a, HTTPS-a i TCP-a u realnom vremenu. Te pomoću kojeg automatizirano možemo pratiti promet na nekoj lokalnoj mreži i na taj način doći do podataka koje koji bi se mogli iskoristiti protiv žrtve, kao što su korisnjčki podatci s kojima se neki korisnik autentificira na neku web stranicu. Bettercap je novija verzija Ettercapa koji je napravljen na taj način da ga je lakše nadograditi tj. lakše je napisati neku nadogradnju nego za Ettercap. Bettercap omogućuje praćenje prometa na velikim mrežama dok ettercap to ne može tj. jako je nestabilan.

Bttercap omogućuje MITMf ICMP spoofing, potpuno prilagodiv sniffer korisničkih podataka i ima ugražene modularne Http(s)i TCP proxy servere.


Preuzimanje biblioteka za ruby tj bettercap.png

Ova slika prikazuje preuzimanje svih biblioteka koje su nam potrebne za pokretanje Bettercap alata.


Instalacija bettercapa.png

Ovdje je prikazana instalacija Bettercap alata.


Pokretanje bettercapa.png

Pokrećemo bettercap sniffer sa parametrima koji su prikazani na vrhu terminala tj. radimo arp poisoning za sve http i https zahtijeve te smo stavili filter po ključnoj riječi kako bi nam lakše bilo pronaći podatke koje trežimo a to su korisnički podatci s kojima se zrtva pokušava autentificirati na neku web stranicu. Unatoč tome što bettercap koristi sslstrip neke poznatije web stranice imaju takvu zaštitu da njohov server zahtjeva od korisnikovog browsera da koristi https unatoč tome što je korišten sslstrip te downgradean https na http.


Sifra i pass.png

Ovdje je prikazano kako se u terminalu može vidjeti korisničko ime i lozinka korisnika na kojem smo izvršili sniffing. U ovom se je primjeru korisnik ulogirao na stranicu koja nema https protokol već http. Sada jednostavno napadač može iskoristiti korisničke podake žrtve kako bi ostvario pristup ovoj stranici.

Neke od naredbi koje se koriste u Bettercap alatu

Examples.png

Naredbe koje se koriste.png

Literatura

1. https://www.bettercap.org/ , dostupno 19.1.2017.

2. https://www.bettercap.org/docs/logging.html , dostupno 19.1.2017.

3. https://www.youtube.com/watch?v=BOzDswGQWzE , dostupno 19.1.2017.

4. https://www.youtube.com/watch?v=bEMwES6TQUw , dostupno 18.1.2017.

5. https://www.youtube.com/watch?v=hI9J_tnNDCc , dostupno 18.1.2017.

6. https://www.youtube.com/watch?v=Dat5kJxpwbI , dostupno 18.1.2017.

7. https://www.veracode.com/security/man-middle-attack , dostupno 9.1.2017.

8. http://www.ethikalhacker.webs.com/ManInTheMiddle_SSL.pdf , dostupno 9.1.2017.

9. https://www.blackhat.com/presentations/bh-usa-03/bh-us-03-ornaghi-valleri.pdf , dostupno 9.1.2017.

10.https://arxiv.org/ftp/arxiv/papers/1504/1504.02115.pdf, dostupno 9.1.2017.

11.https://blogs.msdn.microsoft.com/ptorr/2005/02/22/guerrilla-threat-modelling-or-threat-modeling-if-youre-american/ , dostupno 9.1.2017.

12.https://msdn.microsoft.com/library/ms978516.aspx , dostupno 9.1.2017.

13.https://www.owasp.org/index.php/Threat_Risk_Modeling ,dostupno 9.1.2017.

14.https://www.youtube.com/watch?v=-oOV0Q9LS_M , dostupno 19.1.2017.

Osobni alati
Imenski prostori
Inačice
Radnje
Orijentacija
Traka s alatima