Instructor: En esta
lección, vamos a discutir los ataques a máquinas
virtuales incluyendo escapes de VM, saltos de VM, escapes de sandbox,
y otros problemas de VM.
Primero tenemos los escapes VM o escapes de máquina virtual.
Un escape de máquina virtual es un tipo de ataque en
el que un actor de amenaza intenta
salir de una máquina virtual aislada y luego
enviar comandos directamente
al hipervisor subyacente.
Dado que se supone que cada máquina virtual está aislada,
realizar un escape de VM debería
ser muy difícil de llevar a cabo.
Al fin y al cabo, cada sistema operativo invitado
ni siquiera debería saber por sí mismo
que forma parte de una máquina virtual,
porque sigue pensando que tiene acceso
total a la máquina física emulada que
le proporciona el hipervisor.
Para que un escape de la máquina virtual sea
efectivo, el atacante tiene que encontrar una forma de interactuar
directamente con los recursos físicos subyacentes,
como la memoria, el disco duro o el procesamiento
del servidor físico.
Esto suele ocurrir explotando una vulnerabilidad
en el propio código del hipervisor.
Se han producido algunos
casos de este tipo y los fabricantes han desarrollado
y publicado parches en cuanto descubrieron estas
vulnerabilidades.
El escape de máquinas virtuales es más fácil de realizar en un hipervisor
de tipo dos que en uno de tipo uno.
Si está utilizando un hipervisor de tipo dos o post-it, el atacante
podría ser capaz de obtener acceso al sistema
operativo subyacente que realmente
aloja sus máquinas virtuales.
Si pueden, entonces pueden ser capaces
de escalar sus privilegios
y acceder a otras máquinas virtuales alojadas
en ese mismo dispositivo y, en efecto,
crear una fuga de máquinas virtuales.
Para evitar que se escape una máquina virtual,
siempre es importante asegurarse
de que el sistema operativo invitado, el sistema operativo anfitrión
y el hipervisor permanecen parcheados y actualizados.
En segundo lugar tenemos el VM hopping o salto de máquina virtual.
Ahora bien, el VM hopping es un tipo de ataque
en el que el actor de la amenaza
intenta pasar de una máquina virtual a otra en el mismo host.
Un ataque de VM hopping se va a centrar en explotar el hipervisor
del software de virtualización o algún tipo de
característica para moverse entre las dos máquinas virtuales
supuestamente aisladas.
Ahora VM hopping suena similar a un escape de VM, pero
hay una diferencia clave que VM
hopping se centra ahora en el movimiento
entre una máquina virtual a otra.
Mientras que cuando hablamos de escape
de máquinas virtuales, se centra en llegar al hipervisor subyacente
o al sistema operativo del host.
Para protegerse contra el salto de máquinas virtuales,
debe asegurarse siempre de que su hipervisor está
actualizado y correctamente parcheado.
Además, debe asegurarse de que sus sistemas operativos
invitados y el hipervisor estén configurados de forma segura utilizando
una guía de configuración de mejores prácticas para garantizar
que no haya conexiones erróneas entre las máquinas
virtuales que deberían haber estado aisladas.
En tercer lugar, tenemos un escape sandbox.
Ahora bien, un sandbox es un mecanismo de seguridad
que se utiliza para separar los procesos y
programas en ejecución en un esfuerzo por mitigar los fallos del sistema
o la propagación de vulnerabilidades de software.
Lo más habitual es crear sandboxes mediante máquinas virtuales
o contenedores.
Los navegadores web, por ejemplo, suelen utilizar el concepto
de sandboxing para separar el código web en ejecución
del sistema operativo protegido
u otro software del sistema.
Ahora se producirá una fuga de la caja de
arena cuando un atacante
sea capaz de eludir las protecciones de la caja de
arena con el fin de obtener acceso al sistema operativo protegido
para otros procesos privilegiados.
Para proteger sus sistemas de una fuga del sandbox,
es importante asegurarse de que su software
y sistemas operativos permanezcan parcheados y actualizados,
así como asegurarse
de que tiene un software de protección de endpoints fuerte
instalado en su cliente y que limita las extensiones o complementos que están
instalados dentro de sus navegadores web en el
caso de la protección contra
fugas del sandbox del navegador web.
En cuarto lugar, tenemos algunas preocupaciones de las que tenemos
que hablar también cuando pensamos en máquinas virtuales
y entornos virtualizados.
Esto incluye cosas como migraciones y restos de datos.
Ahora bien, una de las principales
ventajas de utilizar un entorno virtual
es que puedes migrar una máquina virtual de
un host a otro, incluso mientras se está ejecutando.
Esto se denomina migración en vivo.
Ahora esta migración se produce a través de la red.
Por lo tanto, es importante asegurarse
siempre de que la migración sólo se produce a través de una
red de confianza o que utiliza un cifrado adecuado entre
el servidor que configura la máquina virtual y el servidor
que recibe esa máquina virtual.
Sin embargo, si la migración en
vivo se produce a través de una conexión
no cifrada, existe la posibilidad de que los datos
contenidos en esa máquina virtual queden expuestos a miradas indiscretas
o que su integridad se vea comprometida por
un atacante que utilice un ataque on path.
Para evitarlo, las imágenes de máquinas virtuales
deben cifrarse antes de ser enviadas
de un servidor a otro a través de la red.
Recuerde, los servidores ya no son sólo dispositivos físicos ubicados
dentro de nuestros centros de datos, sino
que también son máquinas virtuales que son simplemente
un archivo ubicado en algún tipo de sistema de archivos.
Y estos archivos pueden ser robados por un atacante.
Otra preocupación importante cuando se utilizan máquinas
virtuales en un entorno de nube son los restos
de datos que podrían quedar cuando
se desaprovisionan los servidores virtuales sobrantes.
Muchos proveedores de nube utilizan almacenamiento en bloque
que podría permitir que los datos que ya no se
necesitan se queden en sus dispositivos de almacenamiento.
Si no se borra correctamente, usuarios no autorizados
pueden acceder a esos datos.
Para mitigar esta amenaza de restos de datos, debe
cifrar siempre las ubicaciones de almacenamiento
de sus máquinas virtuales y asegurarse
de que la clave de cifrado se destruye siempre
que la máquina virtual ya no se necesite y se desaprovisione.
La última cosa que necesitamos
cubrir en términos de seguridad es el VM sprawl, también
conocido como virtual machine sprawl.
La proliferación de máquinas virtuales es el despliegue incontrolado
de una o más máquinas virtuales.
Esta es una enorme área de vulnerabilidad para usted
como organización, porque tiene estas
máquinas virtuales falsas que se están
instalando sin autorización
en toda su red.
Ahora bien, esto significa que la gestión del sistema no se está
haciendo para esas máquinas, porque no sabes que existen.
Y como no sabes lo que hay, no aplicas
los parches de seguridad ni las
actualizaciones ni instalas soluciones antimalware
o antivirus para proteger esos equipos.
Debido a esto, estas máquinas virtuales se vuelven muy
susceptibles a un ataque.
Y si un atacante puede encontrar una de estas
máquinas virtuales deshonestas
causada por la proliferación de máquinas virtuales,
podrá atacarla y utilizarla como punto de acceso al resto de la
red para intentar escapar de ella o saltar a otras
áreas de la red.
Así que tenlo en cuenta, porque
esta proliferación de máquinas virtuales es un gran problema, especialmente
si tienes muchos contratistas y desarrolladores
que están trabajando en tu red y no son parte de tu equipo normal,
y no están siguiendo tus procesos normales de control de cambios.
Así que una vez más, en esta lección, hemos hablado de algunos de los
requisitos de seguridad en los que deberías pensar
y algunas de las vulnerabilidades que pueden
ir en contra de esos requisitos de seguridad.
Esto incluye cosas como escapes de máquinas virtuales, saltos de máquinas virtuales,
escapes de cajas de arena y proliferación de máquinas virtuales.