E' utilizzata per simulare un web server, fare test di penetrazione "locali", e creare un mini-laboratorio per imparare/provare attrezzi, exploits e tecniche in modo legale e sicuro.
Metasploitable VM e' intenzionalmente non sicura.
* mai lasciarla esposta al Network "esterno" e internet.
No NAT e No "bridged" virtual adapter
Metasploitable3 richede:
65 GB Available space on drive, 4.5 GB RAM
Host OS capace di usare:
Packer, Vagrant, Vagrant Reload Plugin, VirtualBox, libvirt/qemu-kvm, or vmware (paid license)
Internet connection
La ISO del Sistema Operativo che vuoi simulare ((Guest) (Windows10/server,redhat/ubunto/etc)) per poi "prepararla su misura"...
La piu' vecchia Metasloitable2 e' invece distribuita già fatta e pronta da scaricare (800Mb), e con richeste molto piu' modeste.
La VM ha bisogno di solo 256 Mb di RAM, e una decina di Gb di spazio Hard Disk.
Oltre naturalmente a VirtualBox /VMware e una VM per connettersi alle applicazioni di Metasploitable2.
Con 2Gb di RAM si possono ad esempio usare 256Mb per metasploitable VM, 768Mb per Kali/Parrot/Arch/debian VM, e lasciare 1024 (1Gb) per l'Host computer.
NB: nel nostro esempio useremo VirtualBox su un Host con Ubuntu linux, lo stesso procedimento e' valido per Windows/OSX usando Vbox o VMware.
https://sourceforge.net/projects/metasploitable/files/Metasploitable2/metasploitable-linux-2.0.0.zip/download
Prepara Metasploit2 VM
1) Unzip metasploitable-linux-2.0.0.zip in una cartella:
Otterrai così il file Metasploitable.vmdk
2) Crea un nuova VM:
nome: metasploitable2
tipo: Linux
versione: (other 32-bit)
>>
Memoria : 256 MB
>>
Hard Disk: Usa un esistente disco virtuale, e naviga a Metasploitable.vmdk
e Crea la nuova macchina virtuale (VM)
System > Processor> Enable PAE/NIX
(accendilo, se spento)
System > Network > Adapter 1
cambia Attaccato a: Internal network
nome: intnet
4) Fai partire la VM, se tutto va bene, ti troverai al terminale,
login name: msfadmin
password: msfadmin
lanciando il comando ifconfig, nota che l'indirizzo IP dell'adattore eth0 non e' stato impostato:
5) Assegna un indirizzo IP statico editando il file di configurazione:
NB il carattere # e' usato per commenti, e fa ignorare tutto quello che c' e' su quella riga.
sudo nano /etc/network/interfaces
(enter password msfadmin)
iface eth0 inet static
address 192.168.1.10
## ^^^ IP che assegniamo a metasploitable2 VM
netmask 255.255.255.0
gateway 192.168.1.254
CTRL-x e "y" per confermare che si vuole salvare il nuovo file
Per caricare la nuova configurazione dai il comando:
sudo /etc/init.d/networking restart
lancia di nuovo ifconfig per confermare il nuovo IP statico
192.168.1.10
Adesso, puoi lasciare la metasploitable2 VM,
Tutto il resto sarà fatto da un altra VM
<fine prepara metasploitable2 VM>
1) vai ai Settings della VM che userai per il pentesting
IMPORTANTE:
cambia il Network a "Internal Network", "intnet"
le due VM devono essere sullo stesso segmento per poter comunicare
System > Network > Adapter 1
2) fai partire la VM (Kali)
user: root
paswd : toor
3) sappiamo che metasploitable ha IP 192.168.10,
possiamo quindi dare a Kali IP 192.168.1.20, e dire di usare192.168.10 come "gateway"
Per assegnare un IP statico, il procedimento e' simile:
apri il terminale:
nano /etc/network/interfaces
iface eth0 inet static
address 192.168.1.20
## ^^^ IP che assegniamo a Kali VM
netmask 255.255.255.0
gateway 192.168.1.10
## ^^^ IP assegnato a metasplotable2 VM
CTRL-x e "y" per confermare che si vuole salvare il nuovo file
service networking restart
ping -4 192.168.1.10 tutto ok?
Apri il browser, e entra indirizzo http:// 192.168.1.10 per vedere le applicazioni Web
<fine Prepara la VM da usare nel Pentesting >
Prepara la VM da usare nel Pentesting
Nel nostro esempio, prepariamo una VM di Kali Linux per essere usata per "attaccare" la VM di Metasploitable.1) vai ai Settings della VM che userai per il pentesting
IMPORTANTE:
cambia il Network a "Internal Network", "intnet"
le due VM devono essere sullo stesso segmento per poter comunicare
System > Network > Adapter 1
cambia Attaccato a: Internal network
nome: intnet
2) fai partire la VM (Kali)
user: root
paswd : toor
3) sappiamo che metasploitable ha IP 192.168.10,
possiamo quindi dare a Kali IP 192.168.1.20, e dire di usare192.168.10 come "gateway"
Per assegnare un IP statico, il procedimento e' simile:
apri il terminale:
nano /etc/network/interfaces
iface eth0 inet static
address 192.168.1.20
## ^^^ IP che assegniamo a Kali VM
netmask 255.255.255.0
gateway 192.168.1.10
## ^^^ IP assegnato a metasplotable2 VM
CTRL-x e "y" per confermare che si vuole salvare il nuovo file
service networking restart
ping -4 192.168.1.10 tutto ok?
Apri il browser, e entra indirizzo http:// 192.168.1.10 per vedere le applicazioni Web
<fine Prepara la VM da usare nel Pentesting >
per lista completa di vulnerabilita' e exploit:
https://metasploit.help.rapid7.com/docs/metasploitable-2-exploitability-guide
Altri PenTest lab:
web-security-dojo
https://websecuritydojo.sourceforge.io/
OWASP Broken Web Applications VM 1.8Gb (2015)
https://www.owasp.org/index.php/OWASP_Broken_Web_Applications_Project
https://sourceforge.net/projects/owaspbwa/files/latest/download