AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / unix / Perguntas / 435815
Accepted
giusti
giusti
Asked: 2018-04-06 09:08:23 +0800 CST2018-04-06 09:08:23 +0800 CST 2018-04-06 09:08:23 +0800 CST

Isole completamente uma máquina VirtualBox

  • 772

Gostaria de usar o VirtualBox para instalar algum software que não deveria ter acesso ao meu computador host (e vice-versa). No entanto, também imagino a possibilidade de tentar coisas mais "perigosas", como tentar executar exploits de dia zero e ver o que eles podem fazer.

Quão isolada uma máquina virtual pode ser feita do host? Devo (ou posso ?) configurar um firewall entre o convidado e o host? Os complementos de convidados são um risco de segurança? E os diretórios compartilhados?

No momento, a máquina convidada está executando o teste GNU/Linux Debian.

security virtualbox
  • 1 1 respostas
  • 11282 Views

1 respostas

  • Voted
  1. Best Answer
    0xdd
    2018-04-06T09:50:11+08:002018-04-06T09:50:11+08:00

    Vou começar dizendo que essa pergunta é muito ampla e mostra muito pouca pesquisa original, e essa resposta não deve ser vista como um incentivo a esse tipo de pergunta. Em vez disso, esta resposta espera fornecer algumas dicas de segurança extremamente básicas para pessoas que estão começando com a análise de malware.

    Trabalhando sob a suposição de que você está executando um malware conhecido e pesquisado anteriormente, a forma como você isola seu ambiente depende muito do que esse malware é capaz. Algumas regras gerais que se aplicam à maioria dos malwares modernos podem ser:

    • Isole sua VM da Internet. Isso pode ser tão simples quanto não configurar o encaminhamento de interface para a máquina convidada e impedir que o malware se comunique com quaisquer nós de comando e controle em potencial que possam direcioná-lo para agir de forma imprevisível.

    • Use um hipervisor apropriado. Existem alguns dos principais no mercado, incluindo VirtualBox, HyperV, QEMU e macOS's Hypervisor.framework, para citar alguns; alguns deles são ativamente visados ​​por malware e, dependendo da versão, podem ser vulneráveis ​​ao malware que sai da máquina convidada.

    • Definitivamente, não instale adições de convidados ou algum análogo de outra plataforma. O objetivo literal desse tipo de software é estabelecer a integração entre o convidado e o host, enfraquecendo efetivamente a separação entre eles. Não sou um pesquisador de malware, mas ficaria surpreso se não houvesse um malware direcionado especificamente para esse tipo de superfície.

    Para abordar alguns de seus pontos diretamente:

    Quão isolada uma máquina virtual pode ser feita do host?

    Neste ponto, uma VM pode ser totalmente isolada, mas algumas funções ainda precisam passar pelo host mais ou menos diretamente, com pouca proteção do hipervisor. Logo de cara, a maioria das máquinas virtuais não KVM (como o VirtualBox) não compartilhará um kernel com o sistema operacional host. Isso por si só serve como um bloqueador contra várias classes de exploração, principalmente bloqueando a capacidade de executar syscalls arbitrárias contra o kernel do host (com o notável asterisco de que uma implementação de camada de VM quebrada pode permitir que o malware contorne isso de maneiras menos óbvias).

    No entanto, sua VM ainda tem um espaço de processo dentro do hardware da máquina host - e embora isso geralmente não seja um risco porque os sistemas operacionais modernos fornecem isolamento de espaço de processo decente, ele ainda pode ser usado para explorar ataques de nível extremamente baixo, como um martelo de linha , onde um processo grava sequencialmente na memória de uma maneira específica até que possa ler blocos de memória adjacentes que não possui - permitindo efetivamente o vazamento de memória entre os processos.

    Também vale a pena notar que o isolamento tende a desaparecer um pouco quando você deseja fazer essencialmente qualquer tipo de E/S: entrada e saída necessariamente significam passagem, que expõe uma superfície de ataque que pode ser aproveitada para executar ações de host. Isso inclui passagem HID como um mouse e teclado, bem como coisas como passagem de rede - embora isso geralmente dependa de quão bem implementado a passagem de E/S é implementada em sua VM.

    Devo (ou posso?) configurar um firewall entre o convidado e o host?

    Depende, mas geralmente não é uma má ideia . A maioria das principais plataformas oferece suporte a firewalls no nível do hipervisor. Eles são no máximo tão permissivos quanto o firewall em sua máquina host, que por sua vez é tão permissivo quanto o firewall em sua LAN ou VLAN. Se você quiser aproveitar isso em vez de cortar totalmente o acesso à rede desconectando as interfaces de rede virtual, recomendo fazer uma pesquisa sobre quais portas e hosts seus alvos de malware selecionados e partir daí.

    Os complementos de convidados são um risco de segurança?

    Sim . Eles permitem todos os tipos de integrações entre sua máquina host e a máquina convidada e nem sempre apresentam especificações abertas onde você pode ver o que está sendo aberto; Veja acima.

    E os diretórios compartilhados?

    Isso depende de como você está fazendo isso, mas geralmente é uma má ideia . Muitos hipervisores fazem isso criando uma unidade virtual montada na máquina convidada cuja raiz está nesse diretório. Dependendo da implementação desse mecanismo, que pode variar um pouco entre as estruturas, você pode ou não estar seguro, dependendo de qual malware está tentando testar.


    Minha preocupação é que você fez muito pouca pesquisa sobre isso e pode acabar prejudicando sua máquina ou seus dados. Antes de continuar, aconselho você a examinar os diferentes mecanismos de isolamento em sistemas operacionais comuns (KVMs, como eles se integram a estruturas de virtualização de nível superior ( virtual-machine ), contêineres ( container ) e o chrootmecanismo ( chroot ) para nomear alguns), quando cada um é apropriado e o que eles podem ou não fazer. Nesse ponto, você poderá julgar melhor se pode ou não brincar com malware com segurança em um ambiente adequadamente isolado.

    Por fim, você não deve tentar trabalhar com malware novo ou pouco conhecido (a menos que seja um pesquisador de segurança experiente, mas esta resposta não se destina a pesquisadores de segurança experientes). Atores mal-intencionados são extremamente criativos quando se trata do que exploram e como o exploram. Para ter uma ideia disso, dê uma olhada nas palestras recentes do DEFCON que não estão centradas na engenharia social ou na obtenção de acesso físico por meios mecânicos.

    • 37

