Metasploit – installazione, configurazione e utilizzo base
Sempre per una questione di gestione delle risorse, avere a portata di mano qualcosa da consultare velocemente fa piacere… Abbiamo quasi sempre visto gli utilizzi per la BackBox (basata su xubuntu, link a lato), oggi invece si vede di preparare Debian, aggiungendo i repository di Kali (basata su debian,link a lato), installiamo il framework e altre cosucce che ci servono. Cominciamo con l’aggiungere i repository con le rispettive chiavi pubbliche:
come utente root digitare (in questa guida supponiamo che usiate sudo e già configurato visudo) :
sudo nano /etc/apt/source.list deb http://http.kali.org/kali kali main non-free contrib deb http://security.kali.org/kali-security kali/updates main contrib non-free
Per far velocemente, potreste fare un (copiaincollate se preferite):
sudo echo '##REPOSITORY KALI##' >> /etc/apt/source.list sudo echo 'deb http://http.kali.org/kali kali main non-free contrib' >> /etc/apt/source.list sudo echo 'deb http://security.kali.org/kali-security kali/updates main contrib non-free' >> /etc/apt/source.list
Ora importiamo le chiavi pubbliche:
sudo gpg --keyserver pgpkeys.mit.edu --recv-key ED444FF07D8D0BF6 gpg -a --export ED444FF07D8D0BF6 | sudo apt-key add -
E facciamo un update:
sudo apt-get update
Ora possiamo procedere con l’installazione del framework, installeremo anche il DB, e altre cose:
sudo apt-get install metasploit-framework postgresql libpgsql-ruby libpq-dev sudo gem install pg
Prima di procedere con l’utilizzo di msf, dobbiamo configurare postgresql diventando utente di sistema:
sudo su postgres postgres@debbox:~$ createuser -D -P -R -S metauser Enter password for new role: metapassword Enter it again: metapassword
Quindi creiamo il database:
postgres@debbox:~$ createdb --owner=metauser metadb postgres@debbox:$ exit
Ora possiamo lanciare msfconsole, sempre come utente root:
sudo msfconsole
All’avvio possiamo connetterci al database appena creato con questo comando:
msf > db_connect metauser:metapassword@127.0.0.1:5432/metadb
Per controllare che sia tutto corretto, possiamo digitare:
msf > db_status [*] postgresql connected to metadb
Per prima cosa, è indispensabile sapere cosa possiamo fare, ci viene in aiuto il comando help, che lista tutti i comandi accettati dal framework:
msf > help
Vediamo che ci sono sia i comandi “core” sia i comandi per gestire il database “database backend commands”.
A questo punto siamo pronti, supponendo che abbiamo già avviato Virtualbox con un sistema vulnerabile, all’interno del framework possiamo cominciare a scansionare la macchina alla ricerca di servizi vulnerabili. Msf offre la possibilità di eseguire nmap dal suo interno, la sintassi è identica, in questo modo il risultato di nmap popolerà il database a cui ci siamo connessi precedentemente dandoci la possibilità di analizzare direttamente i servizi vulnerabili, velocizzando di fatto la ricerca dell’exploit adatto al servizio presente sulla macchina vulnerabile. Un esempio abbastanza verosimile potrebbe essere questo:
msf > db_nmap nmap -sS -sV -O 192.168.0.13 -v -n --script vuln
Finito di scansionare il target possiamo consultare il Db alla ricerca di servizi e di vulnerabilità, con questi comandi:
msf > hosts Hosts ===== address mac name os_name os_flavor os_sp purpose info comments ------- --- ---- ------- --------- ----- ------- ---- -------- 192.168.0.13 00:18:F3:08:95:00 Microsoft Windows Vista device
msf > services Services ======== host port proto name state info 192.168.0.13 135 tcp msrpc open Microsoft Windows RPC 192.168.0.13 139 tcp netbios-ssn open 192.168.0.13 445 tcp netbios-ssn open 192.168.0.13 554 tcp rtsp closed 192.168.0.13 2869 tcp http open Microsoft HTTPAPI httpd 2.0 SSDP/UPnP 192.168.0.13 5357 tcp http open Microsoft HTTPAPI httpd 2.0 SSDP/UPnP 192.168.0.13 10243 tcp http open Microsoft HTTPAPI httpd 2.0 SSDP/UPnP msf > vulns
In questo caso non ci sono vulnerabilità note sul mio host target (non è una macchina virtuale vulnerabile), se ci fossero state delle vulnerabilità sarebbero state elencate!
Per questa prima parte è tutto, forse più avanti cercheremo di scrivere qualcosa di più avanzato. Metasploit è un framework veramente potente e quasi indispensabile in una sessione di PenTesting. Scrivete se avete suggerimenti!
Tags: exploit, hack, Howto, metasploit, pwned