¿Cómo sandbox Iceweasel (Firefox) en Debian? [cerrado]

8

¿Existen herramientas para el sandboxing Iceweasel (Firefox) en los sistemas Debian? Estoy más interesado en herramientas distribuidas por Debian. (Una fuente igualmente confiable sería la segunda mejor).

(Supongo que la instalación de VirtualBox y la ejecución de Iceweasel (o Firefox) dentro del mismo sería una función de sandbox para el navegador, pero las instancias de VirtualBox ocupan mucho espacio en el disco, y la unidad de mi máquina no es tan grande. Espero encontrarlo una forma de lograr los mismos resultados con una huella de disco más pequeña.)

    
pregunta kjo 23.06.2014 - 15:44
fuente

3 respuestas

3

Puede usar la ventana acoplable que utiliza contenedores de Linux.

Aquí es cómo se podría hacer esto:

Descargue e instale la ventana acoplable desde aquí

Crea un archivo llamado "Dockerfile" que contiene comandos para crear una imagen de docker. El siguiente archivo crea una imagen basada en Ubuntu donde se instalarán Firefox y el servidor OpenSSH. Se creará un usuario "nadie" (reemplace [su clave pública] con su clave pública) que se usará más adelante para iniciar Firefox.

FROM ubuntu:14.04 RUN apt-get update RUN apt-get -y install openssh-server firefox RUN mkdir /var/run/sshd RUN useradd -m -U --shell=/bin/bash noone RUN sed -ri 's/noone:!/noone:*/g' /etc/shadow RUN sed -ri 's/UsePAM yes/UsePAM no/g' /etc/ssh/sshd_config RUN mkdir /home/noone/.ssh RUN chown noone:noone /home/noone/.ssh RUN echo 'ssh-rsa [your public key] xxx' > /home/noone/.ssh/authorized_keys EXPOSE 22 CMD ["/usr/sbin/sshd", "-D"]

Inicia el demonio docker con docker -d .

Vaya al directorio donde se encuentra su Dockerfile y ejecute docker build -t sandboxfirefox . Esto creará la imagen sanboxfirefox.

Inicie un contenedor de ventana acoplable desde la imagen creada anteriormente con docker run -d -p 127.0.0.1:5001:22 sandboxfirefox (el puerto 22 del contenedor se exporta al puerto 5001 al host)

Ahora puede iniciar Firefox a través de SSH usando el reenvío X con el usuario "nadie" de la siguiente manera:

ssh -o "UserKnownHostsFile /dev/null" -t -X -p 5001 noone@localhost firefox

Los cambios en el sistema de archivos solo afectarán al contenedor y no a la imagen. Si detienes el contenedor todos los cambios se perderán.

    
respondido por el DanielE 23.06.2014 - 17:33
fuente
1

Uno de los métodos que utilizo para establecer una "zona de pruebas" en una aplicación (por ejemplo, servidores de juegos, aplicaciones de redes, ...) es crear un usuario específico para cada aplicación. Por ejemplo:

sudo adduser firefoxuser # create a user for browsing the web

Luego salga e inicie sesión como el nuevo usuario. Luego ejecuta cualquier aplicación que necesites para ejecutar. Si el usuario no necesita acceso a sudo , entonces asegúrese de que no pueda usar sudo .

En su caso, solo inicie sesión como este usuario cada vez que quiera navegar por la web. De esta manera, si un atacante puede ingresar a su sistema, no tendrá acceso a una cuenta de administrador de inmediato. También puede considerar eliminarlos de ciertos grupos predeterminados si desea limitar aún más el acceso.

Caja virtual

Como dijo en su pregunta, Virtual Box (VM Ware, etc.) tiene muchas desventajas:

  1. utiliza una tonelada de RAM
  2. Utiliza una tonelada de espacio en disco
  3. Mucho más lento

Pero, también hay muchas ventajas al usarlo. Puede crear una máquina virtual y luego crear una instantánea. Generalmente llamo a esto 'Estado de Fábrica'. Luego, cuando haya terminado de usar la máquina virtual, vuelva a la instantánea. Cualquier malware que se haya instalado en su máquina virtual se borrará.

    
respondido por el John 23.06.2014 - 15:59
fuente
0

Debería revisar el software de sandbox arkose . Se trata de un espacio aislado de copia en escritura que está diseñado para dejar su sistema de archivos intacto después de que el proceso haya terminado.

Afaik, arkose no tiene controles para restringir el acceso de lectura a sus archivos, por lo que ejecutar el navegador como otro usuario podría ser una buena idea.

Un inconveniente de este sandboxing, es que los complementos que se actualizan desde el navegador no sobrevivirán al sandbox. Debe ejecutar el navegador periódicamente para permitir que los complementos se actualicen.

    
respondido por el Dog eat cat world 23.06.2014 - 16:40
fuente

Lea otras preguntas en las etiquetas