Sandbox, cos'è e come funziona quella di Windows 10

Guida al funzionamento di Windows Sandbox, una nuova funzionalità introdotta con Windows 10 Aggiornamento di maggio 2019 che consente di provare programmi e fare test in un ambiente completamente isolato dal resto del sistema.

Con il rilascio di Windows 10 Aggiornamento di maggio 2019 (versione 1903) è stata portata al debutto una nuova funzione, integrata direttamente nel sistema operativo Microsoft: Windows Sandbox.

Figlia di alcune sperimentazioni che Microsoft aveva già svolto nel recente passato, Windows Sandbox, una volta attivata, permette di eseguire qualunque applicazione in un ambiente isolato dal resto del sistema operativo.
Windows Sandbox fa in modo che tutte le modifiche applicate sul sistema operativo non abbiano alcun effetto sullo stesso una volta chiusa l’applicazione.

I vantaggi sono enormi: con Windows 10 Pro, Enterprise o Education (la funzionalità non viene offerta agli utenti di Windows 10 Home), è possibile richiedere l’esecuzione di qualunque programma in un ambiente a sé stante (non soltanto il browser Edge come era possibile fare soltanto fino a qualche tempo fa).

Come attivare Windows Sandbox in Windows 10

Per abilitare e utilizzare Windows Sandbox è innanzi tutto importante controllare che il supporto per la virtualizzazione lato BIOS/UEFI sia attivo.
Per verificarlo basta premere la combinazione di tasti CTRL+MAIUSC+ESC per accedere al Task Manager, cliccare eventualmente su Più dettagli, portarsi nella scheda Prestazioni e accertarsi che, in basso a destra, sia riportato Abilitato accanto alla voce Virtualizzazione.

Per maggiori informazioni, suggeriamo la lettura dell’articolo Come attivare la virtualizzazione in Windows.

A questo punto sarà sufficiente premere la combinazione di tasti Windows+R quindi digitare optionalfeatures, spuntare la casella Sandbox di Windows e premere il pulsante OK.

Digitando Windows Sandbox nella casella di ricerca di Windows 10, si vedrà apparire una nuova finestra contenente una sorta di replica del desktop del sistema operativo, con tanto di icone e barra delle applicazioni.

La sandbox sarà generata appoggiandosi ai file della versione di Windows in uso: la versione utilizzata sarà quindi corrispondente a quella del sistema operativo installato sulla macchina. Di fatto la sandbox apparirà come un’installazione pulita di Windows 10 pienamente svincolata da quella principale.

Chiudendo la finestra della sandbox di Windows tutte le modifiche apportate all’interno di essa e tutte le prove fatte verranno immediatamente e definitivamente perdute.

Per configurare il funzionamento della sandbox e impostare le proprie preferenze, Microsoft spiega che è possibile utilizzare un file XML opportunamente strutturato (vedere questa pagina di supporto).

Creando un file XML contenente quanto segue (usare, allo scopo, un programma come Notepad++), si farà in modo che dalla sandbox nessuna applicazione né componenti del sistema operativo possano accedere alla rete Internet:

<Configuration>
<Networking>Disable</Networking>
</Configuration>

Usando una configurazione del genere si può offrire alla sandbox l’accesso in sola lettura al contenuto di una cartella presente a livello di file system, sul sistema principale:

<Configuration>
<MappedFolders>
<MappedFolder>
<HostFolder>D:\Download</HostFolder>
<ReadOnly>true</ReadOnly>
</MappedFolder>
</MappedFolders>
</Configuration>

Il file XML dovrà essere salvato in qualunque locazione di memoria, ad esempio sul desktop. Nella casella Nome file di Notepad++ si dovrà indicare "Sandbox.wsb", virgolette comprese.

Con un doppio clic sul file Sandbox.wsb, la sandbox di Windows verrà avviata con le preferenze impostate a livello di file XML.

Le sandbox potranno così essere sfruttate per eseguire in modo sicuro, da un ambiente virtuale, qualunque software sul quale si nutrono dubbi oppure programmi sui quali si desiderano effettuare test e analisi approfondite.

L’immagine è tratta da questo post di Hari Pulapaka (Microsoft).

Quando usare Windows Sandbox

Sono tanti i possibili campi applicativi di uno strumento come Windows Sandbox. È possibile utilizzarlo, ad esempio, per:

1) Avviare un’applicazione sulla quale si nutrono dubbi senza che essa possa in alcun modo danneggiare il sistema principale. Da Windows Sandbox si potrà monitorare il funzionamento del programma, sottoporlo a una scansione approfondita, verificare le modifiche che applica sul sistema e decidere soltanto alla fine se installarlo in Windows 10.

2) Usare Windows Sandbox come ambiente di test così da poter fare tutte le prove possibili senza danneggiare l’installazione principale del sistema operativo.

