Nelle pagine de IlSoftware.it abbiamo presentato numerosi servizi per la scansione antivirus ed antimalware che utilizzano simultaneamente più motori antimalware. Uno tra i più famosi è senza dubbio VirusTotal (ved. questi articoli) che provvede ad analizzare il file sottoposto ad esame, attualmente, con un totale di 42 motori antivirus differenti.
Abbiamo poi illustrato servizi di sandboxing online come ThreatExpert (ved., in proposito, questi articoli). Il funzionamento di questi servizi è diverso perché permette di eseguire i file caricati online all’interno di una macchina virtuale gestita da un server remoto.
Mentre meccanismi come VirusTotal danno modo di verificare se nel file trasmesso siano presenti minacce note ad uno o più produttori di software antivirus ed antimalware, servizi come ThreatExpert consentono di stabilire quali operazioni compie un qualunque file una volta eseguito. Analizzando il resoconto finale prodotto da ThreatExpert, si può capire se il file oggetto di analisi possa considerarsi o meno potenzialmente pericoloso.
I servizi di sandboxing online, ovviamente, non eseguono nulla sul sistema dell’utente ma avviando l’applicazione caricata sul sistema all’interno di una macchina virtuale remota, in un ambiente di testing del tutto sicuro. “Ingabbiata” all’interno della “virtual machine”, l’applicazione sarà eseguita e tutte le modifiche apportate al sistema di test verranno registrate in un file di testo oppure in formato html. Al termine dell’operazione di analisi del comportamento dell’applicazione inviata dall’utente, la macchina virtuale remota viene eliminata ripristinando una copia “pulita” della stessa oppure riportata ad uno stato precedente all’installazione del file esaminato.
JoeBox è un sistema di sandboxing online, molto simile a ThreatExpert che però ad oggi risulta essere ancora poco noto. Quest’ultimo fatto può rivelarsi utile per l’utente. Alcuni malware, infatti, utilizzano alcune tecniche per verificare se la loro esecuzione è avvenuta all’interno di una macchina virtuale. In questi casi, il malware non effettua alcuna operazione nociva cercando così di non essere scoperto e di far ritenere all’utente che il file sia esente da pericoli. JoeBox, essendo un’applicazione web di sandboxing ancora poco conosciuta, in alcuni frangenti può rivelarsi più abile nell’individuazione delle modifiche operate al sistema da parte di un qualunque file.
Tra le caratteristiche più interessanti di JoeBox (accessibile da questa pagina) va ricordata la possibilità di scegliere in che tipo di macchina virtuale si desidera eseguire il file sottoposto ad esame. Attraverso l’interfaccia web di JoeBox si può infatti optare tra Windows XP SP3 (impostazione predefinita), Windows Vista o Windows 7. Una scelta non esclude l’altra: è quindi possibile verificare contemporaneamente il comportamento di un eseguibile in diversi contesti.
Attivando la casella Get network data (PCAP), si può addirittura richiedere a JoeBox di monitorare il traffico di rete successivamente all’esecuzione dell’applicazione (da indicare premendo il tasto Sfoglia in corrispondenza della casella File to submit) e di salvarlo in un file che potrà poi essere aperto ed esaminato con un software di “packet sniffing” come WireShark.
Il servizio JoeBox consente il caricamento di file che non superino la dimensione massima di 5 MB e non accetta file con nomi superiori ai 50 caratteri. Purtuttavia, vengono supportati tutti i tipi di file binari. Non solo, quindi, file eseguibili ma anche librerie DLL, file SYS, documenti DOC, XLS, PPT, PDF e così via. Inoltre va sottolineato come il servizio prenda in carico anche file sprovvisti di estensione. Se si ha paura di eseguire un file potenzialmente dannoso sul proprio sistema, è possibile privarlo dell’estensione e trasmetterlo a JoeBox che ne identificherà autonomamente la tipologia sulla base dello specifico contenuto.
Ci si accerti, comunque, di non inviare a JoeBox archivi compressi come ZIP, RAR, 7Z e così via.
Nel campo E-mail deve essere necessariamente indicato un indirizzo di posta elettronica valido dal momento che JoeBox invierà il resoconto dell’analisi via e-mail.
Ricorrendo alla casella Script to submit, è possibile eventualmente inviare anche un file di scripting in formato .JBS (“JoeBox Script“). Si tratta di script preparati secondo la sintassi “AutoIt” (ved. il sito web ufficiale del progetto). Si chiama “AutoIt” un linguaggio di scripting, abbastanza noto, che consente di automatizzare l’effettuazione di alcune operazioni. La sintassi di “AutoIt” è simile a quella del Basic e consente la gestione e la memorizzazione di diversi tipi di dati, array compresi. Uno script “AutoIt” può essere anche compilato come eseguibile in modo da consentirne il funzionamento anche sui sistemi ove non è installato il linguaggio di scripting vero e proprio.
L’invio di uno script .JBS, in aggiunta ad un file binario, è opzionale. Tuttavia, gli utenti più smaliziati potranno, grazie all’impiego dello script, simulare l’interazione con il sistema virtuale, modificare il contesto di esecuzione del file e controllare completamente il comportamento di JoeBox. Grazie agli script .JBS si può, ad esempio, avviare il meccanismo di “sniffing” dei pacchetti dati o delle chiamate di sistema, richiedere l’analisi di processi e driver esistenti, riavviare il sistema o ripristinarlo allo stato predefinito. Una lista dei comandi utilizzabili, è reperibile a questo indirizzo.
Una volta cliccato sul pulsante Analyse, JoeBox impiegherà diversi minuti per potare a compimento l’attività di analisi del file inviato quindi trasmetterà via e-mail, all’indirizzo specificato, i risultati dell’operazione.
L’e-mail può presentarsi con uno o due allegati a seconda se si sia scelto o meno di ottenere anche il file contenente il traffico di rete in formato .PCAP. Nel file compresso analysis.zip
è invece contenuto il resoconto vero (result.html
).
Dopo aver aperto il file result.html
servendosi del browser web, si noterà – sotto le informazioni introduttive – un’area denominata Sections.
Qui JoeBox ha annotato tutte le modifiche che l’applicazione sottoposta ad analisi ha effettuati sul sistema di test (macchina virtuale remota). Analizzando le varie sottosezioni, si possono stabilire quali file sono stati aperti, creati, sovrascritti, cancellati, rinominati; le operazioni compiute sulle chiavi del registro di Windows, sui processi, sulla memoria e così via.
In Chronological sections si può avere l’elenco cronologico delle attività condotte dal programma mentre nelle sezioni sottostanti (TCP, UDP, ICMP, DNS, HTTP) si possono stabilire le operazioni compiute in Rete.
JoeBox è sicuramente uno strumento appannaggio degli utenti più evoluti che però si rivela davvero di grande aiuto nello stabilire quali operazioni ha posto in essere un file considerato come sospetto. L’analisi di JoeBox può essere sfruttata, quindi, sia a scopo preventivo (per accertarsi del comportamento tenuto da un software prima di avviarlo), sia come strumento per rilevare tutte le modifiche apportate ad un sistema già infetto (sottoponendo all’esame di JoeBox un “rogue antivirus“, ad esempio, si potrà ottenere un resoconto di tutte le modifiche apportate al sistema ed utilizzare queste informazioni per eliminare il malware dai sistemi compromessi).
Maggiori dettagli sul funzionamento delle “sandbox” sono reperibili in questi articoli.