Un escape de sandbox es un exploit que permite a un código salir de un entorno aislado –el sandbox del navegador, una máquina virtual o un contenedor– y actuar en el sistema anfitrión con más privilegios.
Cómo funciona un escape de sandbox
Un sandbox limita el código: el renderizador del navegador no lee archivos, una máquina virtual invitada no toca el anfitrión y una app móvil no accede a datos de otras. El escape explota un fallo en la propia frontera, por ejemplo:
- un error en el proceso broker privilegiado del navegador, en interfaces IPC o en el kernel accesible desde el sandbox;
- una vulnerabilidad en el hardware emulado o en el hipervisor (escape de máquina virtual);
- un fallo del runtime de contenedores o del kernel que permite a un proceso del contenedor controlar el anfitrión (escape de contenedor).
Por eso los ataques modernos a navegadores usan cadenas de exploits: un fallo para ejecutar código en el renderizador, otro para el escape y a menudo un tercero para la escalada de privilegios en el kernel.
Por qué importan los escapes de sandbox
Los sandboxes son una capa de seguridad clave, así que escapar de ellos vale mucho: las cadenas completas contra Chrome, Safari o iOS aparecen en ataques de día cero de proveedores de spyware comercial y están entre los premios más caros de Pwn2Own. Ejemplos: VENOM (2015), un fallo en el controlador de disquete virtual de QEMU que podía permitir escapar de muchas máquinas virtuales, y una vulnerabilidad de runc de 2019 con la que contenedores maliciosos podían sobrescribir el binario runc del anfitrión y obtener acceso root. En la nube amenazan el aislamiento entre clientes.
Cómo defenderse de los escapes de sandbox
- Actualizar pronto navegadores, hipervisores, runtimes de contenedores y kernels.
- Superponer defensas: contenedores sin root, perfiles seccomp y AppArmor, y cargas sensibles en hosts separados.
- Activar el aislamiento de sitios y el Modo de aislamiento (Lockdown Mode) para usuarios de alto riesgo.
- Vigilar procesos inesperados lanzados por aplicaciones aisladas.