Home | Chi sono | Contattami
 

Progr. lineare

Delphi
  Componenti
 
Database
 
Miei articoli

Windows

Miei articoli



 

Sandbox, etc...
 

1 Novembre 2007 

Sull'onda del precedente post in cui parlavo di virus, di servizi di analisi antivirus online, della Norman Sandbox, etc... butto giù altre cose. In questo post mi concentrerò principalmente sulle Sandbox ossia su quei sistemi che consentono di eseguire un programma ed ingabbiare tutto l'albero dei processi da esso generato catturando le varie operazioni dei medesimi. Soprattutto andremo a vedere altri servizi online che restituiscono report sulcomportamento di un eseguibile; analizzeremo in pratica tutti quei servizi online analoghi alla già citata Norman Sandbox.

Anubis: Analyzing Unknown Binaries

Link: http://analysis.seclab.tuwien.ac.at/index.php

Questa Sandbox Online (progetto della Technical University of Vienna) è veramente formidabile: il livello di analisi che effettua sull'eseguibile che gli viene inviato è il più elevato tra tutti i prodotti di questo tipo; è interessante sottolineare che Anubis utilizza i seguenti prodotti:

1) QEmu : virtualizzatore di sistemi operativi (prodotto dello stesso tipo di VMWare tanto per intenderci); il team di Anubis ha realizzato una versione personlizzata di QEmu (ricordiamo che QEmu è Open Source) per meglio catturare le operazioni del programma da anlizzare

2) PEiD : famoso programma che ha come obiettivo principale quello di identificare il compilatore con cui è stato creato un eseguibile, il packer con cui è stato eventualmente compresso, il crypter con cui è stato eventualmente criptato; è freeware ma non Open Source.

3) BRO : software freeware di monitoraggio del traffico di rete orientato principalmente al rilevamento di attività sospette: esegue il parsing dei pacchetti di rete e confronta i dati con i pattern nel proprio database che corrispondono a potenziali attività malevole.

4) Sigbuster: tool multipiattaforma per identificare il fatto che un eseguibile è stato compresso; non l'ho trovato da nessuna parte però sono molto interessanti il blog dell'autore ed anche il suo forum

Per quanto riguarda l'utilizzo, è analogo a quelle di tutti gli altri servizi dello stesso tipo: una pagina web contenente una maschera di upload in cui selezioni l'eseguibile locale che vuoi inviare per l'analisi e un tuo indirizzo email; in men che non si dica ti arriverà via email un messaggio contenete un link al quale vi è il report dettagliatissimo del comportamento dell'eseguibile. E' anche possibile non stare a specificare alcun email ed in tal caso si rimarrà in attesa della visualizzazione della pagina col report. Personalmente preferisco l'utilizzo dell'email. Come test ho usato il virus già descritto al post precedente sia nella sua versione orginale sia nella versione criptata col mio semplice exe crypter.

Report Virus Originale

Report Virus Critpato

Come si può vedere, il report restituito da Anubis è molto ma mooolto dettagliato. Nel sito di Anubis c'è anche una sezione in cui viene fatto un confronto tra il prodotto ed altri 2 prodotti analoghi (la già citata e sperimentata Norman Sandbox e CWSandbox) e viene evidenziato come Anubis sia lo strumento che esegue l'analisi più completa (chiaramente bisogna provare sempre tutte le soluzioni, un report comparativo spesso fa riferimento solo a determinati elementi venendo meno in completezza, e poi non sempre è facile stabilire la superiorità globale di una soluzione su un'altra) 

http://analysis.seclab.tuwien.ac.at/features.php

 

CWSandbox

Link: http://www.cwsandbox.org/

Si tratta di un progetto della University of Mannheim; nella sua main page, viene sottolineato il fatto che il profiling dell'eseguibile durante la sua esecuzione (quindi tutto ciò che fa lui e l'eventuale albero di processo che ad esso fa capo) viene realizzato tramite api hooking (del resto è la cosa più immediata da pensare): viene caricato il processo mappandogli nello spazio di memoria una dll che implementa api hooking sulle api win32 responsabili della gestione del file system, del registro e di quant'altro. I dettagli tecnici (poca roba) sono all'indirizzo

