Qual è il modo migliore per sandbox un'applicazione X come firefox o thunderbird in ubuntu (andando nella direzione di ciò che qubes os fa , ma solo per singole applicazioni)?
So che ci sono molte diverse tecnologie di sandboxing. Ad esempio
-
Semplicemente usando una scatola virtuale: sembra essere molto sicuro ma una risorsa eccessiva. Avresti bisogno di un SO minimo in VirtualBox solo per eseguire firefox.
-
Uso della tecnologia sandbox SE-Linux . Questa sembra essere l'opzione migliore ma per quanto ne so SElinux è disponibile in Ubuntu ma non è configurato molto bene di default (al contrario, ad esempio, di RedHat-linux). Inoltre sembra mancare la parte sandbox di SELinux: link quindi dovresti compilarlo.
-
L' equivalente apparmor sembra non essere pronto per la produzione e al momento non viene fornito con ubuntu per quanto ne so. Tuttavia non posso stimare quale sia lo stato di sviluppo e se varrebbe la pena aspettare la prossima versione di Ubuntu, dove probabilmente ne farà parte.
-
Il desktop di gnome sembra supportare X-sandboxing . Non mi è chiaro se si può usare questo in modo indipendente dal wm.
-
Lo strumento lightweigt mbox sembra funzionare solo a livello di file system, il che non sarebbe sufficiente per X -applicazioni.
-
Lo stesso vale per le soluzioni di chroot fatte da sé come per esempio sandfox-script .
-
Un'opzione più lightweigt e sicura di chroot sembra essere Plash . Ma non sono sicuro di quanto sia efficace la protezione X.
-
C'è anche un programma chiamato arkose che sembra essere supportato da Ubuntu, ma allo stesso tempo c'è molto poca documentazione su come funziona e non ho idea di quanto sia sicuro rispetto ad altri approcci.
-
Docker sembra essere fatto più per le applicazioni server che per quelle desktop. Non vedo se è sicuro per le applicazioni X. C'è un nuovo progetto chiamato kagome che sembra combinare Docker con xephyr per l'isolamento X. Ma l'autore nota che la finestra mobile ha alcuni difetti di sicurezza e potrebbe essere meglio passare a un'altra soluzione contenitore come systemd-nspawn, rkt o lxd.
-
Altre soluzioni sono: seccomp-nurse , Arcobaleno , vagrantup
-
Infine, specialmente per firefox, c'è un profilo apparmor per ubuntu ma che è non abilitato di default . Questa non è una sandbox ma dovrebbe darti un certo livello di sicurezza quando si usa firefox (ma non so come si rapporta alle soluzioni sandbox sopra).
Quindi sembra che ci siano molti approcci, ma non so come (e perché) quelli in termini di sicurezza per sandboxing X - applicazioni come firefox o thunderbird, in termini di usabilità, specialmente in ubuntu-linux e quali sono pronti per la produzione e ben supportati. Sarebbe opportuno che qualcuno potesse fornire alcuni dettagli su questo, su come categorizzarli e su quale di essi varrebbe la pena dare un'occhiata più da vicino al mio scopo.