Metasploit je software otvorenog koda, namijenjen analizi računalne sigurnosti. Osigurava informacije o sigurnosnim ranjivostima, te pomaže u izvođenju testiranja sigurnosti. Metasploit Framework je razvojna platforma za izradu i izvođenje kôda i alata za zloporabu na udaljenim računalima.

Kao i drugi alati namijenjeni zaštiti informacijske sigurnosti, Metasploit se može koristiti za zakonite i neovlaštene aktivnosti.

Metasploit okruženje koriste sigurnosni stručnjaci za izvođenje testiranja, administratori sustava za provjeru instalacija zakrpa, proizvođači za testiranje ranjivosti, ali i ostali sigurnosni istraživači u različite svrhe. Metasploit framework je najveći Ruby projekt ikad napravljen.

U radu će se koristiti Metasploit Community Edition. Prvi put kad se pokrene (izbornik/Linux Kali/eksplotacijski alati/ Metasploit), potrebno je registrirati program kako bi dobili ključ za registraciju.

Nakon što su podaci upisani u formular, otvorit će nam se internet preglednik i potrebno omogućiti programu port 3790 kako bi se spojio na bazu podataka.

Slika 23. Internet preglednik upozorava na korištenje porta za vanjsko spajanje. To će mu u ovom slučaju biti dopušteno. OPREZ!!! Ja ovdje koristim virtualizirani Linux Kali i sve promjene mogu s lakoćom poništiti. Budite veoma oprezni u ovakvim situacijama.

m1

 

 

 

 

 

 

 

Bit će napravljena mala demonstracija Metasploit alata. Kroz nju ćemo pokazati na koji način rade alati za održavanje pristupa.

Ovakav napad se može kombinirati i sa SET-om (engl. The Social-Engineer Toolkit). O tomu će se moći pročitati kasnije u postu od nazivom socijalni inženjering, a o održavanju pristupa će također još biti pisano.

Msfpayload naredba se koristi za proizvodnju različitih payload-a za različite sustave. Payload je “teret” koji napadač želi ubaciti u sustav, a izvršava određene akcije.

Na primjer otvaranje reverse shell[1]-a ili pokretanje VNC[2] programa. Kad se neki sustav eksploitira, uvijek se nastoji pokrenuti payload kako napadač dobio kontrolu.

Koristit ćemo sljedeću naredbu. Ona će stvorit payload datoteku za windowse iz meterpreter obitelji (takvi napadi iniciraju sesiju), koja radi na principu koji se zove reverse_tcp.

Važni parametri ovdje su LHOST (lokalna IP adresa računala od napadača) i LPORT (lokalni broj porta računala) od napadača.

Budući da je riječ o obrnutom TCP-u, žrtva će inicirati vezu s hakerskim računalom. Datoteku ćemo nazvati payload.exe i staviti na radnu površinu.

Slika 24. Kod za stvaranje payload-a. Vidljiva je i adresa i broj porta na koju će se spajati.m2

 

 

Sada bi ova datoteka nazvana “payload.exe” trebala raditi na računala žrtve, ali važno je da se prvo pokrene listener na hakerskom računalu. To je proces koji će uspostaviti vezu sa žrtvom.

Sljedeći korak je prebaciti payload na žrtvino računalo.

To se može postići tako da payload preimenujemo, promjenimo mu ikonicu i ubacimo u popularni torrent, te se on instalira zajedno sa nekim software-om.

Također isto možemo postići socijalnim inženjeringom, npr. Preko društvenih mreža, e-maila ili nekom drugom metodom. U ovom slučaju to će se napraviti preko FTP-a.

O tome kako probiti korisničko ime  i lozinku za FTP protokol će biti sljedeći post (Medusa i Hydra). Nastavit ćemo s napadom tako da pokrenemo program za uspostavljanje sesije na hakerskom računalu. Nakon toga će biti pokrenut payload na žrtvinom računalu.

Slika 25. Pokretanje programa za uspostavljanje sesije (handler). Upisali smo podatke o adresi i portu koji će se koristiti, definirali da želimo da uspostavi reverse_tcp vezu i na kraju naredbom exploit započeli sa sesijom. Možemo vidjeti da je veza uspostavljena.m3

 

Naredbom help prikazat će nam se prikaz naredbi koje su nam na raspolaganju. Iz njih je vidljivo da je ovo računalo sada pod potpunom kontrolom napadača. Drugim riječima, na ovaj način smo stvorili stražnja vrata za napadača, popularno zvana backdoor.

Slika 26. Popis nekih od naredbi vezanih uz ovaj program za udaljeni pristup (meterpreter).m4

Npr. Moguće je vidjeti popis aktivnih procesa na tom računalu, upravljati tim računalom preko terminala, pratiti prijenos web kamere, pokretanje i zatvaranje programa ili bilo što drugo što napadač želi.

Slika 27. Pokretnut je terminal za naredbe na žrtvinom računalu (cmd.exe). Sada je moguće tipkati u meterpreter naredbe i tako potpuno preuzeti kontrolu nad tim računalom.m5

 

 

Slika 28. Pokretanje keyloggera[3] na žrvtinom računalu naredbom keyscan_start i izbacivanje sadržaja koja je žrtva utipkala naredbom keyscan_dump.

m6

 

 

 

 


[1] “Reverse Shell” je programski kod koji se povezuje na računalo napadača.

[2] VNC (engl. Virtual Network Computing) je grafički program za dijeljenje radne površine koji koristi udaljeni pristup.

[3] Program koji memorira aktivnost tipkanja na tipkovnici.