Buscar

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 17 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 17 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 17 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Continue navegando


Prévia do material em texto

Análise de Malwares
Aula 2: Análise Estática e Dinâmica Básica
Apresentação
Após consolidados os conceitos mínimos necessários, abordaremos as técnicas básicas utilizadas para fazer uma análise
estática e dinâmica e�caz.
Veremos, também, formas seguras para execução de artefatos maliciosos.
Objetivo
• Identi�car as técnicas de análise de estáticas básicas;
• Explicar os conceitos de uma máquina virtual;
• Identi�car as técnicas de análise de dinâmicas básicas.
Análise básica
Começamos nossa jornada da análise de malware com análise estática, que normalmente é a primeira etapa no estudo de
malware. Essa análise descreve o processo de análise do código e da estrutura de um programa para determinar seu �uxo e
suas intenções.
O programa em si não é executado neste momento, isso ocorrerá
durante a análise dinâmica.
Técnicas de análise estática básica
Apresentaremos algumas formas de extrair informações úteis de executáveis, discutindo as seguintes técnicas:
Uso de antivírus para veri�cação
do binário.
Uso de algoritmos de hashes para
identi�cá-lo.
Coleta de informações usando
ferramentas e leitura do cabeçalho.
Como já vimos em outra ocasião, cada técnica pode fornecer informações diferentes como pequenas peças de um quebra-
cabeça. Cabe ao analista juntá-las e montar o cenário propício para as respostas desejadas.
Antivírus
O primeiro passo ao analisar um artefato suspeito é executar uma checagem por meio de antivírus; alguém já pode ter feito o
trabalho manual e catalogado o referido malware.
Atenção
Porém, cabe a ressalva de que não se trata de uma solução perfeita; não se pode a�rmar que um binário é legítimo unicamente
porque não foi reconhecido por um software de antivírus comercial.
 O antivírus se baseia na assinatura de arquivos e em análises comportamentais.| Fonte: TheDigitalArtist / Pixabay.
De maneira geral, o antivírus se baseia em dois aspectos:
Clique nos botões para ver as informações.
Tais programas dependem, de maneira geral, de um banco de dados de funções e ações maliciosas de códigos suspeitos
já conhecidos, que chamaremos de assinaturas de arquivos.
Assinatura de arquivos 
Outro ponto é que os antivírus baseiam-se em análises comportamentais e de correspondência de padrões, as chamadas
heurísticas, para identi�car arquivos suspeitos.
Análises comportamentais 
Vejamos alguns aspectos que são pontos de atenção em relação ao antivírus:
Tempo limitado
O antivírus tem um tempo limitado para realizar um teste em um novo arquivo, bem como um tempo e
recurso limitado para dar uma resposta satisfatória ao usuário.
Desatualização
Um grande calcanhar de Aquiles dessa solução é a facilidade dos atacantes em modi�car seu código,
alterando assim a assinatura de seu programa e criando um artefato completamente novo, que muitas
vezes não é detectado pelo software de antivírus, pois simplesmente não está no banco de dados.
Heurística contornável
Por �m, a heurística, embora muitas vezes bem-sucedida na identi�cação de código malicioso
desconhecido, pode ser contornada por meio de sistemas de proteção a análises.
E�cácia relativa
Cada sistema de antivírus funciona de uma forma diferente, analisando o binário com uma heurística
distinta e com diversas assinaturas. Portanto, é útil analisar o artefato em vários programas antivírus
diferentes.
Dica
Para não obrigar a sua empresa a comprar diversas soluções diferentes, existem sites como o VirusTotal
(http://www.virustotal.com/), que permitem que você carregue um arquivo para varredura por vários mecanismos antivírus.
https://stecine.azureedge.net/webaula/estacio/go0682/aula2.html#collapse01-01
https://stecine.azureedge.net/webaula/estacio/go0682/aula2.html#collapse01-01
https://stecine.azureedge.net/webaula/estacio/go0682/aula2.html#collapse01-01
https://stecine.azureedge.net/webaula/estacio/go0682/aula2.html#collapse01-02
https://stecine.azureedge.net/webaula/estacio/go0682/aula2.html#collapse01-02
https://stecine.azureedge.net/webaula/estacio/go0682/aula2.html#collapse01-02
javascript:void(0);
javascript:void(0);
Atenção
Muito cuidado, não existe almoço grátis. Se o produto oferecido é grátis, a empresa tem outra fonte de renda. Portanto, em
hipótese alguma submeta arquivos sensíveis a esses sites, pois você estará expondo sua empresa.
Se não for o caso de informação sensível, esse tipo de solução é bastante útil.
O VirusTotal, por exemplo, gera um relatório que fornece o número total de mecanismos que marcaram o arquivo como
malicioso, o nome do malware e, se disponível, informações adicionais.
Figura 1 - Site do VirusTotal
 Fonte: VirusTotal (2020).
Hashing
O hash é um método comum usado para identi�car qualquer tipo de arquivo de forma exclusiva. Um algoritmo hash é uma
função que converte uma sequência de dados em uma saída numérica hexadecimal de comprimento �xo. O artefato é
submetido a essa função, que produz uma sequência exclusiva identi�cando o mesmo, uma espécie de impressão digital.
Comentário
Existem casos em que pode haver colisões da saída do hash, porém são raros.
Existem diversos tipos de funções hash; para nosso estudo de caso, utilizaremos a função Message-DigestAlgorithm 5 (MD5).
Por meio do programa certutil, disponível gratuitamente e que acompanha o Windows 10, calculamos o hash do programa
calc.exe, também disponível no Windows:
sintaxe: certutil -hash�le<arquivo a ser processado><tipo de algoritmo>
comando: certutil -hash�le C:\Windows\System32\calc.exe md5
Figura 2 - Hash Calc.exe
 Fonte: o Autor.
O hash MD5 de calc.exe é: 5da8c98136d98dfec4716edd79c7145f.
De posse desse valor único é boa prática que o artefato seja identi�cado por ele, e que seu valor seja compartilhado com
outros analistas para futuras referências, bem como seja feita uma busca online pelo hash para veri�car se tal artefato já foi
identi�cado.
Strings
Uma string é uma sequência de caracteres. Um programa contém strings se:
1
Contiver uma mensagem a ser impressa.
2
Conectar a uma URL ou, ainda.
3
Copiar um arquivo para um local especí�co.
Tais sequências deverão estar guardadas dentro do artefato. Pesquisar por essas informações pode ser uma maneira simples
de obter dicas sobre a funcionalidade de um programa.
Saiba mais
Você pode usar o programa Strings para pesquisar em um executável por qualquer sequência de caracteres, normalmente
armazenadas em formato ASCII ou Unicode.
O uso da ferramenta é bem simples: Ao abrir um terminal, basta digitar o seguinte comando:
sintaxe: strings.exe <opções><binário a ser analisado>
O Strings procura em um executável por strings ignorando o contexto e a formatação, a �m de detectar strings em um arquivo
inteiro. Por padrão, Strings procura uma sequência de três letras ou mais de caracteres, seguidos por um caractere de
terminação de string (byte nulo).
javascript:void(0);
javascript:void(0);
Figura 3 - Strings Calc.exe
 Fonte: o Autor.
comando: strings.exe -n 10 c:\Windows\System32\calc.exe
Realizando o comando com a opção -n 10, ou seja, tamanho mínimo da cadeia de 10 caracteres, podemos ver diversas
informações: Nomes de funções, nomes de bibliotecas importadas e nomes de seções. Essas informações auxiliarão o
analista durante sua investigação.
Comentário
A notação ASCII utiliza apenas 1 byte por caractere; já a notação Unicode utiliza 2 bytes. Em algumas situações, isso pode ser um
fator decisivo para o sucesso de uma análise. O programa strings já realiza buscas tanto em ASCII quanto em Unicode.
Artefatos maliciosos geralmente usam compactação ou ofuscação para
tornar seus arquivos mais difíceis de serem analisados. Programas
ofuscados são aqueles em que se tenta ocultar sua execução e programas
compactados (ou empacotados); são um subconjunto de programas
ofuscados nos quais o artefato é compactado e sua análise �ca prejudicada.
Ambas as técnicas limitarão a análise estática do artefato.
Figura 4 - Programa original e Programa empacotado
 Fonte: o Autor.
Ao executar um programacompactado, uma pequena rotina desempacotadora é executada para tornar o binário legível na
memória. Portanto, podemos concluir que, ao analisar esse tipo de programa estaticamente, apenas esse pequeno trecho será
legível. Essa é uma das técnicas de anti-análise que abordaremos mais adiante.
Saiba mais
A ferramenta PeiD auxilia na detecção de arquivos empacotados0 Podemos usar o PeiD para detectar o tipo de empacotador ou
compilador empregado para construir um aplicativo, facilitando a análise do arquivo.
Figura 5 - Uso do PeiD para detecção de empacotamento
 Fonte: Peid (2020).
Indicadores de compromentimento (IoC)
Indicadores de comprometimento (IoC), segundo a Microsoft, são eventos mal-intencionados conhecidos que indicam que
uma rede ou um dispositivo já foi violado. Ao contrário de de�nições de alerta, esses indicadores são considerados como
evidência de uma violação. Muitas vezes, eles são vistos depois que um ataque já foi executado e o objetivo foi atingido, como
roubar os dados.
javascript:void(0);
javascript:void(0);
Monitorar os IOCs também é importante durante as investigações forenses. Embora ele não possa fornecer a capacidade de
intervir em uma cadeia de ataque, coletar esses indicadores pode ser útil na criação de defesas melhores para possíveis
ataques futuros.
Durante as análises é vital a descoberta e o registro de todos os IoC; assim será possível criar um conjunto de informações que
culminarão em assinaturas a serem incorporadas nos sistemas de controle da rede. Tais assinaturas servirão de subsídios para
geração de alertas para futuras invasões.
Outras ferramentas de análise
PEview
Outra ferramenta fundamental para o analista é o PEview. Por meio dela é possível veri�car a estrutura e o conteúdo não só de
arquivos executáveis mas de DLL (Dynamic Link Library) e outros arquivos do tipo.
Uma DLL é uma biblioteca com funções que podem ser acessadas por outros programas do computador, pois ela exporta a
função implementada.
Dependency Walker
A ferramenta Dependency Walker é utilizada para mostrar todas as dependências importadas e utilizadas pelo artefato. Ela não
apenas informa as bibliotecas como também disponibiliza as funções importadas pelo binário, auxiliando no entendimento do
comportamento do artefato através das chamadas do sistema.
Atenção! Aqui existe uma videoaula, acesso pelo conteúdo online
Análise de malware em máquinas virtuais
Antes de executar qualquer artefato para realizar análises dinâmicas, devemos con�gurar um ambiente seguro.
Por quê?
Os malwares recentes podem ser cheios de surpresas; executá-lo em uma
máquina de produção pode tornar-se o vetor de infecção de outras
máquinas na rede.
Um ambiente seguro permitirá que você investigue o malware sem expor sua máquina,ou outras máquinas na rede, a riscos
inesperados e desnecessários.
Para con�gurar um ambiente seguro, podemos usar máquinas físicas ou virtuais dedicadas para estudar artefatos com
segurança. O malware pode ser analisado usando máquinas físicas individuais em redes isoladas com máquinas
desconectadas da Internet ou de qualquer outra rede para evitar que o mesmo se espalhe.
Máquina virtual
As máquinas virtuais são como um computador dentro de um computador.
javascript:void(0);
javascript:void(0);
javascript:void(0);
javascript:void(0);
Figura 6 - Componentes de uma máquina virtual
 Fonte: SIKORSKI (2012).
Entre as vantagens desse modelo estão:
Clique nos botões para ver as informações.
Um sistema operacional convidado em uma máquina virtual é instalado e funciona de forma isolada dentro do sistema
operacional da máquina física. Portanto, em tese, o artefato malicioso executado em uma máquina virtual não pode
prejudicar o sistema operacional principal.
Sistema operacional livre de risco 
Outra grande vantagem da máquina virtual são os “snapshots”, em que se tira uma fotogra�a do estado atual da máquina
e pode-se retornar a ela quando for da vontade do usuário. Logo, se um malware dani�car a máquina virtual, você pode
simplesmente reinstalar o sistema operacional na máquina virtual ou recuperar seu estado.
Snapshots 
Por outro lado, a máquina virtual conta possui as seguintes desvantagens:
https://stecine.azureedge.net/webaula/estacio/go0682/aula2.html#collapse01-03
https://stecine.azureedge.net/webaula/estacio/go0682/aula2.html#collapse01-03
https://stecine.azureedge.net/webaula/estacio/go0682/aula2.html#collapse01-03
https://stecine.azureedge.net/webaula/estacio/go0682/aula2.html#collapse01-04
https://stecine.azureedge.net/webaula/estacio/go0682/aula2.html#collapse01-04
https://stecine.azureedge.net/webaula/estacio/go0682/aula2.html#collapse01-04
Ausência de conexão com a
internet
Muitos arquivos maliciosos dependem de
uma conexão ativa para atualizações,
comando, controle e outros recursos e, por
isso, não se manifestam em ambientes
virtualizados. Contudo, podemos utilizar
alguns artifícios para minimizar essa
desvantagem ocasionada por alguns
artefatos protegidos em relação à análise.

Exigência de um computador
de alto nível
Outra desvantagem é a exigência de um
bom equipamento para suportar mais de
uma máquina ao mesmo tempo.
Con�guração da máquina virtual
• Software e instalação
Não fará parte dessa aula a escolha do virtualizador ou a instalação passo a passo de uma máquina virtual. Existem diversas
opções para tal, sendo as soluções mais comuns Virtual Box e VMWare, �cando a critério do analista a escolha do software
que mais se ajuste à necessidade.
Outro ponto importante é a instalação das máquinas virtuais. O sistema operacional Windows é protegido por licença, o que
impossibilita seu download indiscriminado na internet.
Dica
A própria Microsoft disponibiliza uma versão para desenvolvedor em seu site com uma licença de 90 dias para testes. Seu
conteúdo pode ser acessado em: https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/
As con�gurações da máquina devem ser ajustadas para que o usuário tenha uma boa experiência. Além disso, a máquina
virtual, como já vimos, exige bom equipamento, capaz de suportar mais de uma máquina ao mesmo tempo.
• Adaptadores de rede
Existe, porém, um ponto muito importante a ser discutido: Adaptadores de rede. Ao criar uma máquina virtual, três opções
básicas surgem ao usuário: Modo Bridge, modo NAT e modo Host-Only.
javascript:void(0);
javascript:void(0);
1
Bridge (túnel)
A máquina virtual se torna parte da mesma rede que a
máquina física, recebendo um IP na mesma faixa. De
semelhante forma, é enxergada pelo roteador de sua casa
como mais um dispositivo físico.
2
NAT
A máquina física mascara todas as atividades da máquina
virtual e funciona como um roteador, retransmitindo todas as
requisições. Se a máquina física possuir internet, a máquina
virtual também terá.
3
Host-Only
Permite conexão apenas entre a máquina virtual e a máquina
física. É possível con�gurar outras máquinas virtuais do
mesmo modo e permitir comunicações entre elas e a máquina
física, sem qualquer acesso à internet.
Atenção
A máquina de análise de artefatos sempre deve ser con�gurada em modo Host-Only.
Análise dinâmica básica
Como já sabemos, a análise dinâmica é a investigação realizada após a execução do artefato a �m de veri�car seu
comportamento. É considerada a segunda etapa do processo de análise, pois é realizada após a completude das técnicas de
análise estáticas disponíveis.
Podemos monitorar o comportamento do malware enquanto ele é executado ou pode ser feito um exame do sistema após a
sua execução, veri�cando as mudanças executadas e como o sistema foi afetado.
Nessa fase, as hipóteses levantadas durante a análise estática são con�rmadas ou refutadas, pois a simples existência de uma
função em um binário não signi�ca que ela será executada. A análise dinâmica é a maneira mais e�ciente de identi�car a
funcionalidade e os propósitos do artefato.
Exemplo
Por exemplo, se o malware for um keylogger, a análise dinâmica pode permitir que você localizeo arquivo usado para guardar as
informações digitadas em algum local no sistema. É possível veri�car os tipos de registros que ele mantém e, ainda, descobrir
para onde suas informações são enviadas.
Esse tipo de percepção seria mais difícil de obter usando apenas técnicas estáticas básicas.
SandBox
De�nições
Vejamos as de�nições de uma sandbox:
• É um mecanismo de segurança para executar programas não con�áveis em um ambiente seguro, sem necessidade de
grandes precauções para não prejudicar sistemas “reais”.
• É um ambiente virtualizado que muitas vezes simula serviços de rede de alguma forma para garantir que o artefato
testado funcione normalmente e realize todas as suas operações, gerando um relatório com todas as atividades
realizadas.
Saiba mais
Existem diversas opções disponíveis no mercado, inclusive de forma gratuita. Uma sandbox disponível e bastante utilizada pela
comunidade é a HybridAnalysis. Existe um plano pago com mais opções e um maior acesso, mas por ora o plano grátis nos
atenderá.
Ao acessar o site, podemos enviar nossa amostra e escolher o sistema operacional a ser testado: Windows, Linux e Android.
Depois, preenchemos os dados para recebimento do relatório e seu arquivo vai para uma �la para ser analisado. Caso ele já tenha
sido enviado, você já terá acesso ao relatório com os indicadores analisados.
Nunca submeta a ferramentas gratuitas arquivos com informações
sensíveis.
Desvantagens
Os sandboxes possuem algumas desvantagens importantes:
01
Não há possibilidade de executar o arquivo suspeito por meio da linha de comando, passando qualquer tipo de
argumento, por exemplo. Isso limita as possibilidades pois, nos casos em que o artefato é acionado por linha de
comando, não funcionará em uma sandbox padrão.
02
Além disso, nos casos em que a parte maliciosa apenas se manifesta após algum tempo, as sandboxes podem deixar
de analisar essa parte.
Execução do malware
Após tomadas todas as precauções já citadas, é hora de executar o artefato. Embora possa parecer simples executar um
binário clicando duas vezes ou executando-o via linha de comando, pode ser complicado iniciar DLLs maliciosas, pois o
Windows não possui uma forma direta para executá-las.
Abordaremos uma maneira de iniciar DLLs para poder realizar a análise dinâmica. O programa rundll32.exe está incluído em
todas as versões modernas do Windows e fornece um contêiner para executar uma DLL usando a seguinte sintaxe:
javascript:void(0);
javascript:void(0);
rundll32.exe DLLname, Export argumentos
Toda DLL exporta uma função e podemos veri�car seu nome por meio da ferramenta PEview na tabela de exportação. Vejamos
o exemplo a seguir.
Exemplo
João Wannacry veri�cou que havia uma dll estranha chamada resgate.dll e, ao analisá-la via PEview, percebeu que existiam duas
funções de exportação: Criptografar e descriptografar.
Curioso, João procurou na internet como executar a função de uma DLL, executando o seguinte comando: c:\>rundll32.exe
resgate.dll, descriptografar.
Nada aconteceu, então ele executou c:\>rundll32.exe resgate.dll, criptografar.
Imediatamente, todos os arquivos de sua máquina começaram a ser criptografados e, após um tempo, surgiu uma mensagem na
tela cobrando um resgate para recuperação dos mesmos. Isso aconteceu porque João realizou a execução em um ambiente que
não era seguro.
Monitoramento
Process Monitor
O Process Monitor, ou procmon, é uma ferramenta de monitoramento avançada para Windows que fornece uma maneira de
monitorar certos registros, sistemas de arquivos, redes, processos e a�ns.
Embora o procmon capture muitos dados, ele não captura tudo. Ele
pode perder algumas atividades maliciosas ocultadas por rootkits e
chamadas de grá�cas. Mesmo sendo uma ferramenta útil, geralmente
não é utilizado para registrar a atividade da rede, pois não funciona de
forma consistente no Windows.
O Procmon monitora todas as chamadas de sistema durante o seu funcionamento. Como existem muitas chamadas de
sistema em uma máquina Windows, às vezes mais de 50.000 eventos por minuto, geralmente é impossível examinar todas
elas. Para isso, utilizamos o �ltro disponível para mostrar apenas determinadas operações que nos interessam. Ele fornece as
seguintes informações por padrão:
javascript:void(0);
javascript:void(0);
1
Registro
Ao examinar as operações de registro, você pode saber como
um malware se instala no mesmo.
2
Sistema de arquivos
Explorar a interação do malware com o sistema de arquivos
pode revelar todos os arquivos criados, acessados e/ou
modi�cados.
3
Atividade do processo
A investigação da atividade do processo pode dizer se o
malware gerou processos adicionais.
4
Rede
A identi�cação de conexões de rede pode mostrar a porta e o
host que o malware está usando para se comunicar.
Process Explorer
O Process Explorer é outra ferramenta útil para analisar os processos que estão em execução na memória, organizando-os em
forma de árvore e mostrando a hierarquia entre eles. Além disso, pode mostrar todas as DLL que foram carregadas na memória
ao clicar na propriedade do processo.
Outra informação útil é a possibilidade de comparação de cadeia de caracteres da imagem estática do binário com as
informações carregadas em memória. Essa opção mostra a diferença criada por um empacotador; em memória, todos os
caracteres são revelados.
Regshot
Regshot é uma ferramenta de comparação de registro que permite tirar e comparar duas fotogra�as do registro. Seu uso é
simples:
 Fonte: O autor.
Wireshark
Uma aplicação capaz de interceptar e analisar pacotes de rede é essencial ao analista. Usaremos o Wiresharkpara esse �m,
uma plataforma de código aberto que recebe diversas atualizações e plugins da comunidade, fornecendo visualização, análise
de �uxo de pacotes e análise aprofundada de pacotes individuais.
O Wireshark pode ser usado tanto para o bem quanto para o mal:
javascript:void(0);
javascript:void(0);
javascript:void(0);
javascript:void(0);
javascript:void(0);
javascript:void(0);
Depurar problemas
Pode ser usado para analisar o tráfego de
redes internas, a �m de depurar problemas
de aplicativos e estudar protocolos em
execução. 
Detectar senhas
Também pode ser usado para detectar
senhas, fazer engenharia reversa de
protocolos de rede, roubar informações
con�denciais e capturar conversas
trafegando nas redes vizinhas.
Comentário
O Wireshark irá nos ajudar a entender como o artefato malicioso realiza a comunicação de rede, interceptando os pacotes
enquanto se comunica (ou enquanto tenta se comunicar). Para isso, basta conectar-se à Internet ou simular uma conexão, iniciar
a captura de pacotes com o Wireshark e, por �m, executar o malware.
Atenção! Aqui existe uma videoaula, acesso pelo conteúdo online
Falsi�cação de rede
O artefato geralmente tenta se comunicar com um servidor de comando e controle, ou tenta fazer download de outro arquivo
malicioso. Para isso, podemos criar uma rede falsa e obter rapidamente indicadores de rede, sem realmente se conectar à
Internet. Esses indicadores podem incluir nomes DNS, endereços IP e assinaturas de pacote.
Para falsi�car uma rede com sucesso, devemos evitar que o malware perceba que está sendo executado em um ambiente
virtualizado. Ao combinar as ferramentas discutidas aqui com uma con�guração de rede de máquina virtual sólida, você
aumentará muito suas chances de sucesso.
Como isso deve ser feito?
REMnux
O REMnux é um sistema operacional personalizado criado para auxiliar a análise de malware e engenharia reversa e nós
utilizaremos essa distribuição.
Por que utilizar um sistema operacional?
INetSim
Existe uma ferramenta fantástica criada para simular serviços comuns de Internet: INetSim, um pacote de software gratuito
baseado em Linux.
Atenção! Aqui existe uma videoaula, acesso pelo conteúdo online
javascript:void(0);
javascript:void(0);
javascript:void(0);
javascript:void(0);
01
O INetSim é a ferramenta gratuita mais fácil e ágil para fornecer serviços falsos, permitindoque você analise o
comportamento de rede dos artefatos emulando serviços como HTTP, HTTPS, FTP, IRC, DNS, SMTP e outros. Por meio
de um comando simples, as portas são de�nidas por padrão mas podem ser modi�cadas facilmente.
02
Alguns dos melhores recursos do INetSim são integrados à simulação de servidor HTTP e HTTPS. Por exemplo, o
INetSim pode fornecer qualquer arquivo solicitado. No caso de um malware solicitar um JPEG de um site para
continuar sua operação, o INetSim responderá com um JPEG formatado corretamente, de forma automática.
03
Embora essa imagem possa não ser o arquivo que o artefato esteja procurando, o servidor não retorna um erro 404,
ou outro erro, e sua resposta, mesmo que incorreta, pode manter o artefato em execução.
04
O INetSim também pode registrar todas as solicitações e conexões de entrada, algo bastante útil para determinar se a
atividade é legítima,se está se conectando a um serviço padrão ou para registrar as solicitações ilegítimas para futura
análise. Por ser extremamente con�gurável, é possível de�nir a página ou o item retornado após uma solicitação.
Exemplo
Por exemplo, ao veri�car que o malware está procurando uma página da web especí�ca antes de continuar a execução, o INetSim
fornece a página.
Atividade
1. A análise estática consiste em veri�car o conteúdo do código e da estrutura de um programa para determinar seu �uxo. Nessa
primeira etapa levanta-se alguns IoC (Índices de comprometimento). São exemplos de IoC, exceto:
a) Hash MD5.
b) Endereço IP.
c) Tamanho do arquivo.
d) Cadeias de caracteres suspeitas.
e) Endereços de URL.
2. São vantagens do uso de máquinas virtuais durante a análise de malware, exceto:
a) Rápida destruição de uma máquina.
b) Criação de estruturas de rede.
c) Criação de imagens (snapshots).
d) Possuir um ambiente virtualizado.
e) Contenção de artefatos.
3. Analise as a�rmações abaixo:
I. Regshot é utilizado para veri�car as modi�cações no registro, antes e depois da execução do malware;
II. Wireshark é uma aplicação usada para veri�car se um artefato está empacotado;
III. Process Monitor possibilita análise de chamadas do sistema feitas pelo artefato.
Quais das a�rmações são verdadeiras?
a) Apenas I.
b) Apenas III.
c) I e III.
d) I e II.
e) I, II e III.
Notas
Referências
ANLEY, C. The shellcoder’s Handbook: discovering and exploring security holes. 2.ed. [S.1.]: WileyPublishing, Inc., 2007.
SIKORSKI,M.; HONIG, A. Practical Malware Analysis: The Hands-On Guide to Dissecting Malicious Software (1st. ed.). No Starch
Press,2012.
Próxima aula
• Uma visão do código Assembly dentro de uma arquitetura Intel x86;
• Ferramentas para análise de código assembly;
• Reconhecendo instruções em C e seu código em assembly.
Explore mais
Vimos uma in�nidade de ferramentas e falamos das propriedades das mesmas, bem como os locais para download. Cabe a
você criar seu ambiente de análise, preparar suas máquinas virtuais e baixar as ferramentas. Acesse ao seguinte repositório:
https://github.com/mikesiko/PracticalMalwareAnalysis-Labs e faça as análises dos binários da pasta 1 e 3. Você já tem
conhecimento su�ciente para analisar e levantar os IoCs dos artefatos. Use o Virustotal e o Hybridanalysis, mas faça
manualmente, procure por strings, utilize as ferramentas apresentadas e abuse de sua criatividade.
javascript:void(0);
javascript:void(0);