Aprire programmi e siti internet in tranquillità: il ruolo della Sandbox

Una settimana fa, nel giorno di Ferragosto, i siti “gazzetta.it” e “corriere.it” sono stati hackerati, o meglio in termini tecnici “defacciati” (dall’inglese “defacement”), e cioè al posto della loro home page è comparso il messaggio di un hacker su sfondo nero. Poi si scopriva che in realtà non erano i siti ad essere stati manomessi, ma a seguito di un attacco al DNS (Domain Name System, sinteticamente il sistema che permette al mio browser quando cerco “www.google.it” di sapere qual è il corrispondente indirizzo IP da raggiungere) gli utenti anziché visitare la pagina ufficiale della Gazzetta o del Corriere venivano reindirizzati e visitavano una pagina di un server collocato in Bulgaria preparata dall’hacker.

Come si presentava il sito Gazzetta.it
Come si presentava il sito della “Gazzetta.it”

Poco importa quale fosse il reale problema. La cosa certa è che appena saputa la notizia molti utenti sono corsi a visitare i siti in questione. E se i siti fake avessero contenuto un malware, come del resto creduto inizialmente poiché veniva avviato in automatico un filmato flash? Quanti dei visitatori sarebbero stati protetti contro questa evenienza?

Quanto accaduto mi dà lo spunto per illustrarvi un sistema di cui non si parla molto ma che risulta essere estremamente potente e utile ogni qualvolta si voglia eseguire un’applicazione sospetta/sconosciuta, visitare un sito web pericoloso o aprire un allegato di posta elettronica in tutta tranquillità, facendo in modo che gli effetti negativi che dovessero prodursi non danneggino il computer. Sto parlando della “Sandbox” che in ambito informatico identifica un ambiente “isolato” dal resto del sistema, adibito al test ed alle sperimentazioni. Qualsiasi cosa eseguita nella Sandbox non inciderà in alcun modo sul sistema principale “di produzione”.

Se la Sandbox risulta fondamentale in ambito sicurezza, è pur vero che originariamente tale strumento era progettato per le fasi di sviluppo, implementazione e sperimentazione di programmi, in modo da testarne il funzionamento senza “inquinare” un eventuale sistema già avviato e funzionante, e quindi prima di applicare le modifiche. Tale funzione delle Sandbox è ancora utilizzata, trovando sempre nuovi usi.

Ad esempio lo stesso PayPal offre un ambiente di test chiamato “PayPal Sandbox” che riproduce fedelmente l’elaborazione delle transazioni come avverrebbe sul sito ufficiale senza generare però pagamenti reali. Questo è utile per chi volesse integrare sul proprio sito le funzioni offerte da PayPal e testare tale integrazione prima di renderla disponibile agli utenti.

Gli sviluppatori del famoso videogioco multiplayer di massa invece, “World of Tanks”, al quale vengono aggiunte sempre più funzionalità, nel giugno del 2016 annunciano la creazione di un “Sandbox Server”. Grazie a questo ambiente di test i giocatori che si iscriveranno al progetto potranno aiutare gli sviluppatori a migliorare le caratteristiche dei Carri Armati. È chiaro quindi che una volta che il lavoro di test e collaborazione terminerà, gli sviluppatori potranno applicare all’ambiente di gioco reale le migliorie che insieme ai giocatori hanno già testato.

Ecco come si presenta la pagina di accesso al Sandbox Server di World of Tanks
Ecco come si presenta la pagina di accesso al Sandbox Server di World of Tanks

SANDBOX IN AMBITO SICUREZZA

Una Sandbox utilizzata per la sicurezza è rappresentata di norma da un software, installato sul computer di casa o sui computer aziendali, che permette di eseguire qualsiasi applicazione sospetta (quindi anche il browser per visitare siti di dubbia reputazione in Internet), all’interno di una sua area di memoria isolata che non comunica con l’area esterna. Questo fa sì che eventuali files dannosi prodotti /scaricati dall’applicazione (per esempio i malware) non intacchino il resto del sistema ma restino all’interno dell’area protetta.

