Si può rendere più sicura l’istanza di comodo?
Non me ne intendo un granchè, ed è bene che lo specifichi subito per non passare da “uno che le cose le sà”. Io non le sò e per questo domando.
Tutto è successo per “spasso”, volevo terminare il processo CMDAGENT.EXE, però non ci riuscivo. Il fatto è che io sono ADMIN mentre lui è SYSTEM, lui è più potente di me come “rating” e non posso terminarlo. Perciò mi metto a cercare su internet come ottenere privilegi SYSTEM sfruttando un qualche exploit di windows. In pochi secondi raccatto una marea di link (ad esempio questo → doxaliber.it/exploit-per-ottenere-i-privilegi-di-amministratore-in-win-xp/166). Faccio come dice e riesco a terminare il processo CMDAGENT.EXE A questo punto può entrare chiuque, comodo è terminato, giusto?
Se beccassi un virus che riesce ad ottenere privilegi di SYSTEM, esso può disattivare comodo e altri software di sicurezza che operano sul kernel. Questa è la mia conclusione, e non mi sento affatto sicuro!
Mi sono messo a cercare affannosamente su internet qualunque tema trattasse la sicurezza di sistemi operativi, ho chiesto ad amici che usano linux (xkè linux ha la fama di essere “più sicuro”). Il risultato è questo:
- I sisitemi operativi hanno kernel monolitici pieni di zozzerie e di exploit di ogni tipo
- A causa di questo le applicazioni non sono isolate e quindi il kernel non è in grado di garantire la sicurezza e l’isolamento dei processi, perciò nemmeno dei software di sicurezza che operano a questo livello.
- I malware-rootikit possono scalare i privilegi fino ad un livello più potente di SYSTEM, il ring0
Un amico che usa linux ha messo XEN. Stò coso (xkè non sò come definirlo) è un hypervisor (pare: gestore di macchine virtuali), su wikipedia c’è scritto un po’ come funziona. Questo XEN sfrutta una tecnologia implementata da poco nell’hardware dei processori (VT) che permette di trattare i processi ad un livello di ring più basso: ring -1, XEN quindi ha più privilegi del kernel.
Perciò adesso mi viene un’idea, il gioco delle matrioske russe. Posso far in modo di aprire i processi in modo che siano isolati e controllabili da chi ha più privilegi, all’interno ne posso aprire un’altro, e un’altro ancora. Così ho tanti processi isolati in una scala ben definita di priorità.
In questo modo, ammettiamo che un malware superfigo si accorga di essere virtualizzato 10 volte a matrioska e decida di scalare fino alla vetta, a quel punto dovrà accorgersi di essere fuori dalla macchina virtuale principale e a quel punto tentare di scalare i privilegi di sistema fino al ring0. Anche ammesso che ci arrivi, se esiste un’applicazione (Comodo?) che lavora a ring -1 lo può intercettare e terminare. Appatto xò che non esistano exploit alla base.
Se proprio sembra facile si può rifare il ragionamento ipotizzando che questo malware sia virtualizzato 10 volte, ma ogni volta su un SO differente. Quando sale di livello deve tirare a indovinare su quale sistema lavora. In ambito SAP questa cosa mi pare si chiami “sicurezza per confusione”.
Arrivo al punto:
La suite di comodo imho come tutte le altre suite (firewall, av, anti-qualcosa) non sono sicure, non xkè comodo è “debole” (anzi, penso che sia la migliore suite), ma xkè non hanno alla base un SO in grado di garantirne la sicurezza esecutiva. Perciò io penso che sia una buona idea sfruttare la virtualizzazione per rendere sicura l’istanza di comodo, almeno da garantirgli privilegi superiori a quelli del kernel.