Installazione Metasploit e comandi di base

Installazione Metasploit e comandi di base

“Questo tutorial spiega come installare e iniziare con i comandi di base Metasploit in Linux con un vero esempio di scenario.

MetaSploit è una raccolta di vulnerabilità e exploit per l'audit di sicurezza e lo sfruttamento della vulnerabilità. Questo strumento aiuta gli amministratori di sistema a testare la sicurezza della rete e del dispositivo. Consente inoltre agli utenti inesperti di eseguire facilmente attacchi contro obiettivi.

Tutte le istruzioni descritte in questo documento includono schermate, rendendo facile per i lettori capirli e applicarli."

Cos'è PostgreSQL, come è utile quando si utilizza Metasploit e come installarlo

Quando viene scansionato un obiettivo per trovare vulnerabilità o sfruttato attraverso un foro di sicurezza, le informazioni raccolte vengono salvate in un database per essere importati e utilizzati da altri strumenti di cima. Naturalmente, coloro che eseguono compiti di pentesima possono salvare le informazioni manualmente, ma mantenere i risultati di pentesting correttamente ordinati in un database è utile per monitorare l'attività, aumentare la produttività e alleviare le attività di pentesima.

Il sistema di gestione del database supportato da Metasploit è PostgreSQL e sebbene non sia obbligatorio quando si utilizza Metasploit, si consiglia vivamente di installarlo. L'uso di Metasploit senza un sistema di gestione del database non è una decisione intelligente. Pertanto questo tutorial inizia con le istruzioni su come installare PostgreSQL prima di installare Metasploit.

Installazione di PostgreSQL su Distribuzioni Linux basate su Debian (CentOS di seguito)

Su Distribuzioni Linux di Debian e basate come Ubuntu, è possibile installare facilmente PostgreSQL utilizzando il gestore di pacchetti APT come mostrato nella seguente screenshot.

Nota: Centos Gli utenti possono trovare istruzioni per installare PostgreSQL Centos sotto.

SU Debian/Ubuntu Esegui il seguente comando.

Sudo APT Installa PostgreSQL PostgreSql-Contrib sudo SystemCtl Avvia PostgreSql

Istruzioni per installare PostgreSQL su CentOS

Per installare PostgreSQL su CentOS, eseguire il comando mostrato di seguito.

Sudo Yum Installa PostgreSQL-Server PostgreSQL-Contrib

Quindi inizializza il database eseguendo il comando seguente.

SERVIZIO POSTGRESQL INITDB

Avviare il servizio utilizzando SystemCtl come mostrato di seguito.

sudo systemctl avvia postgresql

Installazione di Metasploit in Linux

Per installare Metasploit in Linux, eseguire il comando mostrato di seguito.

sudo curl https: // raw.githubusercontent.com/rapid7/metasploit-omnibus/master/config/modello/metasploit-framework-wrappers/msfupdate.Erb> msfinstall && chmod 755 msfinstall && ./msfinstall

Dopo aver installato Metasploit, è necessario inizializzarlo; Il processo di inizializzazione creerà il database per connettersi a PostgreSQL. Esegui il comando seguente per inizializzare Metasploit.

Nota: Quando si esegue il comando di seguito, ti verrà chiesto se si desidera inizializzare il servizio Web Metasploit per interagire con Metasploit tramite l'API REST. Dal momento che non è necessario e molti utenti si lamentano di problemi quando si tratta di WebService, il che non è rilevante per l'utilizzo di Metasploit, ho digitato il "NO" opzione.

MSFDB init

Una volta inizializzato Metasploit, avvialo eseguendo il comando mostrato nell'immagine seguente.

msfconsole

Prima di iniziare con Metasploit, controlla se è stato collegato correttamente al database eseguendo il comando seguente.

db_status

Come puoi vedere, Metasploit è collegato correttamente al database; Possiamo procedere con i comandi di base Metasploit. Se si ottengono errori quando si tenta di connetterti, leggi i comandi di risoluzione dei problemi del database Metasploit qui.

Introduzione ai comandi di base Metasploit

Questa sezione spiega i comandi di base Metasploit, incluso un esempio di utilizzo pratico di scenario.

La tabella seguente mostra i comandi di Metasploit più comunemente usati con una breve spiegazione. Dopo la tabella, puoi vedere come i comandi vengono applicati in uno scenario reale.

Comando metasploit Breve descrizione
msfconsole Questo comando esegue Metasploit
ricerca Questo comando viene utilizzato per trovare moduli e exploit per nome
utilizzo IL utilizzo Il comando viene utilizzato per selezionare moduli e exploit
Mostra opzioni Mostra il modulo o le opzioni di exploit
Imposta rhosts <Target (s)> Questo comando viene utilizzato per definire gli obiettivi
Imposta le porte <Porti> Questo comando viene utilizzato per definire le porte
Imposta thread <Discussioni> Questo comando viene utilizzato per definire i thread
correre IL correre Il comando viene utilizzato per eseguire i moduli
Indietro IL Indietro Il comando ti riporta alla directory precedente
db_nmap<Bandiere><Target (i)> IL db_nmap Il comando consente di utilizzare NMAP integrato
Imposta rport <Bersaglio> Questo comando viene utilizzato per definire le porte
informazioni Il comando info stampa il modulo o le informazioni di sfruttamento
impresa IL impresa Il comando esegue lo exploit selezionato
Uscita IL Uscita Il comando chiude la sessione da Target o esce da Metasploit
carico Il comando di caricamento viene utilizzato per caricare i plugin
scaricare Il comando di scarico viene utilizzato per scaricare i plugin
CD Questo comando viene utilizzato per modificare la selezione corrente
Aiuto / ? Entrambi aiuto comando e ? il simbolo spiega l'uso dei comandi

METASPLOIT COMANDI DI BASIC ESEMPIO

Questa sezione mostra un esempio pratico dei primi 14 comandi Metasploit elencati nella tabella precedente.

L'indirizzo IP assegnato target in questo esempio è 192.168.0.101.

Per iniziare, eseguire Metasploit con il seguente comando.

msfconsole

Per iniziare, eseguirò una scansione delle porte contro il target per scoprire le porte aperte. Metasploit include diversi scanner di porte come moduli ausiliari che possiamo scegliere di scansionare gli obiettivi.

Per trovare i moduli ausiliari di Metasploit Port Scanners, il ricerca Viene utilizzato il comando, seguito dal tipo di modulo o dalla parola chiave. In questo caso, stiamo cercando un portscan; Pertanto, dobbiamo eseguire il comando mostrato nell'immagine seguente.

Cerca PortScan

Come puoi vedere nello screenshot precedente, abbiamo diversi scanner di porte per scopi diversi. In questo caso, voglio eseguire una scansione TCP usando il ausiliario/scanner/portscan/TCP modulo.

Per selezionare il modulo scelto, eseguirò il utilizzo comando, seguito dal percorso del modulo come mostrato di seguito.

Utilizzare ausiliari/scanner/portscan/TCP

Una volta selezionato il modulo, dobbiamo conoscere le opzioni richieste o disponibili prima di utilizzarlo, per le quali useremo il Mostra opzioni comando come mostrato nello screenshot seguente.

Mostra opzioni

Dalle opzioni del modulo elencate nell'immagine sopra, userò Rhosts Per definire l'indirizzo IP di destinazione, Porti definire una gamma di porte e Discussioni Per definire il numero di compiti simultanei. Quindi avverterò il processo di scansione eseguendo il comando di esecuzione.

Tranne il correre comando usato in questo esempio, Rhosts, Porti, E Discussioni Le opzioni devono essere precedute dal impostato comando raffigurato nella tabella dei comandi di base Metasploit.

IL Rhosts La sintassi dell'opzione per definire un target è mostrata di seguito, dove <Target (i)> deve essere sostituito con uno o più host target o indirizzi IP. Nel mio caso, come mostrato nella figura seguente, l'indirizzo IP di destinazione è 192.168.0.101.

Imposta rhosts

Di seguito puoi vedere il Porti Sintassi dell'opzione, dove <Porti> deve essere sostituito dalla porta o dall'intervallo di porta che si desidera scansionare. Per questo esempio, ho definito una porta da 20 a 100.

Imposta le porte

IL Discussioni l'opzione consente di definire il numero di thread; Ho selezionato 10.

Imposta thread

Dopo aver definito le opzioni precedentemente menzionate, eseguo la scansione utilizzando il correre comando. Puoi vedere l'intero processo nella figura seguente.

correre

Come puoi vedere, le porte 23, 21, 22, 25, 53 e 80 sono aperte nel bersaglio. Ma voglio conoscere le versioni di servizio che ascoltano su ogni porta aperta, per la quale userò NMAP all'interno di Metasploit.

Userò il comando posteriore per tornare al contesto iniziale per una vista più comoda.

Indietro

