¿Qué es el sandboxing?


Dentro del ámbito de la seguridad del software, una de los conceptos de los que más se suelen hablar con las vulnerabilidades, es decir, fallos de seguridad que, en determinadas circunstancias, pueden ser aprovechadas por terceros y ejecutar código malicioso (malware) en el equipo de un usuario. Además de mantener actualizadas nuestras aplicaciones y aplicar los distintos parches de seguridad que se vayan publicando, desde hace algún tiempo venimos oyendo hablar del Sandboxing, un mecanismo de seguridad que se utiliza en aplicaciones tan conocidas como Adobe Reader X o en Google Chrome.

Sandbox

¿Y qué es el Sandboxing? Este “cajón de arena” (traducción literal al castellano) es un asilamiento de procesos, es decir, un mecanismo que implementan varias aplicaciones para ejecutar aplicaciones y programas con seguridad y “aislarlas” del resto del sistema dentro de una especie de contenedor virtual desde el cual controlar los distintos recursos que solicita dicha aplicación (memoria, espacio en disco, privilegios necesarios, etc). Este férreo control al que se somete el proceso sirve para discernir si el código a ejecutar es malicioso o no puesto que, por norma general, se restringirá cualquier tipo de acceso a dispositivos de entrada o de inspección del sistema anfitrión.

Gracias al sandboxing, por ejemplo en Google Chrome, el navegador de Google es capaz de “aislar” pestañas de navegación entre sí y, además, impedir que una página web con contenido malicioso intente instalar cualquier tipo de software en nuestro sistema, monitorizar lo que estamos haciendo o acceder a información alojada en nuestro disco duro (y entre las aplicaciones que aisla, Flash es una de ellas). De hecho, este mecanismo también se incluyó en Adobe Reader X porque uno de los grandes “coladeros” de Adobe era la posibilidad de esconder código en los archivos PDF y que éste se ejecutase al abrir un “documento malicioso” porque la aplicación no impedía ni controlaba peticiones que iban más allá de mostrar el contenido del archivo (y se daban casos de cambios en el registro de Windows o la instalación de software en el sistema).


Además de proteger a los usuarios, esta técnica también es utilizada por equipos de seguridad, por ejemplo, para estudiar malware dentro de un entorno controlado y ver qué efectos tiene en un sistema para proceder a su caracterización, también podemos utilizar aplicaciones para “aislar” a otras y probarlas de manera segura (importante si sospechamos de ellas aunque, ante la duda, es mejor no instalarlas aunque usando Sandboxie o Glipse podremos mejorar la seguridad de nuestras pruebas). A mayor escala, la virtualización de un sistema operativo dentro de otro es también una forma práctica de sandboxing.

Imagen: DiegoLand

Comentarios

Entradas populares de este blog

3 plataformas para construir elegantes sitios web sin programar

Dabbleboard, una pizarra para hacer más productivas las reuniones

Cómo evitar la instalación de programas no deseados en tu ordenador