análise estática de malware com o pev
TRANSCRIPT
2 / 16www.4linux.com.br
Análise estática de malware com o pev
3 / 16www.4linux.com.br
Análise estática x dinâmica
O projeto pev
Demonstração
Planos futuros
Contribuição
Agenda
4 / 16www.4linux.com.br
Estática Primeira análise Não roda o binário Útil para relatórios Fácil de ser automatizada Rápida Baseada em interpretação do PE
Dinâmica Forte interação humana Analisa todo o binário Automatização mais complexa Baseada em engenharia reversa
Análise estática x dinâmica
5 / 16www.4linux.com.br
Para uma análise estática é preciso: Conhecer a arquitetura do PE Interpretar os cabeçalhos do PE Tratar informações e exibir
Na API do Windows há várias funções para obter informações de um PE.
Vários analisadores estáticos foram construídos com base na API do Windows.
Análise estática x dinâmica
6 / 16www.4linux.com.br
Analisador PEInfo (proprietário, somente Windows GUI)
Análise estática x dinâmica
7 / 16www.4linux.com.br
Um kit de ferramentas para trabalhar com PE
Escrito em C, sem uso de API do Windows
Multiplataforma (testado em Windows, Linux e Mac OS)
100% Software Livre, GPLv3
Ferramentas de linha de comando, facilmente scriptáveis
Baseado em uma biblioteca própria batizada de libpe
O projeto pev
8 / 16www.4linux.com.br
O projeto pev
libpe
Programa 1 Porgrama 2 Programa 3 Programa 4
glibc
9 / 16www.4linux.com.br
readpe leitor de cabeçalhos, seções e informações básicas do
PE.
packid detector de packers genérico e EP fake
pedis disassembler de funções e seções
pesec detector de features de segurança (ASLR, DEP, Stack
Cookies)
O projeto pev
10 / 16www.4linux.com.br
petls busca funções TLS callback em binários PE
rva2ofs converte um RVA (Relative Virtual Address) em raw file
offset.
ofs2rva
O projeto pev
11 / 16www.4linux.com.br
Análise básica com readpe
Busca de entrypoint falso com packid
Detecção de TLS callbacks com petls
Stack cookies com pesec
ASLR e DEP com pesec
Demonstração
12 / 16www.4linux.com.br
pesteg esteganografia em PE
pestr uso de biblioteca de emulação de código x86 para
decodificar strings em malwares
pecarve extração de PE em dumps e dispostivos
pedec descompilador C
Planos futuros
13 / 16www.4linux.com.br
peres extrator de resources
pehash hash de seções e funções inteiras
pesniff captura de PE em tráfego de rede
petutorial tutorial interativo sobre as estruturas do PE
Planos futuros
14 / 16www.4linux.com.br
Software livre não vive sozinho!
Testes de compilação e uso
Documentação em português e inglês
Programação em C básico
Conhecimento do PE
Idéias, críticas, sugestões...
Contribuição
15 / 16www.4linux.com.br
Repositório de desenvolvimento:http://github.com/merces/pev
Versão estável:http://pev.sf.net
Lista de discussão:https://lists.sourceforge.net/lists/listinfo/pev-devel
Canal no IRC #MenteBinaria em irc.freenode.net
Contribuição
16 / 16www.4linux.com.br
Obrigado
Fernando Mercê[email protected]
www.4linux.com.brwww.hackerteen.comtwitter.com/4LinuxBR
twitter.com/MenteBinaria
Tel: 55-11-2125-4747