Come ho detto, l'output di scansione precedente ha riportato porte aperte. Ma voglio saperne di più sui servizi dietro queste porte aperte usando NMAP.

IL db_nmap Il comando esegue NMAP da Metasploit. Nell'esempio seguente, lancerò una scansione. In questo tutorial, non spiegherò le bandiere NMAP, ma puoi imparare la footprinting con NMAP in questo articolo che abbiamo pubblicato su Linuxhint.

La sintassi è semplice, esegui db_nmap seguito dai flag desiderati e dall'indirizzo IP di destinazione come mostrato di seguito.

db_nmap -sc -sv -o 192.168.0.101

Come puoi vedere nella figura precedente, la versione del servizio FTP in esecuzione nella porta 21 è vsftpd 2.3.4.

Dopo aver appreso il nostro obiettivo è in esecuzione vsftpd, Possiamo usare il ricerca comando per vedere le risorse disponibili per eseguire un attacco contro il software identificato.

Cerca VSFTP

Metasploit ha restituito un exploit disponibile (exploit/unix/ftp/vsftpd_234_backdoor) Possiamo usare contro il server FTP vsftpd 2.3.4.

In precedenza ho eseguito il utilizzo comando per selezionare un modulo. Ora eseguirò il utilizzo comando per selezionare lo exploit disponibile, come mostrato nella figura seguente. La sintassi è la stessa; corri il utilizzo comando seguito dal percorso completo di exploit.

Usa exploit/unix/ftp/vsftpd_234_backdoor

Dopo aver selezionato lo exploit, eseguirò il Mostra opzioni comanda per visualizzare le opzioni di exploit.

Mostra opzioni

Come puoi vedere nella figura precedente, le opzioni sono Rhosts per definire il bersaglio e Rport per definire le porte. Sia target che porta sono già selezionati. L'obiettivo è recuperato dalla nostra attività precedente, mentre la porta è la porta FTP predefinita; Se fosse diverso, eseguirei il Imposta rport Opzione per cambiarlo.

IL informazioni Il comando mostra ulteriori informazioni sull'exploit o sul modulo selezionato. Di seguito puoi vedere un esempio del informazioni output del comando.

informazioni

Se volessi definire un target diverso, eseguiresti il ​​seguente comando.

Set rhosts 192.168.0.101

Una volta definiti target e porta, eseguire il impresa comando per avviare lo exploit.

impresa

Come puoi vedere, ho ottenuto un guscio remoto nel bersaglio. IL ls Il comando mostra le principali directory di destinazione. L'obiettivo è stato violato con successo.

Per disconnettersi dal bersaglio, gestisco il Uscita comando.

Uscita

Per uscire da Metasploit, usa anche il comando di uscita.

Uscita

È tutto per ora; L'esempio sopra indicato include i comandi più usati per iniziare con Metasploit.

Comandi di risoluzione dei problemi di Metasploit e PostgreSQL

Molti utenti si lamentano di problemi quando si collegano al database. Qui elenco alcuni comandi che puoi usare se si verificano problemi quando si collegano Metasploit al database.

MSFDB Comandi di risoluzione dei problemi Descrizione
SERVIZIO POSTGRESQL Riavvia Riavvia PostgreSQL
msfdbreinit Rimuovere e reinizializzare il database
MSFDB Elimina Rimuovere il database
msfdbinit Inizializza il database (eseguito dopo MSFDB ELETE)
Stato MSFDB Mostra lo stato del database
MSFDB Run Avviare il database ed eseguire Metasploit

In caso di problemi, prova a utilizzare i comandi nell'ordine della tabella. Innanzitutto, prova a riavviare PostgreSQL. Se questo non funziona, prova a reinizializzare il database. Se il problema persiste, rimuovi il database e reinizializzarlo. Usa il Stato MSFDB comando per controllare lo stato dopo ogni comando.

Conclusione

Metasploit è uno degli strumenti di pentesting più popolari per il controllo della sicurezza. Insieme a NMAP, porta a risorse di sicurezza multitasking. Metasploit può essere utilizzato sia per scopi difensivi che offensivi. Come puoi vedere, usarlo non è difficile; Gli utenti devono solo incorporare una piccola conoscenza pratica se hanno già familiarità con il networking e la programmazione. Metasploit è disponibile anche per Mac OS e Microsoft Windows.

Grazie per aver letto questo tutorial spiegando l'installazione di Metasploit e i comandi di base. Continua a seguirci per ulteriori suggerimenti e tutorial professionali Linux.