Configurar o Cuckoo Sandbox Passo a Passo(Malware Analysis Tool)

Pensei em escrever este artigo porque o processo de configuração do Cuckoo é complexo e demorei muito tempo a configurá-lo. E queria ajudar outros a evitar esses problemas porque não há muitos guias que sejam precisos e atualizados.

Cuckoo é uma ferramenta de análise automatizada de malware de código aberto, que permite analisar muitos arquivos maliciosos diferentes que afetam diferentes sistemas operacionais como Windows, Linux, MacOS e Android.

Como alguns de vocês sabem, há dois tipos de análise de malware,

1. Análise estática de malware – Análise de malware sem realmente executá-lo. Considerará recursos como nome de arquivo, checksums MD5 ou hashes, tipo de arquivo, tamanho do arquivo e reconhecimento por ferramentas de detecção de antivírus,

2. Análise dinâmica de malware – Analisando malware executando-o de fato, e analisando seus comportamentos como chamadas de API, uso de memória, tráfego de rede, etc.(Cuckoo é uma ferramenta de análise dinâmica de malware)

O que é Sandboxing?

Na segurança do computador, executamos programas ou códigos desconhecidos, não testados ou não confiáveis, programas em ambientes virtuais sem colocar nossa máquina host ou sistema operacional em risco. Isto é chamado sandboxing. Cuckoo nos dá a facilidade de rodar uma aplicação ou arquivo desconhecido e não confiável dentro de um ambiente isolado e analisar seu comportamento.

Configurando a máquina host

Minha máquina host é Ubuntu 18.04 com 16GB de RAM. Aconselho-o vivamente a usar uma máquina Linux como máquina anfitriã. Antes de instalar o Cuckoo em nossa máquina host, é necessário instalar algumas bibliotecas de python e pacotes de software. Além disso, note que o python 2.7 é necessário para executar o Cuckoo. (O Cuckoo não suporta versões antigas do python ou python 3).

  • Atualize as informações do pacote e faça o download das atualizações disponíveis.
    sudo apt-get update
    sudo apt-get upgrade
  • Next, instalar as dependências do python necessárias para o Cuckoo:
    sudo apt-get install python python-pip python-dev libffi-dev libssl-dev
    sudo apt-get install python-virtualenv python-setuptools
    sudo apt-get install libjpeg-dev zlib1g-dev swig
  • Para usar a Interface Web baseada no Django, o MongoDB é necessário:
    sudo apt-get install mongodb
  • Para usar o PostgreSQL como base de dados o PostgreSQL também terá que ser instalado:
    sudo apt-get install postgresql libpq-dev

Passo seguinte é instalar o software Virtual Machine na sua máquina host. Cuckoo recomenda o uso do VirtualBox como o software VM. É recomendado instalar o VirtualBox versão 5.2. Você pode encontrar a distribuição neste site aqui ou você pode instalá-la via Ubuntu Software application.

  • Instalar tcpdump para despejar a atividade de rede executada durante a execução do malware.sudo apt-get install tcpdump
  • Instalar M2Crypto. Se você já tem swig instalado, rodar o segundo comando é suficiente.
    sudo apt-get install swig
    sudo pip install m2crypto==0.24.0

Após instalar estes pacotes, agora você pode instalar o Cuckoo no seu sistema. Para instalar, execute os seguintes comandos. Ou você pode simplesmente baixar o arquivo zip.

sudo pip install -U pip setuptools
sudo pip install -U cuckoo

Depois de instalar o Cuckoo, você tem que configurar corretamente o VirtualBox e sua rede.

  • Você pode criar o “Host-Only Adapter” executando o seguinte comando:
    vboxmanage hostonlyif create

Este comando irá criar a interface host vboxnet0.

  • Definir o endereço IP da interface vboxnet0 que você criou antes.

vboxmanage hostonlyif ipconfig vboxnet0 – ip 192.168.56.1

Next, você pode criar sua máquina virtual no VirtualBox e instalar o SO. O Windows 7 é recomendado. Depois de instalar o SO, você tem que configurar o adaptador de rede VM para “Host Only Adapter”. O que é fácil fazendo-o a partir da GUI,

>

>

Configurar o “Adaptador somente para Host” nas configurações da VirtualBox VM

Depois disso, você precisa configurar o encaminhamento de IP para que uma conexão de Internet seja roteada da máquina host para a VM hóspede. Aqui a interface atribuída à nossa VM é a vboxnet0 e o endereço ip da VM é 192.168.56.101 que está na sub-rede de 192.168.56.0/24. E a interface de saída que está conectada à internet é eth0. Ela pode mudar em situações como quando você está conectado à internet via wifi. Você pode encontrar a interface que está conectada à internet por este comando, ifconfig. Aqui eu estou assumindo que a interface conectada à internet é eth0,

Após executar estes comandos você tem que habilitar o encaminhamento de IP no kernel. Para isso, você tem que executar os seguintes comandos:

echo 1 | sudo tee -a /proc/sys/net/ipv4/ip_forward
sudo sysctl -w net.ipv4.ip_forward=1

Estas regras só serão válidas até a próxima reinicialização. Para verificar se você configurou as regras corretamente, você pode executar este comando:

sudo iptables -L

Configurando a máquina Guest

Agora você pode começar a configurar a máquina guest que tem instalado o windows7. Primeiro, configure a configuração do Adaptador de Rede como segue,

  • Após alterar as configurações de rede, você tem que fazer as seguintes personalizações para o VM.
  1. Desabilitar o Windows Update e o Windows Firewall. (Imagem)

2. Alterar as Configurações de Controle de Conta de Usuário. (Imagem)

>

3. Instale as suas versões preferidas de Adobe Reader, Adobe Flash Player, Microsoft Office, e Java. (opcional)

4. Instale o python 2.7 para Windows – Você pode baixar o python 2.7 daqui.

5. Faça o upload do arquivo agent.py da sua máquina hospedeira que pode ser encontrado no diretório ~/.cuckoo/agent. Coloque-o na pasta de inicialização do windows localizada em “C:\Users\%USERNAME%\AppData\Roaming\Microsoft\Windows\StartMenu\Programs\Startup”. Após reiniciar a VM você poderá ver um terminal aberto na VM. (Você pode habilitar o arrastar e soltar nas configurações do VirtualBox. Habilite apenas para Drag and Drop do host para guest).

Change Cuckoo Software Configuration

Os arquivos de configuração de cuckoo estão localizados no diretório ~/.cuckoo/conf. Você pode abrir esses arquivos no gedit usando este comando:

sudo gedit cuckoo.conf

Faça as seguintes alterações nos arquivos conf.

cuckoo.conf

auxiliary.conf

>

>

virtualbox.conf

Mude o nome do parâmetro para o seu nome VM. O nome padrão definido é ‘cuckoo1’.

processing.conf

reporting.conf

>

>

1240>

Agora você terminou a configuração, você pode iniciar o Cuckoo .

Analisando usando o Cuckoo

Executar seguindo comandos para iniciar o Cuckoo e a interface web do Cuckoo. Execute-os em duas janelas de terminal separadas.
Terminal #1: cuckoo
Terminal #2: cuckoo web runserver

Então você pode acessar a interface web indo para este endereço no seu navegador web favorito:
goto: localhost:8000

A interface web parecerá semelhante a este quando carregada:

>

Leave a Reply