http://www.cwsandbox.org/?page=techdetail

Anche in questo caso, il submit consiste in una semplicissima form di invio che richiede di selezionare l'eseguibile locale e specificare un indirizzo email al quale verrà mandato il report

 

ThreatExpert

Link: http://www.threatexpert.com

Altro servizio Online di profiling di un eseguibile; fornisce parecchi servizi

1) Submit : inviare il nostro .exe e ricevere un resoconto dettagliato del suo comportamento fornisce anche la possibiltà di inviare il nostro  .exe afficheè venga scansionato per essere identificato o meno come elemento malevolo; il report viene inviato via email sotto forma di allegato: l'allegato è un file .zip con password, la password è scritta nel messaggio. Il contenuto del .zip è un file .mhtml (apribile con Internet Explorer) che contiene il report dell'analisi. L' analisi non è molto dettagliata (lontana da Anubis) ma è superiore a quella fornita dalla Norman Sandbox

2) File Scanner : consente di inviare il nostro .exe e farlo poi scansionare per verificare se corrisponde ad un virus (o a qualsiasi altro elemento malevolo conosciuto)

3) Side-Effect Scanner : consente di inviare il nome di un file con percorso completo oppure il nome di una chiave di registro sempre con percorso completo, o un Url o un ClassId (GUID enumerati come sottochiave della chiave di registro HKey_Classes_Root\Software\Classes) e far verificare se fa parte di un virus.  

4) Contiene un database con tutto il malware conosciuto raggruppato per iniziale del nome e per categoria e con la possibilità di fare ricerche, disponendo anche di una mappa mondiale per indicare l'origine geografica del malware

I vari servizi sono facilmente accessibili tramite il seplice ed intuitivo menù.

 

JoeBox

Link: http://www.joebox.org 

Questo è il progetto di un singolo, uno dei tanti programmatori appassionati che condividono con il pubblico del web le loro creazioni; all'indirizzo http://www.joebox.org/articles.php l'autore fa una bella analisi dei sistemi sandbox prendendo in esame oltre alla sua soluzione anche le 2 precedenti (ossia Anubi e CWSandbox) e confrontandole tra loro: da leggere assolutamente! (come del resto anche le altre pagine del sito. Non viene fornito alcun servizio o software da scaricare: l'autore parla della sua Sandbox (senza entrare mai nei dettagli) e nel suo forum ci sono discussioni interessanti come ad esempio i sorgenti delle proceddure realizzate dall'autore per identificare se il sistema operativo in cui è in esecuzione l'eseguibile corrente, è emulato in VMWare, in Virtual PC, in Virtual Box o QEmu. Più in generale, nel forum l'autore approfondisce il concetto di SandBox Detection; in pratica i servizi di Sandbox di cui stiamo parlando consentono di definire nel dettaglio il comportamento di un .exe. Se però si riesce a trovare il modo di identificare che il nostro exe sta girando in una Sandbox, allora si potrebbe realizzare una procedura da chiamare all'avvio del programma che, in caso di rilevamento di esecuzione in Sandbox, termina immediatamente il programma stesso. In questo caso il report della Sandbox consisterà in nulla non dandoci quindi informazioni sul comportamento del programma. Una volta eseguito normalmente (non in una Sandbox) il programma invece funzionerebbe e farebbe il suo sporco lavoro. Un'altra cosa potrebbe essere quella di eliminare gli hook imposti dalla Sandbox; tutti questi concetti vengono esaminati con esempi di codice nel forum 

 

Vabè, per il momento chiudiamo ma tornerò a parlare presto di queste cose con altri prodotti ed altri concetti anessi e connessi

update 30 Agosto 2008

notevoli updates sulla JoeBox con l'introduzione di un vero e proprio servizio di submit di exe e relativo profiling proprio come gli altri servizi; vari dettagli tecnici aggiunti. Da seguire!


 


 
 
Your Ad Here