Introduzione a Metasploit

Nel 2003 il brillante hacker texano HD Moore creò Metasploit Framework. Originariamente pensato come network game multi-piattaforma scritto il Perl, presto si trasformò in una piattaforma per il penetration testing.
Abbandonato Perl per problemi vari legati allo sviluppo e alla portabilità la nuova versione di Metasploit Framework è stata completamente riscritta in Ruby.

Metasploit è uno strumento che semplifica enormemente lo sviluppo e l’esecuzione di exploit.

Per poter apprezzare pienamente i benefici che questo software mette a disposizione bisogna fare un passo indietro di qualche anno e vedere come si eseguiva unpenetration test (o un hackeraggio) prima della nascita di Metasploit.

Un Tuffo nel Passato

Una decina di anni fa una volta trovato un sistema vulnerabile si rendeva necessaria la caccia all’exploit funzionante. Ci si collegava arootshell o packetstorm oppure a neworder, si effettuava una ricerca e (forse) si trovava qualcosa. Uno script in Perl, o un programma in C da compilare.

Se era uno script Perl mancava un modulo. Se era un programma C mancava una libreria o era necessario una particolare opzione da linea di comando per compilare correttamente.
Alcuni exploit si compilavano su Windows, altri su Linux. E poi alcuni erano solo PoC, ovvero proof-of-concept, exploit che funzionano in un ambiente controllato ma con difficoltà in un ambiente reale.

Si trovavano exploit che prima di funzionare andavano modificati, adattati alla versione del sistema operativo da attaccare (un SP1 o un SP2? Internazionale o Italiano?).

Con Metasploit tutto questo finisce. Esistono centinaia di exploit, e ad ogni uscita di una nuova vulnerabilità segue il modulo Metasploit. Esistono interfacce per tutti i gusti dalla console da linea di comando all’interfaccia web. Una miriade di shellcode da scegliere, shellcode che fanno praticamente tutto.

Infine da non dimenticare Meterpreter, strumento di post-exploitation che mette a disposizione dell’hacker tutti gli strumenti che gli servono, senza doverli caricare con tecniche artigianali, per poter effetuare tutte quelle attività che si svolgono una volta ottenuto l’accesso.

Concetti Base

Diamo uno sguardo agli elementi di base per capire come funziona msf. In un prossimo articolo entrerò nello specifico, mostrando come utilizzare il framework per un attacco reale.

Per chi fosse totalmente a digiuno o scritto un articolo introduttivo su cos’è un exploit e gli consiglio di leggerlo.

Innanzitutto con il comando show vengono mostrati tutti gli exploit disponibili. Prima di eseguire un exploit bisogna configurare alcuni parametri. Vediamo in dettaglio alcuni elementi fondamentali.

  • Exploit: E’ il codice d’attacco. Sappiamo che vogliamo attaccare un Windows vulnerabile ad un particolare bug
  • Target: Ovvero il tipo di sistema da attaccare. L’exploit deve essere adattato a diverse piattaforme. Una volta scelto l’exploit possiamo scegliere il tipo di target da una lista (per esempio 0:automtatic, 1: Windows 2000 English, 2: Windows Xp English)
  • Payload: Cosa fare se l’exploit riesce? Con la scelta di payload decidiamo cosa fare: se aggiungere un utente oppure se aprire una shell su una porta Tcp specifica. I payload a disposizione sono moltissimi e alcuni spettacolari, come il VNC che ci permette di controllare il computer remoto come se fossimo loggati in locale tramite il desktop!.
  • Encoders: Glii encoders sono diversi metodi di “cifratura” del payload per cercare di sfuggire agli IDS (Intrusiin Detection System).

Ora abbiamo preso confidenza con alcuni concetti di Metasploit. Nei prossimi articoli mostrerò l’uso pratico di Metasploit. Per poter sperimentare bene queste tecniche consiglio di procurarsi VMWare, Back|Track e installare un Windows da attaccare che funga da cavia.

L’attuale potenza di calcolo e l’esistenza di software straordinari ci danno oggi l’opportunità di poter sperimentare queste tecniche in un nostro laboratorio virtuale, senza dover danneggiare poveri ignari e senza mettersi nei guai.

4 comments to “Introduzione a Metasploit”
  1. Pingback: Hackerare Windows con Metasploit | PillolHacking.Net

  2. Pingback: Bug UPnP: 50 Milioni di Computer a Rischio Attacco | PillolHacking.Net

Comments are closed.