Instrutor: Nesta lição,
discutiremos os ataques a máquinas virtuais,
incluindo fugas de VMs, saltos de VMs, fugas de sandboxes e outras questões
relacionadas a VMs.
Primeiro, temos os escapes de VM ou escapes de máquina virtual.
Uma fuga de VM é um tipo de ataque em que um agente
de ameaça tenta sair de uma
máquina virtual isolada e, em seguida,
enviar comandos diretamente
para o hipervisor subjacente.
Como cada máquina virtual deve ser isolada,
deve ser muito difícil realizar
uma fuga de VM.
Afinal de contas, cada sistema operacional
convidado nem deveria saber que
faz parte de uma máquina virtual,
pois ainda acha que tem acesso total
à máquina física emulada que o hipervisor
está fornecendo.
Para que uma fuga de VM seja eficaz, o invasor
precisa encontrar uma maneira de interagir diretamente
com os recursos físicos subjacentes, como
a memória, o disco rígido ou o processamento
do servidor físico.
Isso geralmente ocorre por meio da exploração de uma vulnerabilidade
no próprio código do hipervisor.
Houve alguns casos em que
isso ocorreu e os fabricantes desenvolveram
e lançaram correções assim que descobriram essas
vulnerabilidades.
O escape da VM é mais fácil de ser realizado em um hipervisor do tipo
dois do que em um hipervisor do tipo um.
Se você estiver usando um hipervisor do tipo dois ou post-it,
o invasor poderá obter acesso ao sistema
operacional subjacente que está realmente
hospedando suas máquinas virtuais.
Se conseguirem, poderão escalar
seus privilégios e acessar
outras máquinas virtuais hospedadas no
mesmo dispositivo e, na prática,
criar uma fuga de máquina virtual.
Para evitar o escape de uma máquina virtual,
é sempre importante garantir
que o sistema operacional convidado, o sistema operacional
host e o hipervisor permaneçam corrigidos e atualizados.
Em segundo lugar, temos o VM hopping ou salto de máquina virtual.
Agora, o VM hopping é um tipo de ataque em
que o agente da ameaça tenta
mudar de uma máquina virtual para outra no mesmo host.
Um ataque de VM hopping se concentrará na exploração
do hipervisor do software de virtualização
ou em algum tipo de recurso para se mover entre as duas
máquinas virtuais supostamente isoladas.
Agora, o VM hopping parece semelhante a um escape de VM,
mas há uma diferença fundamental:
o VM hopping agora se concentra na movimentação
entre uma máquina virtual e outra.
Por outro lado, quando falamos
sobre o escape da VM, o foco é atingir o hipervisor subjacente
ou o sistema operacional do host.
Para se proteger contra o VM hopping, você
deve sempre garantir que seu hipervisor esteja
atualizado e devidamente corrigido.
Além disso, você precisa garantir que os sistemas operacionais
convidados e o hipervisor estejam configurados com segurança usando
um guia de configuração de práticas recomendadas para
garantir que não haja conexões errôneas entre
as máquinas virtuais que deveriam ter sido isoladas.
Terceiro, temos um escape de sandbox.
Agora, uma sandbox é um mecanismo de segurança
usado para separar processos e programas
em execução em um esforço para reduzir a propagação de falhas do sistema
ou vulnerabilidades de software.
Geralmente, as sandboxes são criadas usando máquinas virtuais
ou conteinerização.
Os navegadores da Web, por exemplo, costumam usar o conceito
de sandboxing para separar o código da Web em execução
do sistema operacional protegido
ou de outro software no sistema.
Agora, uma fuga da sandbox ocorrerá
quando um invasor conseguir
contornar as proteções da sandbox para obter
acesso ao sistema operacional protegido para outros
processos privilegiados.
Para proteger seus sistemas contra uma fuga da
sandbox, é importante garantir que seu software
e seus sistemas operacionais permaneçam corrigidos e atualizados, além de garantir
que você tenha um software robusto de proteção de endpoint
instalado em seu cliente e que você limite as extensões ou complementos instalados
em seus navegadores da Web, no caso de proteção contra fugas da sandbox
do navegador da Web.
Em quarto lugar, temos algumas preocupações sobre as quais também
precisamos falar quando pensamos em máquinas virtuais
e ambientes virtualizados.
Isso inclui coisas como migrações e dados remanescentes.
Agora, um dos principais benefícios
de usar um ambiente virtual é que você
pode migrar uma máquina virtual de um host
para outro, mesmo enquanto ela estiver em execução.
Isso é chamado de migração em tempo real.
Agora, essa migração ocorre pela rede.
Portanto, é importante sempre
garantir que a migração ocorra somente em uma rede confiável
ou que utilize a criptografia adequada entre o servidor
que está configurando a máquina virtual e o servidor
que está recebendo essa máquina virtual.
No entanto, se a migração em tempo
real ocorrer por meio de uma conexão não
criptografada, haverá a possibilidade de que
os dados contidos nessa máquina virtual sejam expostos a olhos curiosos
ou tenham sua integridade comprometida por
um invasor usando um ataque on path.
Para evitar isso, as imagens de máquinas virtuais
devem ser criptografadas antes de serem
enviadas de um servidor para outro pela rede.
Lembre-se de que os servidores não são mais apenas dispositivos físicos
localizados dentro de nossos data centers,
mas também são máquinas virtuais que são simplesmente
um arquivo localizado em algum tipo de sistema de arquivos.
E esses arquivos podem ser roubados por um invasor.
Outra grande preocupação ao utilizar máquinas virtuais
em um ambiente de nuvem são os restos de dados
que podem ser deixados quando você
desprovisiona o excesso de servidores virtuais.
Muitos provedores de nuvem utilizam armazenamento em bloco
que pode permitir que os dados que não são mais
necessários sejam deixados em seus dispositivos de armazenamento.
Se não forem apagados corretamente, esses dados poderão
ser acessados por usuários não autorizados.
Para atenuar essa ameaça de restos de dados, você
deve sempre criptografar os locais de armazenamento
da máquina virtual e garantir que a
chave de criptografia seja destruída
sempre que a máquina virtual não for mais necessária e
for desprovisionada.
A última coisa que precisamos
abordar em termos de segurança é a expansão da VM, também
conhecida como expansão da máquina virtual.
Agora, a expansão da máquina virtual é a implantação descontrolada
de uma ou mais máquinas virtuais.
Essa é uma grande área de vulnerabilidade para
você como organização, porque você
tem essas VMs desonestas que estão sendo
instaladas sem autorização
em toda a sua rede.
Isso significa que o gerenciamento do sistema não está sendo feito
para essas máquinas, porque você não sabe que elas existem.
E como você não sabe o que existe,
não está aplicando os patches de
segurança, atualizando e colocando soluções antimalware
ou antivírus para proteger essas máquinas.
Por isso, essas VMs se tornam muito suscetíveis
a um ataque.
E se um invasor conseguir encontrar uma
dessas VMs desonestas causadas
pela expansão de VMs, ele poderá atacá-la e obtê-la
como um ponto de articulação para o restante da rede e, em seguida,
tentar escapar da VM ou saltar da VM para outras
áreas da rede.
Portanto, tenha isso em mente,
pois a expansão da VM é um grande problema, especialmente se você
tiver muitos prestadores de serviços
e desenvolvedores trabalhando na sua rede e eles não fizerem
parte da sua equipe normal e não seguirem
os processos normais de controle
de alterações.
Portanto, mais uma vez, nesta lição, falamos sobre alguns dos
requisitos de segurança nos quais você deve pensar
e algumas das vulnerabilidades que podem
ir contra esses requisitos de segurança.
Isso inclui coisas como fugas de VMs, saltos de VMs, fugas
de sandboxes e expansão de máquinas virtuais.