3) Controllare il comportamento di un allegato di un messaggio di posta elettronica sul quale si nutrono dei dubbi.

In tutte tre le situazioni, basterà chiudere Windows Sandbox per sbarazzarsi di tutti gli elementi senza che questi abbiano potuto effettuare la benché minima modifica sul sistema principale. Fondamentale, però, è mantenere sempre aggiornato Windows 10 con l’installazione delle patch rilasciate ogni mese da Microsoft: un eventuale malware, infatti, potrebbe usare tecniche di sandbox escaping per eseguire codice potenzialmente dannoso al di fuori del perimetro di Windows Sandbox sfruttando una vulnerabilità non risolta mediante l’applicazione delle patch Microsoft.

Automatizzare la creazione dei file di configurazione di Windows Sandbox

Per il momento Microsoft non ha ancora rilasciato uno strumento ufficiale per la creazione dei file di configurazione di Windows Sandbox, utili per creare nuove macchine virtuali.

Ci ha pensato uno sviluppatore indipendente, Damien Van Robaeys, presentando la sua utilità gratuita Windows Sandbox Editor.

Nella cartella EXE di Windows Sandbox Editor si troveranno due file eseguibili (“v1” e “v2”): essi differiscono soltanto per la struttura dell’interfaccia ma le funzionalità del programma sono esattamente le stesse.

La sezione Basic infos consente di assegnare un nome alla sandbox, di indicare il percorso della sandbox, di specificare lo stato della rete (collegata o contenuto della sandbox completamente separato anche sul versante networking), di attivare la GPU virtuale (migliori prestazioni).
Cliccando su Mapped folders si possono condividere una o più cartelle tra il sistema host e la sandbox mentre con un clic su Command si può richiedere l’eventuale esecuzione automatica di alcuni comandi al caricamento del sistema operativo.

La sezione Overview mostra la struttura del file .wsb sulla base delle preferenze selezionate.
Nel caso in cui si specificasse una cartella scorretta come destinazione per la creazione del file di configurazione di Windows Sandbox, l’editor salverà il file .wsb nella cartella %userprofile% (premere la combinazione di tasti Windows+R quindi digitare %userprofile%).

Sempre Van Robaeys ha pubblicato un utile script PowerShell che permette di aggiungere al menu contestuale la voce Run in the sandbox.
In questo modo sarà possibile richiedere a Windows 10 di eseguire istantaneamente qualunque file entro il perimetro della sandbox anziché sul sistema principale.

Compatibilità, interoperabilità e soluzioni alternative

Durante le nostre prove la funzionalità Windows Sandbox si è comportata egregiamente permettendo di eseguire programmi velocemente.
L’unico problema di Windows Sandbox è che non va d’accordo con le soluzioni per la virtualizzazione di terze parti (essendo basata su Microsoft Hyper-V): provando ad avviare Virtualbox o VMware, le macchine virtuali non verranno caricate. Di contro il sistema è molto leggero e in memoria occupa appena 60 MB una volta in esecuzione.

Nel caso in cui si volesse disattivare Windows Sandbox e tornare a utilizzare Virtualbox o altri software per la virtualizzazione, dopo aver riavviato il PC bisognerà premere la combinazione di tasti ALT+F4 e scegliere Riavvia il sistema altrimenti il caricamento delle macchine virtuali presenterà un errore.
In alternativa, si può aggiungere una nuova voce nel menu di avvio di Windows 10 in modo da scegliere se avviare il sistema operativo normalmente (si potrà usare Windows Sandbox) oppure se disattivare temporaneamente Hyper-V, in modo da usare altri software per la virtualizzazione come Virtualbox, VMware e simili. La procedura da seguire è illustrata nel nostro articolo Come far convivere Docker e Virtualbox con Windows 10. Al posto di “Docker” si può usare il termine “Windows Sandbox” dal momento che i suggerimenti illustrati si applicano anche alla soluzione di sandboxing Microsoft.

Come alternativa rispetto a Windows Sandbox possono essere utilizzate virtual machine Virtualbox: le cosiddette istantanee permettono di memorizzare lo stato del sistema virtuale e ripristinarlo in caso di necessità (ad esempio per annullare precedenti modifiche e recuperare istantaneamente la macchina virtuale in caso di problemi e instabilità): Virtualbox: come utilizzare le istantanee per creare un ambiente di test.
Dal punto di vista della scheda di rete virtuale, è possibile isolare la macchina virtuale Virtualbox in modo che non possa neppure comunicare con l’host.

Microsoft sta attualmente lavorando anche su Application Guard per Office (Application Guard per Office: cos’è e come funziona. I documenti in una sandbox), un nuovo meccanismo che aiuta a proteggersi nei confronti delle minacce inserite nei documenti Word, Excel e PowerPoint malevoli.

Ti consigliamo anche

Link copiato negli appunti