Aislamiento de procesos (informática)

De Wikipedia, la enciclopedia libre
Saltar a: navegación, búsqueda

En seguridad informática, el aislamiento de procesos (del inglés sandbox) es un mecanismo para ejecutar programas con seguridad y de manera separada. A menudo se utiliza para ejecutar código nuevo, o software de dudosa confiabilidad proveniente de terceros.

Ese aislamiento permite controlar de cerca los recursos proporcionados a los programas "cliente" a ejecutarse, tales como espacio temporal en discos y memoria. Habitualmente se restringen las capacidades de acceso a redes, la habilidad de inspeccionar la máquina anfitrión y dispositivos de entrada entre otros. En este sentido, el aislamiento de procesos es un ejemplo específico de virtualización.

Algunos ejemplos de aislamiento son:

  • Los applets son programas que se ejecutan en contención dentro de una máquina virtual o un intérprete de scripts que haga el aislamiento. En esquemas de uso de aplicaciones de red por demanda (streaming), el applet es descargado en el cliente remoto y puede comenzar a ejecutarse antes de que llegue en su totalidad. Los applets son comunes en los navegadores web, los cuales usan ese mecanismo para ejecutar de manera segura código no confiable contenido en páginas web. Las tres implementaciones de applet más conocidas —Adobe Flash, Java y Silverlight— permiten (cuando menos) una ventana rectangular con la que es posible la interactividad con el usuario y brinda algo de espacio persistente (todo con el permiso del usuario).
  • Una celda es un conjunto de límites en los recursos impuesto a los programas por el núcleo de un sistema operativo. Puede incluir topes de E/S, cuotas de espacio en disco, restricciones al acceso a redes y al sistema de archivos. Las celdas son usadas comúnmente en servidores virtualizados.
  • Las máquinas virtuales emulan un ordenador en su totalidad, en el cual un sistema operativo convencional puede arrancar y funcionar como si estuviera sobre hardware real. El sistema operativo cliente está aislado en el sentido de que no corre nativamente en la máquina anfitriona y puede acceder únicamente a los recursos (muchas veces virtuales) que le proporciona el emulador.
  • Aislamiento en máquinas nativas: Los investigadores de seguridad utilizan frecuentemente tecnologías de aislamiento para analizar el comportamiento de software malicioso. Al crear un ambiente que simula o replica los sistemas de escritorio objetivo, se puede evaluar cómo el software malicioso infecta y compromete el equipo.

Véase también[editar]