Con mi configuración actual, tengo dos cuentas de usuario: Internet y segura. Para el usuario "seguro", todas las redes están deshabilitadas con la regla iptables
:
-A OUTPUT -m owner --gid-owner 1000 -j DROP
El usuario "internet" tiene acceso a Internet, pero no puede acceder al directorio de inicio del usuario "seguro".
Esto se siente seguro, pero ejecutar dos servidores X simultáneamente y cambiar entre ellos con Ctrl + Alt + F (7/8) no es exactamente lo ideal. Ejecutando:
xhost si:localuser:internet
su internet
firefox
como "seguro", puedo iniciar una sesión de navegación en el mismo servidor X. No es necesario cambiar entre dos servidores X ahora solo para usar Internet. El navegador lanzado también tiene las limitaciones del usuario "internet". AKA, no tiene acceso al directorio principal del usuario "seguro".
¿Pero qué tan seguro es esto? Pensaría que, como el usuario "internet" se está ejecutando en una ventana de terminal, tengo control sobre qué aplicaciones se inician exactamente. En el caso de que exista una vulnerabilidad de Firefox y Firefox pueda lanzar otras aplicaciones en segundo plano, supongo que esas aplicaciones heredarán las limitaciones del usuario de "internet".
Lo único de lo que no estoy completamente seguro es de qué tan seguros son los programas vecinos. Si se explota Firefox de alguna manera y se ejecuta como "internet", y "seguro" tiene un documento abierto que contiene información confidencial en el mismo servidor X, ¿existe alguna forma de que el explotado Firefox pueda leer la memoria de la aplicación vecina?