Immagine tratta da http://cattechie.blogspot.it
Immagine tratta da http://cattechie.blogspot.it
Immagine tratta da http://www.sandboxie.com
Immagine tratta da http://www.sandboxie.com

 

 

 

 

 

 

 

 

Le immagini sopra rappresentano due modi per indicare lo stesso principio di funzionamento. Il programma eseguito senza Sandbox scriverà e leggerà sul disco, in vari settori, mentre quello avviato nella Sandbox leggerà e scriverà nello spazio della Sandbox la quale a sua volta verso l’esterno potrà leggere solamente.

Vari sono i software per poter utilizzare una Sandbox. Mi limiterò ad illustrane alcuni, senza entrare nel dettaglio di come utilizzarli (informazioni che si possono trovare sui siti dei rispettivi produttori), e vedremo inoltre come stiano nascendo tipologie di Sandbox diverse. Con il passare del tempo, man mano che nella comunità di Internet la sensibilità alla sicurezza degli utenti e delle aziende aumenta, nuove infatti sono le soluzioni per proteggersi.

E’ però chiaro a tutti ormai che la sola soluzione antivirus installata sulle macchine non basta. Infatti qualora questa, seppur aggiornatissima, si trovasse di fronte un malware “zero day” (cioè non ancora conosciuto), non sarebbe in grado di fronteggiarlo o bloccarlo. Pertanto l’unica possibilità per non essere danneggiati è far agire il malware in un’area confinata dove non creerebbe danni. Da questo punto di vista la Sandbox potrebbe essere quindi intesa come una macchina virtuale “semplificata” presente su ogni computer della rete.

SANDBOXIE

Sandboxie è un interessante software, giunto alla versione 5.12, distribuito gratuitamente. E’ in grado di eseguire qualsiasi applicazione presente sul computer in un’area di memoria isolata dal resto del Sistema Operativo. Esiste anche la versione a pagamento (che parte da 20 dollari circa per la versione “Home” e da 50 dollari circa per quella “Commercial”) che permette di rimuovere la finestra pubblicitaria che appare dopo 30 giorni di utilizzo, aprire più Sandbox contemporaneamente, ed eseguire automaticamente nella Sandbox programmi e cartelle.

Il filmato sul funzionamento di Sandboxie che si trova sulla home page oppure qui https://www.youtube.com/watch?v=aMtyGNviiRY

Nella foto in alto si vede il funzionamento di Sandboxie nel caso di apertura in una Sandbox di Internet Explorer il quale scarica ed esegue da un sito malevolo il famoso Cryptolocker. Se si guarda a destra si vedono i processi di sistema in esecuzione. Come si può vedere in basso la riga verde rappresenta uno dei processi attivati dal malware ma in esecuzione nel processo isolato della Sandbox. (per dettagli consiglio di guardare il video).

BUFFERZONE Endpoint Protection Software

Soluzione ora divenuta commerciale, più improntata alla sicurezza dell’azienda che a quella dei privati, offre una soluzione completa di contenimento per la protezione dell’intera rete. Con BufferZone i dipendenti possono navigare in modo sicuro in Internet ed aprire gli allegati in un ambiente virtuale, prelevare in modo sicuro i file di cui hanno bisogno da questo ambiente (contenitore) e condividerli con il resto dell’organizzazione. BufferZone tiene traccia delle attività dannose e permette di condividerle con strumenti di analisi aziendali (es. SIEM e Big Data Analytics) per identificare attacchi mirati. Funziona perfettamente con suite di protezione degli endpoint dei principali vendor, in modo da poter definire e gestire centralmente una politica di sicurezza completa per l’organizzazione.

AVAST SANDBOX e COMODO SANDBOX

