07 julio 2009

Profiláctico para navegadores

El mundo de la informática no dista tanto del mundo real, de hecho, muchos de los paradigmas aplicables al mundo real son perfectamente asociables a un mundo cibernético. En el mundo real a la hora de 'interactuar' con personas de una forma mas o menos intima nos han enseñado que es necesario tomar cierto tipo de precauciones para evitar sustos. El mundo cibernético es mucho mas promiscuo y las interactuaciones con elementos potencialmente peligrosos son inevitables.

Navegar felizmente por Internet con un navegador, supone arriesgarse a que, al seguir un link en twitter, bajar un programa o visitar una web, traiga como consecuencia que nos llevemos 'gratis' un bonito troyano al PC.

Para todos aquellos familiarizados con Linux / Unix el termino chroot (o jail si lo tuyo son los *BSD) les sonará muy familiar, básicamente es un comando (en realidad una syscall) que permite aislar del resto del sistema un proceso. De siempre en entornos Unix se ha empleado para ejecutar procesos con riesgo de ser comprometidos y evitar que si caen, se lleven por delante todo el sistema.

En Windows hay diversas herramientas que emulan este comportamiento, pero la que mas me ha gustado ha sido sandboxie por la enorme sencillez de uso y lo orientada que está a ejecutar navegadores y programas que realizan conexiones al exterior tipo Explorer o Firefox. La herramienta dispone de versión free y versión de pago, aunque la versión free es suficientemente completa.

Una vez instalado sandboxie

Lanzar Firefox de forma 'controlada' y con acceso ultra-limitado al sistema operativo es tan fácil como hacer esto:


De esa forma, podremos navegar tranquilamente con Firefox sabiendo que, en caso de que alguno de nuestros plugins / extensiones o el propio navegador tenga una vulnerabilidad y algún sitio que visitemos trate de aprovecharla, el daño quedará limitado a unos pocos directorios.

Desde la propia interface de sandboxie podemos gestionar el proceso encerrado cambiando los directorios a los que tiene acceso para darle mas o menos permisos


En definitiva, con la cantidad de 0-days que andan circulando y la enorme cantidad de plugins que consciente o inconscientemente usamos, ir por la vida sandboxiezado es mas que recomendable.

6 comments :

Anónimo dijo...

Hola:

Mas que un comentario sería una pregunta. ¿Conseguiríamos el mismo efecto utilizando un usuario con permisos restringidos p.ej. tipo "Invitado".

Un saludo,
Kelkoon

Pedro J. dijo...

Kelkoon,

No. A veces hay vulnerabilidades que permiten escalada de privilegios.

Yago Jesus dijo...

Hola Kelkoon, son conceptos diferentes, usando una cuenta con pocos privilegios limitas, dentro de todo el sistema operativo, acciones que pueda realizar ese usuario, lo que hace sandboxie es limitar el espacio donde puede realizar acciones. Evidentemente si sumas ambos conceptos (uso de cuentas no privilegiadas + sandbox) el resultado es mucho mas efectivo.

Anónimo dijo...

¿pero lo usais alguno esto?¿ralentiza la navegacion?

Yago Jesus dijo...

Te confirmo: Yo no he notado ralentización alguna, si la hay, ha sido imperceptible y eso que lo he llegado a probar en maquinas virtuales, que suelen tener un peor desempeño. Lo único que puede ser una pequeña molestia es usar el navegador pensando que las rutas y carpetas han cambiado de sitio, pero vamos, no es nada que en 1 dia no tengas aprendido

Yago Jesus dijo...

Te confirmo: Yo no he notado ralentización alguna, si la hay, ha sido imperceptible y eso que lo he llegado a probar en maquinas virtuales, que suelen tener un peor desempeño. Lo único que puede ser una pequeña molestia es usar el navegador pensando que las rutas y carpetas han cambiado de sitio, pero vamos, no es nada que en 1 dia no tengas aprendido