Isole Malware no VirtualBox e emule respostas falsas [closed]

0

Eu tenho alguns malwares que quero estudar, interceptando suas conexões "telefônicas domésticas", farejando onde e como ele está tentando se conectar e, de alguma forma, fingindo que sou o host ao qual ele está se conectando, responda e assim, tentar aprender seu "protocolo".

Eu assumo que o VirtualBox fará parte da solução. Mas também notei que vou precisar de precauções especiais para o meu LAN não é exposta .

Então, minha pergunta é:

  • Como configurar o convidado do VirtualBox para que ele não possa, por qualquer meio, acessar meus arquivos de PC (o host) ou minha LAN? Da minha pergunta anterior, acho que preciso desativar a rede no convidado. Mas então ...

  • Como posso (no host ou no convidado) farejar todas as conexões que ele está tentando fazer? Hostnames, IPs, portas, conteúdo, etc? Instalando o Wireshark? Onde, no host ou convidado? Como?

  • Uma vez que conheço os IPs / nomes de host, como posso (novamente, em convidado ou host) fingir que o malware é esse hostname e responder suas conexões, comunicando-me com ele? Instalando o Apache e usando scripts cgi / php etc? Onde e como?

Eu sei que esta é uma questão complexa, para simplificar: o que realmente preciso é o esboço de uma solução, uma estratégia que satisfaça os objetivos. A lista de ferramentas, como elas se encaixam e uma descrição geral de como isso funcionaria.

Algo como, exemplo: "Configure a rede VirtualBox para o modo xxx, instale o wireshark no guest para farejar, edite /etc/yyyy para que todas as conexões sejam redirecionadas para o daemon zzz, que por sua vez invocará seus scripts para que você possa responder ao malware"

Informação útil:

  • O host é o Ubuntu 12.04
  • O malware é um java jar , portanto, o convidado pode ser qualquer coisa
  • A maioria das conexões são solicitações HTTP / HTTPS simples (mas pode haver mais do que eu não sei)
por MestreLion 01.05.2013 / 09:03

1 resposta

3

Acho mais fácil descompilar os arquivos .class que estão compactados no .jar e inspecionar o código-fonte. Ou inspecione o bytecode diretamente, com o javap. Isso não é aplicável se você precisar inspecionar bibliotecas nativas no jar.

Para responder à sua pergunta: Defina o modo de rede da VM como Rede Interna e compartilhe a rede interna com outra VM, que tenha o Squid e desempenhe o papel de um proxy, ou tenha o Apache / nc e finja ser o proxy. máquina remota.

Se você quiser acesso à Internet, tenha 2 controladores de rede no proxy: um na rede interna e outro como ponte ou NAT. Mas você terá esse problema novamente, o modo de rede não irá distinguir sua LAN do resto da Internet.

Para monitorar conexões, você pode usar netstat , possivelmente em combinação com watch .

Para farejar pacotes, você pode usar o Wireshark no proxy.

Para falsificar conexões em um nível baixo, procure no netcat ( nc ). Para falsificar conexões HTTP, defina um IP estático no proxy ou altere o /etc/hosts da VM infectada para redirecionar as conexões para o IP do proxy.

    
por ignis 01.05.2013 / 09:51