fbpx

Hacking Windows con SMB Delivery

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.

Abbiamo già visto come bucare un PC Windows da remoto con Metasploit con un metodo generico che possa adattarsi ad ogni tipo di situazione. Oggi vediamo come sfruttare una falla scoperta relativamente di recente nel protocollo SMB, che permette all’attaccante di iniettare una DLL o del codice PowerShell malevoli all’interno del PC Windows bersaglio, aprendo così una sessione di Meterpreter su di esso.

L’enorme vantaggio che presenta questa tecnica rispetto a quella generica vista in precedenza, è che non essendo il payload incorporato in un eseguibile, non subirà la scansione da parte del software antivirus della vittima, non avvertendola della minaccia da parte di quest’ultimo.

Per chi non lo conoscesse, SMB (acronimo di Server Message Block) è il protocollo utilizzato da Microsoft per la condivisione di file, stampanti e porte seriali. Data l’importanza di SMB, un progetto free denominato Samba, garantisce la compatibilità del protocollo con piattaforme non Microsoft.

Attacco SMB Delivery con Metasploit

Metasploit offre un exploit chiamato appunto SMB Delivery, che garantisce la consegna di payload sotto forma di DLL o di PowerShell alla macchina bersaglio.

Il funzionamento dell’exploit in questione è piuttosto semplice: crea un server SMB sulla macchina attaccante che ospiterà il payload, inoltre fornisce il comando che, una volta eseguito da parte della vittima, permette la sua connessione al server appena creato, favorendo la DLL injection, aprendo così una sessione di Meterpreter su di essa.

Il server SMB tipicamente comunica con gli host connessi attraverso due porte: la 139 e la 445. Il funzionamento del protocollo attraverso queste due è leggermente differente. A noi basta sapere che gli host connessi direttamente con il server dialogheranno con esso attraverso la porta 445.

Informazioni preliminari

In questa guida, ho utilizzato due macchine: una attaccante, con Kali Linux Rolling come sistema operativo con indirizzo IP 192.168.1.5 e una bersaglio, una macchina virtuale VMWare con installato Windows 7 Ultimate SP1 con indirizzo IP 192.168.1.10. Sulla macchina bersaglio è attivo il software antivirus (nello specifico Avast) con motore e definizioni aggiornate.

Configurazione dell’exploit smb_delivery

Avviamo il servizio postgresql e msfconsole

  1. service postgresql start
  2. msfconsole

 

Configuriamo l’exploit, avviando il server SMB

  1. use exploit/windows/smb/smb_delivery
  2. set SRVHOST [ip_attacker]
  3. set SRVPORT 445
  4. set TARGET 1
  5. run

Terminati questi passaggi msfconsole avrà attivato il server SMB in background, restituendoci il comando necessario per la connessione.

Guida Metasploit - smb_delivery exploit

Aggiornamento del 27/01: ho notato ora, che dopo l’update di Metasploit Framework alla versione 4.13.14-dev, omettendo il tipo di injection da effettuare, l’exploit non mostra il comando da eseguire sulla macchina bersaglio. Ho aggiornato la configurazione scritta dell’exploit, ma per quanto riguarda le immagini, perlomeno per ora comunico a malincuore che dovrete accontentarvi di queste!

Connessione della vittima al server SMB

Sarà sufficiente che la vittima lanci il comando restituito da msfconsole, per ottenere una sessione di Meterpreter. Essendo un test, ci preoccupiamo personalmente dell’esecuzione del comando da parte della vittima.

Guida Metasploit - smb_delivery exploit

In uno scenario reale, non sarebbe verosimile l’esecuzione di questo preciso comando da parte della vittima, ragione per cui dovremmo mettere in campo tutte le nostre doti da Social Engineer, affinché l’attacco vada a buon fine.

Sessione di Meterpreter attiva

Appena il comando viene eseguito, msfconsole notifica la creazione di una sessione di Meterpreter in background.

Guida Metasploit - smb_delivery exploit

Richiamiamo la sessione con il comando

  1. sessions -i [id_di_sessione]

Guida Metasploit - smb_delivery exploit

Conclusioni

Come potete constatare voi stessi, l’exploit è di semplicissimo utilizzo ed è nettamente più efficace di quello generico, per il fatto che la vittima non deve effettuare il download di un file sul proprio PC, quindi, anche con l’antivirus attivo, non verrà avvertita della minaccia.

Grazie a Baty’s Base per l’Articolo!

Lascia un commento

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