relate perguntas

  • Nenhum provedor padrão utilizável foi encontrado para seu sistema (VM não reconhecida)

  • É possível manter um servidor como refém se alguém tiver acesso root? [fechado]

  • Carregar dispositivo na inicialização

  • Acessar VM via IP estático (NAT?)

  • Existe um daemon syslog que implementa RFC 5848 "Signed Syslog Messages"?

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Como exportar uma chave privada GPG e uma chave pública para um arquivo

    • 4 respostas
  • Marko Smith

    ssh Não é possível negociar: "nenhuma cifra correspondente encontrada", está rejeitando o cbc

    • 4 respostas
  • Marko Smith

    Como podemos executar um comando armazenado em uma variável?

    • 5 respostas
  • Marko Smith

    Como configurar o systemd-resolved e o systemd-networkd para usar o servidor DNS local para resolver domínios locais e o servidor DNS remoto para domínios remotos?

    • 3 respostas
  • Marko Smith

    Como descarregar o módulo do kernel 'nvidia-drm'?

    • 13 respostas
  • Marko Smith

    apt-get update error no Kali Linux após a atualização do dist [duplicado]

    • 2 respostas
  • Marko Smith

    Como ver as últimas linhas x do log de serviço systemctl

    • 5 respostas
  • Marko Smith

    Nano - pule para o final do arquivo

    • 8 respostas
  • Marko Smith

    erro grub: você precisa carregar o kernel primeiro

    • 4 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Martin Hope
    rocky Como exportar uma chave privada GPG e uma chave pública para um arquivo 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Wong Jia Hau ssh-add retorna com: "Erro ao conectar ao agente: nenhum arquivo ou diretório" 2018-08-24 23:28:13 +0800 CST
  • Martin Hope
    Evan Carroll status systemctl mostra: "Estado: degradado" 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim Como podemos executar um comando armazenado em uma variável? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S Por que /dev/null é um arquivo? Por que sua função não é implementada como um programa simples? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 Como ver as últimas linhas x do log de serviço systemctl 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - pule para o final do arquivo 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla Por que verdadeiro e falso são tão grandes? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST
  • Martin Hope
    Bagas Sanjaya Por que o Linux usa LF como caractere de nova linha? 2017-12-20 05:48:21 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve