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,
>

>
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.
- 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