Annuncio pubblicitario

cos'è una sandboxDai un'occhiata alle applicazioni che usi di più sul tuo computer. Molto probabilmente, un buon numero di essi offre funzionalità altamente connettive, in particolare il tuo browser web. Questi programmi altamente connettivi possono fare molto, ma sono anche un invito aperto a colpire gli hacker malvagi.

Per evitare che gli scioperi abbiano successo, uno sviluppatore dovrebbe individuare e chiudere ogni singolo buco nel loro codice, il che semplicemente non è possibile. Invece, gli sviluppatori devono prendere in considerazione questo fatto e pianificare il proprio codice tenendo presente questo aspetto. La soluzione più comune ed efficace: una sandbox.

Sand In A Box?

cos'è una sandbox
No, non sono il sandbox del parco locale che preferisco, ma i sandbox del software. Questi sandbox hanno uno scopo chiave: prevenire la diffusione di un attacco. Come accennato in precedenza, gli sviluppatori intelligenti sanno che il codice non è perfetto e che il loro prodotto verrà eventualmente violato o penetrato in altro modo. Per proteggere l'utente, implementano un sandbox che isola parti del loro programma. In sostanza, tutto ciò che accade in una sandbox, rimane in quella sandbox.

instagram viewer

Sandbox In azione

cos'è un'applicazione sandbox
Per spiegare sandbox in azione, userò Google Chrome come esempio principale. Chrome è uno dei prodotti più noti per l'implementazione del sandboxing, che Google afferma con orgoglio come una funzionalità di sicurezza unica tra i browser. Google ha preso Chrome e sostanzialmente lo ha suddiviso in tre diverse categorie: il processo principale che si lega tutto insieme, i processi a schede che contengono le pagine e includono il renderer e il processo del plug-in (es). Tutte queste categorie hanno livelli di autorizzazione diversi in modo che possano essere eseguiti, ma tali autorizzazioni sono il minimo indispensabile in modo che tutte siano piuttosto limitate. Inoltre, i diversi processi non possono davvero parlarsi, ma coesistono. Ad esempio, sebbene il contenuto Flash del plug-in Flash possa essere presente in una pagina, i processi sono ancora separati e non parlano tra loro. Il renderer lascia solo uno spazio sulla pagina per quel processo da visualizzare. Questa incapacità di comunicare è importante perché se una scheda si arresta in modo anomalo o viene dirottata, non può influire sulle altre schede né sul sistema stesso.

Firefox ha troppo, una specie di

cos'è un'applicazione sandbox
Firefox ha anche una funzione sandboxing, sebbene limitata, che la separa da plugin di terze parti come Flash. Mentre il browser e tutte le sue schede sono combinati in un unico processo, esiste un processo separato per tutti i plugin. Nell'approccio di Firefox, ripone più fiducia nel proprio codice rispetto a Google con Chrome e attribuisce la colpa di eventuali problemi di navigazione ai plugin. Pertanto, se i plug-in si bloccano in qualsiasi modo, il browser e le schede non sono interessati.

Pensare fuori dagli schemi

cos'è una sandbox
Mentre è una buona strategia avere tecniche di sandbox implementate nel codice di un programma stesso, ci sono molti altri programmi che non hanno alcun sandbox. Invece, ti consigliamo di eseguire un sandbox virtuale in cui è possibile eseguire programmi che possono solo causare il caos più grande che possono all'interno del sandbox, lasciando intatto il tuo sistema. Anche se questo è spesso pensato per testare software, è anche una buona scelta eseguire un browser web o qualsiasi altro software se sei piuttosto paranoico (o inserisci qui la tua altra parola preferita). Una scelta molto popolare per questo è Sandboxie Come isolare e testare applicazioni non sicure sul PC Leggi di più , ma ci sono altri prodotti, sia gratuiti che a pagamento, che possono ottenere lo stesso.

Conclusione

Il sandboxing è attualmente uno degli argomenti più importanti in termini di sicurezza e sta sicuramente facendo abbastanza bene il lavoro. Ovviamente, gli sviluppatori dovrebbero sempre concentrarsi sul rendere il loro codice il più buono possibile, ma sicuramente non aiuta ad avere alcuni piani d'azione per quando si verifica un problema. Tieni presente che i sandbox non sono ancora perfetti, poiché il sandbox di Chrome è stato sconfitto in Pwn2Own 2012 dopo alcuni hack estremamente difficili, ma sono sicuramente una scelta molto migliore di niente.

Qual è la tua opinione sulle applicazioni sandboxing? Quali miglioramenti vorresti vedere nei browser Web sandboxing o quali applicazioni ritieni necessitino di sandboxing? Fateci sapere nei commenti!

Crediti immagine: Katie Gregory, Ernst Vikne

Danny è senior presso la University of North Texas e gode di tutti gli aspetti del software open source e di Linux.