Oggi, i PC (laptop, desktop, ecc.) generalmente funzionano con quello che chiamerò il modello di sicurezza "open PC". Gli utenti hanno accesso completo a livello di amministratore di sistema / sviluppatore al proprio computer. Gli utenti possono installare software arbitrario di loro scelta sul proprio PC. Quel software può fare qualsiasi cosa, o almeno tutto ciò che l'utente può fare. Le applicazioni software non sono in modalità sandbox; possono accedere liberamente a tutti i dati dell'utente e interagire o manomettere tutte le altre applicazioni (*). Essenzialmente, ogni utente è Dio sulla propria macchina e può concedere lo status di Dio a qualsiasi applicazione software scelga di installare.
È possibile visualizzare il malware come una conseguenza del modello di sicurezza "open PC". Se un utente ha la possibilità di installare un software di sua scelta e se quel software ottiene pieno accesso al proprio PC, tutto ciò che un utente malintenzionato deve fare è persuadere l'utente a installare un software dannoso e l'utente è brindato. Allo stesso modo, se le applicazioni non sono in modalità sandbox, tutto ciò che un utente malintenzionato deve fare è compromettere una delle applicazioni dell'utente e quindi l'utente è brusco (l'utente malintenzionato accede a tutti i dati dell'utente e può compromettere tutte le applicazioni dell'utente) .
Attualmente, il modello di sicurezza "open PC" è profondamente integrato nel modo in cui funzionano i PC e il modo in cui funzionano i sistemi operativi per PC.
Quali altre alternative al modello "open PC" ci sono? Se l'industria volesse allontanarsi dal modello "open PC" nei prossimi 5-10 anni, quali sono alcuni possibili paradigmi alternativi che potrebbero valere la pena considerare? Quali sono i loro vantaggi e svantaggi?
Ad esempio, un paradigma in competizione è il modello di sicurezza "app". Nel modello di sicurezza "app", gli utenti in genere non hanno accesso completo a Syadmin / Sviluppatore a livello della propria macchina (a meno che non adottino un passaggio speciale, che la maggior parte degli utenti non accetta). Gli utenti possono installare app, ma per la maggior parte degli utenti, la selezione di app è limitata ad alcuni elenchi che sono curati almeno in un senso minimo (potrebbero esserci modi per trasferire applicazioni da altre fonti, ma la maggior parte degli utenti non lo fa) . Prima di installare un'app, c'è un modo per avere un'idea di quanto sia sicura o rischiosa quella scelta (ad esempio, attraverso recensioni accurate, le autorizzazioni richieste dall'app o altre informazioni). Le app sono in modalità sandbox. Ad ogni app è impedito di interferire con altre app; un'app non può accedere a tutti i dati dell'utente o interferire con altre app.
Il modello di app è probabilmente più resistente ai malware: rende più difficile per un utente malintenzionato persuadere gli utenti a installare software dannoso e limita il danno che un'app dannosa o compromessa può fare.
Quindi, potremmo pensare al modello di sicurezza "app" come un'alternativa al modello di sicurezza "open PC". Gran parte del mondo mobile è passato a un modello di sicurezza "app" e abbiamo persino iniziato a vedere alcuni movimenti in questa direzione nello spazio desktop (ad esempio, Windows 8).
Un'altra possibile alternativa potrebbe essere il modello "appliance", in cui il PC non è più un computer per uso generico e gli utenti non hanno più pieno potere di Dio sul proprio PC. Invece, l'amministrazione del sistema è affidata a qualcun altro (eventualmente il sysadmin del tuo datore di lavoro, o qualche altra società di terze parti che gestisce il sistema). Alcune applicazioni software di base potrebbero essere preinstallate (ad esempio, un browser Web, alcuni software per ufficio / produttività) e potresti non essere in grado di installare altro, o potresti essere limitato a quali applicazioni software è possibile installare (ad es. è possibile installare solo applicazioni incluse in una whitelist di applicazioni consentite). Lo chiamo modello "appliance", ma altri nomi ragionevoli potrebbero essere il modello "whitelisting" o "amministrazione di sistema in outsourcing". Questo modello potrebbe non essere adatto a tutti, ma potresti immaginare che potrebbe essere adatto a una parte degli utenti.
Ci sono altri modelli di sicurezza radicalmente diversi che vale la pena considerare? Se potessimo cambiare completamente il paradigma di sicurezza alla base dei computer e dei sistemi operativi e dell'architettura del computer (ricominciando da zero, se necessario), esistono altri paradigmi / modelli di sicurezza che potrebbero consentire significativi vantaggi per la sicurezza?
(*) Nota: OK, so che sto semplificando un po 'la descrizione del modello "open PC". Mi rendo conto che i moderni sistemi operativi desktop fanno una distinzione tra l'account utente e l'amministratore / root. Tuttavia, in un certo senso, questo è un dettaglio. Ad esempio, la separazione utente / radice non fornisce alcun isolamento tra le applicazioni. La maggior parte del software che eseguiamo viene eseguito a livello di utente, quindi nei sistemi operativi desktop qualsiasi applicazione utente può comunque interferire con qualsiasi altra applicazione utente.