Legate alle Suite di Sicurezza (quindi comprensive di Antivirus, Firewall, etc ..) sono quelle di Avast e Comodo. La Sandbox di Avast si trova in “Avast Internet Security” a pagamento, mentre quella di Comodo in “Comodo Internet Security” gratuito nella versione Premium e a pagamento nelle versioni Pro e Completa. Le versioni free e a pagamento di Comodo differiscono per una gamma di servizi aggiuntivi offerti nelle versioni a pagamento. Il funzionamento della Suite di Avast e quella di Comodo, in relazione alla SandBox è analogo ed il criterio di protezione è lo stesso illustrato in precedenza. All’interno cioè del processo e dello spazio isolato della Sandbox si troveranno il processo e i files del programma aperti in modo sicuro. E tutto resterà confinato in tale zona.

Schermata 2016-08-22 alle 09.18.40

Nella foto si vede sulla destra la maschera della Sandbox di Avast. Una volta aperta si decide quale programma eseguire in modo sicuro e nella stessa maschera si visualizza l’elenco dei processi aperti e gestiti dalla sandbox. Terminando il singolo processo o tutti, verrà eliminato anche tutto quello che è contenuto nella Sandbox. Tra le opzioni di Avast c’è la possibilità di definire dove far risiedere l’archivio sandbox, salvare o meno i file attendibili scaricati all’esterno della sandbox, il colore da attribuire alla maschera del programma virtualizzato (nella foto firefox ha il bordo rosso per distinguerlo da quello utilizzato senza la Sandbox).

SANDBOX dei browser moderni

I browser nel corso degli anni, da semplici visualizzatori di html sono diventati programmi sempre più complessi che devono interagire con svariati linguaggi, tecnologie di terze parti e plugin (Java, Silverlight, Flash, ..). La sicurezza di un browser non dipende più solo dalla sua sicurezza intrinseca, ma anche dai plugin installati. Una vulnerabilità in uno di essi (es. Flash) potrebbe compromettere l’intero sistema se il browser non fosse preparato a fronteggiare tale evenienza. Ecco quindi che i maggiori browser moderni, Google Chrome, Firefox, e anche Internet Explorer, se aggiornati, dispongono ormai di proprie Sandbox che sono per lo più nascoste agli occhi dell’utente.

Le Sandbox dei vari Browser sono gestite tecnicamente in modo differente (Firefox ha nativamente la sandbox solo per i plug-in ma esiste un componente aggiuntivo “Priv8” per gestirla come gli altri browser), ma portano tutte allo stesso risultato sulla macchina. Ogni tab del browser (o esecuzione dei plug-in) viene eseguito come singolo processo separato dagli altri e separato dall’intero programma. Questo significa che quanto accade in un tab non influisce con quanto accade negli altri o nel sistema, ed un crash avvenuto in uno di essi non farà crashare l’intero browser.

Si vedono i vari processi di Chrome creati dall’apertura di Tab diversi durante la navigazione
Si vedono i vari processi di Chrome creati dall’apertura di Tab diversi durante la navigazione

Ad oggi Google Chrome vince su tutti gli altri Browser in fatto di sicurezza e capillarità di utilizzo.

Proprio la sempre maggiore complessità che devono raggiungere i browser per restare al passo con la concorrenza, li rende però anche potenzialmente più soggetti a vulnerabilità. Non è un caso infatti che lo scorso luglio Google abbia dovuto “fixare”48 Bugs, tra cui uno grave proprio relativo alla sua Sandbox. Firefox invece ha visto correggere i Bugs ad alcuni Plug-in gestiti dalla Sandbox (es Javascript, Gecko Media, iFrame) nel 2014 e 2015. E Internet Explorer e Microsoft Edge (su Windows 10) non fanno eccezione (avevate dei dubbi?). Tra le tante vulnerabilità in casa Microsoft la CVE-2015-0016, e la CVE-2015-6047 definite proprio “Escaping the Internet Explorer Sandbox”.

Per quanto sopra esposto diventa chiaro che la soluzione Sandbox integrata nei browser non può essere ritenuta sufficiente come unica protezione oltre l’antivirus. Anche perché in ogni caso tale Sandbox coprirebbe solo l’attività di Internet e non la verifica ad esempio di un file eseguibile scaricato dal web che potrebbe essere “testato” solo avviandolo in una Sandbox classica.

