SlideShare una empresa de Scribd logo
1 de 9
Ronaldo P. Lima
www.crimesciberneticos.com
   introdução
   engenharia reversa de malware
   proteções e ofuscação de código
   ferramentas
   etapas da engenharia reversa
   estudo de caso / demonstração
   porque analisar manualmente um
    trojan?
   incidentes internos
   dados sigilosos
   descoberta de novas ameaças e técnicas
   criação de novas assinaturas para apps
    de segurança
   análise estática
   reverter o processo do compilador
   entender o funcionamento do malware
   conhecimentos desejados: programação, API
    windows, memória, formato PE,
    (dis)assembly, curiosidade
   para começar basta saber usar as
    ferramentas certas
   packers
     ofuscação de código e compressão de dados
   cryptors
     ofuscação de código
   binders
     anexa a outro arquivo
   funções internas
     strings e informações relevantes (decrypt em runtime)
máquina                                   disassemblers
            identificadores   unpackers                   descompiladores
 virtual                                   e debuggers

  Virtual                       lammer                        DeDe
                 PEiD                          IDA
   Box                            info                       (delphi)

                               busca no                         VB
 VMware        exeinfoPE                     OllyDbg
                                google                       Decompiler

                                               Imm
                 RDG            manual                       showmycode
                                             Debugger
                                                                .com
                                                             (Java, Flash,
               file, TrID                    WinDbg           PHP, .NET)
1.   identificar o arquivo e proteções
   PEiD, exeinfoPE , RDG, file, TrID
2. retirar proteções

      unpackers, manualmente
3.   disassembly do código (IDA, OllyDbg)
4.   buscar strings relevantes
5.   descriptografar strings (OllyDbg)
6.   no IDA ir atualizando com as descobertas
7.   tentar descompilar (DeDe e VB Decompiler)
vídeo de demonstração



Assista em:
http://www.youtube.com/watch?v=S8FSuKWmIYY
Perguntas?

Ronaldo P. Lima
crimesciberneticos@ymail.com
crimesciberneticos.com
@crimescibernet

Más contenido relacionado

Similar a Engenharia Reversa de Trojan-Banker_Hack'nRio

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
Diego Santos
 
Programando Software Livre em C
Programando Software Livre em CProgramando Software Livre em C
Programando Software Livre em C
Diego Santos
 

Similar a Engenharia Reversa de Trojan-Banker_Hack'nRio (20)

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
 
Raspberry Pi + Python
Raspberry Pi + PythonRaspberry Pi + Python
Raspberry Pi + Python
 
Cth c9 p014
Cth c9 p014Cth c9 p014
Cth c9 p014
 
Xdebug seus problemas acabaram - tdc floripa 2017
Xdebug   seus problemas acabaram - tdc floripa 2017Xdebug   seus problemas acabaram - tdc floripa 2017
Xdebug seus problemas acabaram - tdc floripa 2017
 
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 ...
 
Jsummit 2014
Jsummit 2014Jsummit 2014
Jsummit 2014
 
Anti-patterns
Anti-patternsAnti-patterns
Anti-patterns
 
Desenvolvendo em Zend Framework: Ênfase no Zend_Db
Desenvolvendo em Zend Framework: Ênfase no Zend_DbDesenvolvendo em Zend Framework: Ênfase no Zend_Db
Desenvolvendo em Zend Framework: Ênfase no Zend_Db
 
Qualidade de código Android
Qualidade de código AndroidQualidade de código Android
Qualidade de código Android
 
Slides 04 - A Linguagem Java.pdf
Slides 04 - A Linguagem Java.pdfSlides 04 - A Linguagem Java.pdf
Slides 04 - A Linguagem Java.pdf
 
Produtividade com ZF2, PDT & Zend Server Free Edition
Produtividade com ZF2, PDT & Zend Server Free EditionProdutividade com ZF2, PDT & Zend Server Free Edition
Produtividade com ZF2, PDT & Zend Server Free Edition
 
1001 maneiras de debugar o WordPress
1001 maneiras de debugar o WordPress1001 maneiras de debugar o WordPress
1001 maneiras de debugar o WordPress
 
Java 01
Java 01Java 01
Java 01
 
Palestra Desenvolvimento Ágil para Web com ROR UVA
Palestra Desenvolvimento Ágil para Web com ROR UVAPalestra Desenvolvimento Ágil para Web com ROR UVA
Palestra Desenvolvimento Ágil para Web com ROR UVA
 
Programando Software Livre em C
Programando Software Livre em CProgramando Software Livre em C
Programando Software Livre em C
 
Vivendo de hacking
Vivendo de hackingVivendo de hacking
Vivendo de hacking
 
Prototipação rápida - Rails e Arduino
Prototipação rápida - Rails e ArduinoPrototipação rápida - Rails e Arduino
Prototipação rápida - Rails e Arduino
 
Botnets
BotnetsBotnets
Botnets
 
Java+DDD+BDD+TDD=Sucesso Total
Java+DDD+BDD+TDD=Sucesso TotalJava+DDD+BDD+TDD=Sucesso Total
Java+DDD+BDD+TDD=Sucesso Total
 
Programando em ruby para arduino
Programando em ruby para arduinoProgramando em ruby para arduino
Programando em ruby para arduino
 

Último

Último (9)

ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docxATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 

Engenharia Reversa de Trojan-Banker_Hack'nRio

  • 2. introdução  engenharia reversa de malware  proteções e ofuscação de código  ferramentas  etapas da engenharia reversa  estudo de caso / demonstração
  • 3. porque analisar manualmente um trojan?  incidentes internos  dados sigilosos  descoberta de novas ameaças e técnicas  criação de novas assinaturas para apps de segurança
  • 4. análise estática  reverter o processo do compilador  entender o funcionamento do malware  conhecimentos desejados: programação, API windows, memória, formato PE, (dis)assembly, curiosidade  para começar basta saber usar as ferramentas certas
  • 5. packers  ofuscação de código e compressão de dados  cryptors  ofuscação de código  binders  anexa a outro arquivo  funções internas  strings e informações relevantes (decrypt em runtime)
  • 6. máquina disassemblers identificadores unpackers descompiladores virtual e debuggers Virtual lammer DeDe PEiD IDA Box info (delphi) busca no VB VMware exeinfoPE OllyDbg google Decompiler Imm RDG manual showmycode Debugger .com (Java, Flash, file, TrID WinDbg PHP, .NET)
  • 7. 1. identificar o arquivo e proteções PEiD, exeinfoPE , RDG, file, TrID 2. retirar proteções unpackers, manualmente 3. disassembly do código (IDA, OllyDbg) 4. buscar strings relevantes 5. descriptografar strings (OllyDbg) 6. no IDA ir atualizando com as descobertas 7. tentar descompilar (DeDe e VB Decompiler)
  • 8. vídeo de demonstração Assista em: http://www.youtube.com/watch?v=S8FSuKWmIYY