SlideShare uma empresa Scribd logo
1 de 20
Baixar para ler offline
CONSTRUINDO UM
 ANALISADOR DE
  EXECUTÁVEIS
    Fernando Mercês
 Vale Security Conference 2011
  São José dos Campos - SP
$ whoami

- Consultor de projetos com software livre na 4Linux
- Bacharelando em Ciência da Computação
- Foco em infraestrutura e segurança da aplicações
- Membro ativo de diversas comunidades de software livre
- A+, LPIC-2, MCP, MCITP
- Palestrante em eventos como FISL, LinuxCon e H2HC
- Idealizador do Universidade Livre, evento que leva o SL às
universidades brasileiras
- Autor do Mente Binária (http://www.mentebinaria.com.br)
- Criador do pev (analisador de arquivos PE)
- Criador do USBForce (antivírus para pen-drive)
- Mantenedor do T50 (ferramenta para stress em redes)
Agenda

- O que faz um analisador
- O executável
- Estudo do formato
- pev
- Perguntas
O que faz um
 analisador?
Interpreta o formato do executável para
exibir informações do tipo:

- Entrypoint (início do programa)
- Arquitetura alvo / tipo do executável
- Requisitos para execução
- Seções
- Proteções
- E qualquer outra informação útil para
quem analisa
Como todo arquivo, não passa de uma
sequência de bits. A diferença está em
como interpretamos:

       Binário    01010101
       Decimal    85
       Hexa       55
       ASM x86    PUSH EBP
       ASCII      U
O executável
- Além do código, contém informações
para ser devidamente executado no SO
alvo.

- Pode ser editado como qualquer outro

- Possui um formato / especificação

- Documentação do formato disponível na
internet. Mais usados são ELF e PE.
Estudo do
 formato
- Busca da disposição dos campos no
executável.

- Digamos que a documentação
especifique:

 -> Um arquivo PE válido começa com
um campo de dois bytes chamado magic
number, onde o primeiro byte é o 0x4D e o
segundo é o 0x5A, sempre.
Então basta validar:
int verify(char *filename)
{
     FILE *fp = fopen(filename, "rb");
     char bytes[2];
     fread(bytes, 2, 1, fp);
     fclose(fp);
     if (bytes[0]=='M' && bytes[1]=='Z')
          return 1;
     return 0;
}
-> 16 bytes a frente da assinatura PE, está
o checksum, que tem 2 bytes de tamanho.
unsigned short checksum;

fseek(fp, 16, SEEK_CUR);
fread(&checksum, 2, 1, fp);
printf("%xn", checksum);
- Para facilitar, é bem possível que o SO
tenha estruturas já prontas para leitura do
formato.
/* COFF header (trecho da windows.h) */
typedef struct _IMAGE_FILE_HEADER {
     WORD Machine;
     WORD NumberOfSections;
     DWORD TimeDateStamp;
     DWORD PointerToSymbolTable;
     DWORD NumberOfSymbols;
     WORD SizeOfOptionalHeader;
     WORD Characteristics;
} IMAGE_FILE_HEADER;
- Depois de ler as estruturas, o analisador
deve dar opção de mostrar os valores dos
campos para o usuário.

- É possível detectar proteções como
packers, crypters etc.

- Existe muita informação dentro de um
binário executável. Tudo o que o
analisador precisa fazer é interpretar os
bytes brutos (raw).
pev
the pe file analyzer
- Software livre (GPLv3)

- Multiplataforma (ANSI C)

- Suporte a PE32/PE32+

- Imprime todos os cabeçalhos do PE

- Detecta TLS callback, ASLR e DEP/NX

- Exibe resources no primeiro nível
$ pev -c psftp.exe 
COFF header:
 Machine:                   0x14c - Intel 386 and compatible (32-bits)
 Number of sections:        4
 Date/time stamp:           1177846971 (Sun, 29 Apr 2007 11:42:51 UTC)
 Symbol Table offset:       0
 Number of symbols:         0
 Size of optional header:   0xe0
 Characteristics:           0x10f (0000000100001111)
                            base relocations stripped
                            executable image
                            line numbers removed (deprecated)
                            local symbols removed (deprecated)
                            32-bit machine
$ pev -rp psftp.exe 
Resources (.rsrc section):
 Type:                       RT_ICON
 Offset:                     0x28
 Type:                       RT_GROUP_ICON
 Offset:                     0x68
 Type:                       RT_VERSION
 Offset:                     0x80
  Product Version:           0.60.0.0


$ pev -o psftp.exe  | head
Optional (PE) header:
 Magic number:               0x10b (PE32)
 Linker major version:       7
 Linker minor version:       10
 Size of .code section:      0x35000
 Size of .data section:      0x1a000
 Size of .bss section:       0
 Entry point:                0x2d812
 Address of .code section:   0x1000
 Address of .data section:   0x36000
TODO...

- Detecção de packers
- Disassembly de seções
- Formatação de saída (CSV, XML...)
- Extração de resources
- Exibir imports e exports
- Detecção do compilador
- Detecção do idioma do binário
- CRC32
- Detecção de strings inclusive XOReadas
Conteúdo: Fernando Mercês (CC 3.0)
baseado no paper "Construindo um
analisador de executáveis".

Template: Frank Skibby Jensen

http://pev.sf.net
@MenteBinaria
www.mentebinaria.com.br

Perguntas?

Mais conteúdo relacionado

Mais procurados

Mais procurados (16)

Controle lpt em_c_sharp
Controle lpt em_c_sharpControle lpt em_c_sharp
Controle lpt em_c_sharp
 
Ficheiros texto
Ficheiros textoFicheiros texto
Ficheiros texto
 
How stuff works
How stuff worksHow stuff works
How stuff works
 
PHPSC Conference 2010 - Desenvolvimento de Extensões PECL
PHPSC Conference 2010 - Desenvolvimento de Extensões PECLPHPSC Conference 2010 - Desenvolvimento de Extensões PECL
PHPSC Conference 2010 - Desenvolvimento de Extensões PECL
 
Filas encadeadas
Filas encadeadasFilas encadeadas
Filas encadeadas
 
A Linguagem Lua - Uma abordagem inicial
A Linguagem Lua - Uma abordagem inicialA Linguagem Lua - Uma abordagem inicial
A Linguagem Lua - Uma abordagem inicial
 
PL/Python: Programando em Python no PostgreSQL
PL/Python: Programando em Python no PostgreSQLPL/Python: Programando em Python no PostgreSQL
PL/Python: Programando em Python no PostgreSQL
 
Ficheiros em JAVA
Ficheiros em JAVAFicheiros em JAVA
Ficheiros em JAVA
 
Sapo Sessions PHP
Sapo Sessions PHPSapo Sessions PHP
Sapo Sessions PHP
 
1001 Execuções de Código Remoto
1001 Execuções de Código Remoto1001 Execuções de Código Remoto
1001 Execuções de Código Remoto
 
Unix Sockets
Unix SocketsUnix Sockets
Unix Sockets
 
Pilhas encadeadas
Pilhas encadeadasPilhas encadeadas
Pilhas encadeadas
 
Java 15
Java 15Java 15
Java 15
 
Linguagens de Script: Caso de Estudo Lua
Linguagens de Script: Caso de Estudo LuaLinguagens de Script: Caso de Estudo Lua
Linguagens de Script: Caso de Estudo Lua
 
Files e File System PHP (Português)
Files e File System PHP (Português)Files e File System PHP (Português)
Files e File System PHP (Português)
 
Introdução a Exploração de Software
Introdução a Exploração de SoftwareIntrodução a Exploração de Software
Introdução a Exploração de Software
 

Destaque (8)

Manualinstalacao
ManualinstalacaoManualinstalacao
Manualinstalacao
 
Rp
RpRp
Rp
 
Dominios y Hosting
Dominios y HostingDominios y Hosting
Dominios y Hosting
 
Redes rosendo
Redes rosendoRedes rosendo
Redes rosendo
 
Lista 2 (1)
Lista 2 (1)Lista 2 (1)
Lista 2 (1)
 
Anejos
AnejosAnejos
Anejos
 
Proyecto editorial con PLP
Proyecto editorial con PLPProyecto editorial con PLP
Proyecto editorial con PLP
 
2
22
2
 

Semelhante a Vale Security Conference - 2011 - 11 - Fernando Mercês [Octane Labs] [Coding 40º]

Análise de Código Malicioso no Linux
Análise de Código Malicioso no LinuxAnálise de Código Malicioso no Linux
Análise de Código Malicioso no Linuxcrimesciberneticos
 
Python e Linux para a criação de ferramentas para pentest
Python e Linux para a criação de ferramentas para pentestPython e Linux para a criação de ferramentas para pentest
Python e Linux para a criação de ferramentas para pentestEdson Celio
 
Principais conceitos técnicas e modelos de programação paralela
Principais conceitos técnicas e modelos de programação paralelaPrincipais conceitos técnicas e modelos de programação paralela
Principais conceitos técnicas e modelos de programação paralelaIntel Software Brasil
 
software tipos.ppt
software tipos.pptsoftware tipos.ppt
software tipos.pptLinaKelly3
 
Engenharia Reversa no Linux
Engenharia Reversa no LinuxEngenharia Reversa no Linux
Engenharia Reversa no LinuxFernando Mercês
 
Cherrypy - um framework para desenvolvimento rápido de aplicações web
Cherrypy - um framework para desenvolvimento rápido de aplicações webCherrypy - um framework para desenvolvimento rápido de aplicações web
Cherrypy - um framework para desenvolvimento rápido de aplicações webAlvaro Oliveira
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...tdc-globalcode
 
Análise de malware com software livre
Análise de malware com software livreAnálise de malware com software livre
Análise de malware com software livreDiego Santos
 
Tecnologias para mineração de dados nas nuvens
Tecnologias para mineração de dados nas nuvensTecnologias para mineração de dados nas nuvens
Tecnologias para mineração de dados nas nuvensAlessandro Binhara
 
pgBouncer: um aglomerador de conexões para PostgreSQL
pgBouncer: um aglomerador de conexões para PostgreSQLpgBouncer: um aglomerador de conexões para PostgreSQL
pgBouncer: um aglomerador de conexões para PostgreSQLelliando dias
 
Slide curso metasploit
Slide curso metasploitSlide curso metasploit
Slide curso metasploitRoberto Soares
 
Aula 7 conjunto de instrucoes
Aula 7   conjunto de instrucoesAula 7   conjunto de instrucoes
Aula 7 conjunto de instrucoesCratuscb
 
Aula - Comandos Linux - Parte 1
Aula - Comandos Linux - Parte 1Aula - Comandos Linux - Parte 1
Aula - Comandos Linux - Parte 1Leo Amorim
 
Comandos Linux Parte 1
Comandos Linux Parte 1Comandos Linux Parte 1
Comandos Linux Parte 1Leo Amorim
 
Introdução à Programacao em Processing
Introdução à Programacao em Processing Introdução à Programacao em Processing
Introdução à Programacao em Processing Jorge Cardoso
 
I Workshop de Redes do Iespes
I Workshop de Redes do IespesI Workshop de Redes do Iespes
I Workshop de Redes do Iespesluizfelipemz
 

Semelhante a Vale Security Conference - 2011 - 11 - Fernando Mercês [Octane Labs] [Coding 40º] (20)

Análise de Código Malicioso no Linux
Análise de Código Malicioso no LinuxAnálise de Código Malicioso no Linux
Análise de Código Malicioso no Linux
 
Python e Linux para a criação de ferramentas para pentest
Python e Linux para a criação de ferramentas para pentestPython e Linux para a criação de ferramentas para pentest
Python e Linux para a criação de ferramentas para pentest
 
Principais conceitos técnicas e modelos de programação paralela
Principais conceitos técnicas e modelos de programação paralelaPrincipais conceitos técnicas e modelos de programação paralela
Principais conceitos técnicas e modelos de programação paralela
 
Ud2
Ud2Ud2
Ud2
 
software tipos.ppt
software tipos.pptsoftware tipos.ppt
software tipos.ppt
 
Resumo x86
Resumo x86Resumo x86
Resumo x86
 
Engenharia Reversa no Linux
Engenharia Reversa no LinuxEngenharia Reversa no Linux
Engenharia Reversa no Linux
 
LEON3 e KIT ALTERA.
LEON3 e KIT ALTERA.LEON3 e KIT ALTERA.
LEON3 e KIT ALTERA.
 
Cherrypy - um framework para desenvolvimento rápido de aplicações web
Cherrypy - um framework para desenvolvimento rápido de aplicações webCherrypy - um framework para desenvolvimento rápido de aplicações web
Cherrypy - um framework para desenvolvimento rápido de aplicações web
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
 
Análise de malware com software livre
Análise de malware com software livreAnálise de malware com software livre
Análise de malware com software livre
 
Tecnologias para mineração de dados nas nuvens
Tecnologias para mineração de dados nas nuvensTecnologias para mineração de dados nas nuvens
Tecnologias para mineração de dados nas nuvens
 
pgBouncer: um aglomerador de conexões para PostgreSQL
pgBouncer: um aglomerador de conexões para PostgreSQLpgBouncer: um aglomerador de conexões para PostgreSQL
pgBouncer: um aglomerador de conexões para PostgreSQL
 
Slide curso metasploit
Slide curso metasploitSlide curso metasploit
Slide curso metasploit
 
Aula 7 conjunto de instrucoes
Aula 7   conjunto de instrucoesAula 7   conjunto de instrucoes
Aula 7 conjunto de instrucoes
 
Aula - Comandos Linux - Parte 1
Aula - Comandos Linux - Parte 1Aula - Comandos Linux - Parte 1
Aula - Comandos Linux - Parte 1
 
Comandos Linux Parte 1
Comandos Linux Parte 1Comandos Linux Parte 1
Comandos Linux Parte 1
 
Workshop Python
Workshop PythonWorkshop Python
Workshop Python
 
Introdução à Programacao em Processing
Introdução à Programacao em Processing Introdução à Programacao em Processing
Introdução à Programacao em Processing
 
I Workshop de Redes do Iespes
I Workshop de Redes do IespesI Workshop de Redes do Iespes
I Workshop de Redes do Iespes
 

Mais de Vale Security Conference

Vale Security Conference - 2011 - 17 - Rodrigo Rubira Branco (BSDaemon)
Vale Security Conference - 2011 - 17 - Rodrigo Rubira Branco (BSDaemon)Vale Security Conference - 2011 - 17 - Rodrigo Rubira Branco (BSDaemon)
Vale Security Conference - 2011 - 17 - Rodrigo Rubira Branco (BSDaemon)Vale Security Conference
 
Vale Security Conference - 2011 - 13 - Nelson Brito
Vale Security Conference - 2011 - 13 - Nelson BritoVale Security Conference - 2011 - 13 - Nelson Brito
Vale Security Conference - 2011 - 13 - Nelson BritoVale Security Conference
 
Vale Security Conference - 2011 - 5 - Luiz Eduardo
Vale Security Conference - 2011 - 5 - Luiz EduardoVale Security Conference - 2011 - 5 - Luiz Eduardo
Vale Security Conference - 2011 - 5 - Luiz EduardoVale Security Conference
 
Vale Security Conference - 2011 - 3 - Rener Alberto (Gr1nch) [DC Labs]
Vale Security Conference - 2011 - 3 - Rener Alberto (Gr1nch) [DC Labs]Vale Security Conference - 2011 - 3 - Rener Alberto (Gr1nch) [DC Labs]
Vale Security Conference - 2011 - 3 - Rener Alberto (Gr1nch) [DC Labs]Vale Security Conference
 
Vale Security Conference - 2011 - 2 - Dr. Emerson Wendt
Vale Security Conference - 2011 - 2 - Dr. Emerson WendtVale Security Conference - 2011 - 2 - Dr. Emerson Wendt
Vale Security Conference - 2011 - 2 - Dr. Emerson WendtVale Security Conference
 
Vale Security Conference - 2011 - 12 - Rafael Soares Ferreira
Vale Security Conference - 2011 - 12 - Rafael Soares FerreiraVale Security Conference - 2011 - 12 - Rafael Soares Ferreira
Vale Security Conference - 2011 - 12 - Rafael Soares FerreiraVale Security Conference
 
Vale Security Conference - 2011 - 6 - Thiago Bordini
Vale Security Conference - 2011 - 6 - Thiago BordiniVale Security Conference - 2011 - 6 - Thiago Bordini
Vale Security Conference - 2011 - 6 - Thiago BordiniVale Security Conference
 
Vale Security Conference - 2011 - 15 - Anchises de Paula
Vale Security Conference - 2011 - 15 - Anchises de PaulaVale Security Conference - 2011 - 15 - Anchises de Paula
Vale Security Conference - 2011 - 15 - Anchises de PaulaVale Security Conference
 
Vale Security Conference - 2011 - 14 - Alexandro Silva (Alexos) [DC Labs]
Vale Security Conference - 2011 - 14 - Alexandro Silva (Alexos) [DC Labs]Vale Security Conference - 2011 - 14 - Alexandro Silva (Alexos) [DC Labs]
Vale Security Conference - 2011 - 14 - Alexandro Silva (Alexos) [DC Labs]Vale Security Conference
 

Mais de Vale Security Conference (9)

Vale Security Conference - 2011 - 17 - Rodrigo Rubira Branco (BSDaemon)
Vale Security Conference - 2011 - 17 - Rodrigo Rubira Branco (BSDaemon)Vale Security Conference - 2011 - 17 - Rodrigo Rubira Branco (BSDaemon)
Vale Security Conference - 2011 - 17 - Rodrigo Rubira Branco (BSDaemon)
 
Vale Security Conference - 2011 - 13 - Nelson Brito
Vale Security Conference - 2011 - 13 - Nelson BritoVale Security Conference - 2011 - 13 - Nelson Brito
Vale Security Conference - 2011 - 13 - Nelson Brito
 
Vale Security Conference - 2011 - 5 - Luiz Eduardo
Vale Security Conference - 2011 - 5 - Luiz EduardoVale Security Conference - 2011 - 5 - Luiz Eduardo
Vale Security Conference - 2011 - 5 - Luiz Eduardo
 
Vale Security Conference - 2011 - 3 - Rener Alberto (Gr1nch) [DC Labs]
Vale Security Conference - 2011 - 3 - Rener Alberto (Gr1nch) [DC Labs]Vale Security Conference - 2011 - 3 - Rener Alberto (Gr1nch) [DC Labs]
Vale Security Conference - 2011 - 3 - Rener Alberto (Gr1nch) [DC Labs]
 
Vale Security Conference - 2011 - 2 - Dr. Emerson Wendt
Vale Security Conference - 2011 - 2 - Dr. Emerson WendtVale Security Conference - 2011 - 2 - Dr. Emerson Wendt
Vale Security Conference - 2011 - 2 - Dr. Emerson Wendt
 
Vale Security Conference - 2011 - 12 - Rafael Soares Ferreira
Vale Security Conference - 2011 - 12 - Rafael Soares FerreiraVale Security Conference - 2011 - 12 - Rafael Soares Ferreira
Vale Security Conference - 2011 - 12 - Rafael Soares Ferreira
 
Vale Security Conference - 2011 - 6 - Thiago Bordini
Vale Security Conference - 2011 - 6 - Thiago BordiniVale Security Conference - 2011 - 6 - Thiago Bordini
Vale Security Conference - 2011 - 6 - Thiago Bordini
 
Vale Security Conference - 2011 - 15 - Anchises de Paula
Vale Security Conference - 2011 - 15 - Anchises de PaulaVale Security Conference - 2011 - 15 - Anchises de Paula
Vale Security Conference - 2011 - 15 - Anchises de Paula
 
Vale Security Conference - 2011 - 14 - Alexandro Silva (Alexos) [DC Labs]
Vale Security Conference - 2011 - 14 - Alexandro Silva (Alexos) [DC Labs]Vale Security Conference - 2011 - 14 - Alexandro Silva (Alexos) [DC Labs]
Vale Security Conference - 2011 - 14 - Alexandro Silva (Alexos) [DC Labs]
 

Vale Security Conference - 2011 - 11 - Fernando Mercês [Octane Labs] [Coding 40º]

  • 1. CONSTRUINDO UM ANALISADOR DE EXECUTÁVEIS Fernando Mercês Vale Security Conference 2011 São José dos Campos - SP
  • 2. $ whoami - Consultor de projetos com software livre na 4Linux - Bacharelando em Ciência da Computação - Foco em infraestrutura e segurança da aplicações - Membro ativo de diversas comunidades de software livre - A+, LPIC-2, MCP, MCITP - Palestrante em eventos como FISL, LinuxCon e H2HC - Idealizador do Universidade Livre, evento que leva o SL às universidades brasileiras - Autor do Mente Binária (http://www.mentebinaria.com.br) - Criador do pev (analisador de arquivos PE) - Criador do USBForce (antivírus para pen-drive) - Mantenedor do T50 (ferramenta para stress em redes)
  • 3. Agenda - O que faz um analisador - O executável - Estudo do formato - pev - Perguntas
  • 4. O que faz um analisador?
  • 5. Interpreta o formato do executável para exibir informações do tipo: - Entrypoint (início do programa) - Arquitetura alvo / tipo do executável - Requisitos para execução - Seções - Proteções - E qualquer outra informação útil para quem analisa
  • 6. Como todo arquivo, não passa de uma sequência de bits. A diferença está em como interpretamos: Binário 01010101 Decimal 85 Hexa 55 ASM x86 PUSH EBP ASCII U
  • 8. - Além do código, contém informações para ser devidamente executado no SO alvo. - Pode ser editado como qualquer outro - Possui um formato / especificação - Documentação do formato disponível na internet. Mais usados são ELF e PE.
  • 10. - Busca da disposição dos campos no executável. - Digamos que a documentação especifique: -> Um arquivo PE válido começa com um campo de dois bytes chamado magic number, onde o primeiro byte é o 0x4D e o segundo é o 0x5A, sempre.
  • 11. Então basta validar: int verify(char *filename) { FILE *fp = fopen(filename, "rb"); char bytes[2]; fread(bytes, 2, 1, fp);      fclose(fp); if (bytes[0]=='M' && bytes[1]=='Z') return 1; return 0; }
  • 12. -> 16 bytes a frente da assinatura PE, está o checksum, que tem 2 bytes de tamanho. unsigned short checksum; fseek(fp, 16, SEEK_CUR); fread(&checksum, 2, 1, fp); printf("%xn", checksum);
  • 13. - Para facilitar, é bem possível que o SO tenha estruturas já prontas para leitura do formato. /* COFF header (trecho da windows.h) */ typedef struct _IMAGE_FILE_HEADER { WORD Machine; WORD NumberOfSections; DWORD TimeDateStamp; DWORD PointerToSymbolTable; DWORD NumberOfSymbols; WORD SizeOfOptionalHeader; WORD Characteristics; } IMAGE_FILE_HEADER;
  • 14. - Depois de ler as estruturas, o analisador deve dar opção de mostrar os valores dos campos para o usuário. - É possível detectar proteções como packers, crypters etc. - Existe muita informação dentro de um binário executável. Tudo o que o analisador precisa fazer é interpretar os bytes brutos (raw).
  • 15. pev the pe file analyzer
  • 16. - Software livre (GPLv3) - Multiplataforma (ANSI C) - Suporte a PE32/PE32+ - Imprime todos os cabeçalhos do PE - Detecta TLS callback, ASLR e DEP/NX - Exibe resources no primeiro nível
  • 17. $ pev -c psftp.exe  COFF header:  Machine: 0x14c - Intel 386 and compatible (32-bits)  Number of sections: 4  Date/time stamp: 1177846971 (Sun, 29 Apr 2007 11:42:51 UTC)  Symbol Table offset: 0  Number of symbols: 0  Size of optional header: 0xe0  Characteristics: 0x10f (0000000100001111) base relocations stripped executable image line numbers removed (deprecated) local symbols removed (deprecated) 32-bit machine
  • 18. $ pev -rp psftp.exe  Resources (.rsrc section): Type: RT_ICON Offset: 0x28 Type: RT_GROUP_ICON  Offset: 0x68  Type: RT_VERSION  Offset: 0x80   Product Version: 0.60.0.0 $ pev -o psftp.exe  | head Optional (PE) header:  Magic number: 0x10b (PE32)  Linker major version: 7  Linker minor version: 10  Size of .code section: 0x35000  Size of .data section: 0x1a000  Size of .bss section: 0  Entry point: 0x2d812  Address of .code section: 0x1000  Address of .data section: 0x36000
  • 19. TODO... - Detecção de packers - Disassembly de seções - Formatação de saída (CSV, XML...) - Extração de resources - Exibir imports e exports - Detecção do compilador - Detecção do idioma do binário - CRC32 - Detecção de strings inclusive XOReadas
  • 20. Conteúdo: Fernando Mercês (CC 3.0) baseado no paper "Construindo um analisador de executáveis". Template: Frank Skibby Jensen http://pev.sf.net @MenteBinaria www.mentebinaria.com.br Perguntas?