Vulnerabilidad en VirtualBox permite escapar de la VM…y no hay parche de momento

Un investigador independiente ha decidido rebelarse y descubrir los detalles de una vulnerabilidad de tipo Zero Day (día cero o sin parche) que afecta al tan popular software de virtualización VirtualBox.

Vulnerabilidad Virtualbox

También ha cargado sus tintas contra el estado de las investigaciones de seguridad, en particular contra los procedimientos de bug bounty o “recompensas” actuales. Pero esa es otra historia diferente.

Vulnerabilidad en VirtualBox publicada en Github

Sergey Zelenyuk ha publicado en esta web un PoC (prueba de concepto) donde utiliza la configuración predefinda de este programa para mostrar una vulnerabilidad que ocurre debido a corrupción de memoria cuando se utilizan tarjetas de red Intel PRO / 1000 MT Desktop (82540EM) en configuración NAT. Además, continúa diciendo:

El E1000 tiene un fallo de seguridad que permite a un atacante que haya logrado privilegios de root/administrador en la máquina virtualizada, escapar al host ring 3 (anillo 3). Después es teóricamente posible utilizar técnicas de escalado de privilegios para ascender a ring 0 medainte /dev/vboxdrv.

Es decir, si consideramos que ring 0 es nuestra máquina o host anfitrión (el que alberga la máquina virtual) lo que estamos permitiendo es que el atacante escape del entorno “controlado” que tenemos, perdiéndose así la teórica seguridad de una VM.

Este fallo de seguridad es replicable en Windows -afectando a todas sus variantes hasta 5.2.20- aunque con sutiles diferencias.

El investigador no solo ha detallado paso a paso como replicar el ataque, sino que incluso ha publicado un vídeo demostrativo.

A pesar de que se podría considerar una falta ética el hecho de publicar un PoC de una vulnerabilidad que no cuenta con un parche a la vista, Zelenyuk es lo suficientemente consciente como para al menos adjuntar una “cura” en su post.

Hasta que sea actualizado VirtualBox es posible modificar la tarjeta de red de nuestras máquinas virtuales a PCnet (cualesquiera de las dos) o a Paravirtualized Network. Si no puedes, cambia el modo NAT a otro diferente.  La primera opción es más segura.

A pesar del consejo ofrecido por Zelenyuk, no cabe duda de que muchos considerarán esto como un acto irracional o falto de responsabilidad. Aunque, por otro lado, en casos donde se han notificado vulnerabilidades y el desarrollador no ha respondido por uno u otro motivo, este siempre es un argumento de peso para que las cosas ocurran. Eso sí, mientras tanto tenemos un software tan popular como VirtualBox abierto a ciberataques. ¿Qué opinas sobre esto?

Fuente: Bitdefender.

Autor: Alejandro Sánchez

Alejandro es técnico micro-informático, experto en seguridad de las TIC y apasionado de la tecnología. Colabora habitualmente en diferentes publicaciones de seguridad, software y análisis de hardware entusiasta.