Un browser aperto in una Sandbox classica allora darebbe un’adeguata protezione, abbinando gli strumenti Sandbox del browser e quelli della Sandbox che lo contiene.

QUBES OS

Come accennato in precedenza, con il passare del tempo nascono nuove soluzioni di sicurezza che rivoluzionano quanto conosciuto fino a quel momento. Qubes OS, lo dice il nome stesso, non è un programma e non è una Sandbox. Si tratta piuttosto di un vero e proprio Sistema Operativo orientato alla sicurezza. Motherboard nell’ottobre del 2015 scrisse: “Finalmente un sistema operativo ragionevolmente sicuro”, e The Economist nel 2014: “Qubes è più sicuro di qualsiasi altro sistema operativo disponibile oggi.”

Qubes si fonda sulla “compartimentazione” delle attività e dei processi, una “Sicurezza per Isolamento”. Gli utenti possono creare tante macchine virtuali per gestire le varie attività, creando così dei compartimenti stagni. Ad esempio potrebbero creare il browser per le attività di lavoro, quello per le attività di svago, quello per le attività di test. E lo stesso possono fare per il programma di videoscrittura, quello per la gestione della posta, e via discorrendo. Così se nel browser dello svago scaricassero un virus, questo non intaccherebbe l’intera macchina o l’area destinata al lavoro, ma solo quella che gestisce l’area dello svago. Chiudendo tale macchina virtuale il problema sparisce.

Tra gli aspetti di complessità c’è da dire che Qubes si basa su Linux ed è meno “user friendly”, pertanto, non molto adatto a tutti. Anche la configurazione del sistema per i flussi di lavoro specifici richiede un minimo di dimestichezza con tale S.O. Infine Qubes non supporta ad oggi tutto l’hardware presente in circolazione.

Un interessante Tutorial del funzionamento di Qubes si trova in questo Video Tour.

Schermata 2016-08-22 alle 09.22.52

Nella foto si vede un desktop di Qubes. Caratteristico è il menù in alto a sinistra dove si possono vedere i compartimenti diversi, con colori diversi (le macchine virtuali). Si vede quello “personale” con all’interno il browser Firefox, il gestore dei files, il programma di posta Thunderbird ed il programma LibreOffice. Il compartimento “banking” potrebbe contenere le stesse applicazioni ma totalmente slegate da quelle degli altri comparti. Gestendo la delicata attività di home banking in questo comparto, si può essere tranquilli che anche in presenza di malware in un altro, lo stesso non sarà intaccato, anzi, appena ci si accorge che un comparto è infetto o danneggiato, non si fa altro che eliminarlo e ricrearlo, senza che questo alteri l’intero sistema.

E allora come fare?

Al giorno d’oggi con la nascita ed il largo uso delle macchine virtuali, tra l’altro disponibili gratuitamente e semplicissime da utilizzare, oppure di soluzioni complesse come Qubes OS, si preferisce demandare a queste i compiti di test di software e siti potenzialmente dannosi e sospetti anziché alle Sandbox.

Anche se ciò è vero, le Sandbox rimangono un’interessante e più semplice soluzione per l’utente comune che non ha molta dimestichezza con le macchine virtuali e ha capito che la sola soluzione antivirus non basta. Sono inoltre molto interessanti per le aziende che, potendo disporre di soluzioni centralizzate ed automatiche, non possono permettersi il lusso di vedersi criptare o rubare i dati per l’imprudenza di un dipendente.

Come per ogni strumento, sarà comunque compito di ogni singola realtà aziendale, o personale, capire fino a dove spingersi e di quali tecnologie dotarsi per tenere adeguato il livello di Sicurezza. Ricordando che una sola tecnologia potrebbe non essere più sufficiente.

Non dimentichiamoci infine che anche le Sandbox sono comunque costituite da software, e come tali soggette a vulnerabilità. Quindi anche questo software dovrà essere aggiornato e mantenuto sempre all’ultima versione. Un software di sicurezza non aggiornato potrebbe creare i problemi che normalmente dovrebbe invece combattere.

Facebook Comments

LEAVE A REPLY

Please enter your comment!
Please enter your name here