Forense em Dispositivos Móveis Utilizando Software Livre

Fazer download em pdf ou txt
Fazer download em pdf ou txt
Você está na página 1de 44

Forense em

dispositivos móveis
utilizando Software
Livre
Palestrante: Eng. Esp. Ézyo Lamarca da Silva
Agenda
 Forense Computacional;
 Android;
 Perícia Digital no Android;
 Perguntas?!
Forense Computacional
A Forense Computacional é uma
ramificação da Ciência da Computação,
podendo, entretanto, também ser
considerada como um ramo da
Criminalística, compondo uma área de
conhecimento comum entre ambas
(MELO, 2008).
Forense Computacional
Segundo Patrícia Peck (PINHEIRO,
2007), a computação forense (computer
forensics) compreende a aquisição,
preservação, restauração e análise de
evidências computacionais, quer sejam
componentes físicos ou dados que foram
processados eletronicamente e
armazenados em mídias computacionais.
Forense Computacional
Consiste, portanto, no uso de métodos
científicos na preservação, coleta,
validação, identificação, análise,
interpretação, documentação e
apresentação de evidência digital,
produzindo informações diretas como
meio de prova legal (PINHEIRO, 2007).
Forense Computacional
Uma evidência digital é a informação
armazenada ou transmitida em meio
digital de valor probatório (SWGDE e
IOCE, 2000). Possui como características
próprias a possibilidade de ser duplicada
com exatidão, a verificação de sua
integridade por meio de ferramentas
apropriadas, e a capacidade de ser
recuperada mesmo depois de sua
destruição (CASEY, 2000).
Forense Computacional
Atuando na análise forense computacional
o profissional da informática é
denominado perito judicial ou não oficial,
perito criminal ou oficial, e perito em
computação. Em todos os casos cuidará
dos aspectos técnicos da investigação,
produzindo, ao final, o laudo técnico ou
pericial. Porém, sem se descuidar dos
aspectos legais, recebendo, para tanto, o
devido acompanhamento jurídico.
Forense Computacional
Entretanto, a atuação do especialista em
computação forense não se limita apenas
a processos judiciais, podendo também
ser contratado por empresas para
investigações, questões relativas à
segurança da informação e em equipes de
resposta a incidentes, sendo, nesses
casos, denominado perito em
computação.
Forense Computacional
Lei 5.869 – Código de Processo Civil
http://www.planalto.gov.br/ccivil_03/leis/l5
869.htm

CAPÍTULO V
DOS AUXILIARES DA JUSTIÇA

Art. 139. São auxiliares do juízo, além de


Forense Computacional
Lei 5.869 – Código de Processo Civil

Seção II
Do Perito

Art. 145. Quando a prova do fato depender de


conhecimento técnico ou científico, o juiz será assistido
por perito, segundo o disposto no art. 421.
§ 1o Os peritos serão escolhidos entre profissionais de
nível universitário, devidamente inscritos no órgão de
Forense Computacional
Lei 5.869 – Código de Processo Civil

Seção II
Do Perito

Art. 146. O perito tem o dever de cumprir o ofício, no prazo


que Ihe assina a lei, empregando toda a sua diligência; pode,
todavia, escusar-se do encargo alegando motivo legítimo.
Parágrafo único. A escusa será apresentada, dentro de cinco
(5) dias contados da intimação, ou do impedimento
superveniente ao compromisso, sob pena de se reputar
Forense Computacional
Fases da perícia forense
computacional
No processo de perícia forense
computacional toda a informação
relevante deve ser coletada para análise
e, conforme as evidências digitais são
encontradas, serem extraídas,
restauradas (caso as evidências estejam
danificadas ou cifradas), documentadas e
Forense Computacional
Fases da perícia forense
computacional
Este processo, segundo Cagnani
(CAGNANI, SANTOS), pode ser dividido
em quatro fases bem distintas, sendo
elas: identificação das evidências,
preservação das evidências, análise das
evidências, e apresentação das
evidências.
Forense Computacional
Fases da perícia forense computacional
Forense Computacional
Fases da perícia forense
computacional
Identificação das evidências
Basicamente o processo prevê três
etapas:
-Análise de artefatos ligados (Live
Forensicis);
-Análise de artefatos desligados (Post-
mortem Analysis);
Forense Computacional
Software Livre
Fases Descrição FDTK

Preparação Esterilizar as mídias que serão utilizadas na investigação wipe

Coleta dos Dados Data hora do sistema operacional Sistema Operacional

Conexões de rede ativas

Processos em execução

Arquivos abertos

Imagem das mídias AIR

Geração de Hash (integridade das evidências) md5

Cadeia de Custódia Formulário de Custódia

Recuperar arquivos deletados Fatback, e2undel

Manipulação de sistemas de arquivos NTFS 39


ntfsprogs, scrounge-ntfs
Forense Computacional
Software Livre
Fases Descrição FDTK

Exame dos Dados Visualizar imagens comix

Acessar arquivos compactados p7zip

Quebrar senhas de arquivos ophcrack

Coletar mac time de arquivos e diretórios mactime

Detecção da presença de rootkits chkrootkit

Leitores para varias extensões proprietárias da MS Antiword, evtreader

Análise das Evidências Analisar bases de dados de email MS eindeutig

Analisar cookies do Windows cookie_cruncher.pl

Script perl para ler arquivo history.dat do Firefox mork.pl

Visualizador de históricos de navegadores browser-history-viewer

Ferramentas para várias finalidades autopsy


Forense Computacional
Software Livre

The Sleuth Kit


http://www.sleuthkit.org/
Autopsy Browser
http://www.sleuthkit.org/autopsy/
Forense Computacional
Software Livre
FDTK
FDTK-UbuntuBr – Forense Digital ToolKit
Possui código fonte aberto;
Criada a partir da distribuição Ubuntu;
Reúne mais de 100 ferramentas capazes de atender a
todas as etapas de um investigação em Forense
Computacional;
Pode ser utilizada como LiveCD e também ser instalada
em um equipamento transformando-o em uma Estação
Forense;
Forense Computacional
FDTK
Examinar: ferramenta AUTOPSY
Base de dados de assinaturas (hashes)
de arquivos já conhecidos
(devem ser ignorados ou maliciosos).
Um exemplo de base de dados
de hashes é a National Software
Reference Library,
mantida pelo Departamento
de Justiça Norte Americano
Forense Computacional
SIFT - SANS Investigate Forensic
Toolkit
http://computer-forensics.sans.org/community/downloads
Forense Computacional
Outros tópicos

Engenharia reversa;
Criptografia;
Esteganografia;
Anti-forense;
Forense em dispositivos móveis.
Android
Em Julho de 2005 o Google comprou a
Android, uma startup que fazia um pequeno
sistema para celulares;
Em 5 de Novembro de 2007 o Google
anunciou o nascimento do Android como
uma plataforma e criou a Open Handset
Alliance (OHA).
Android
Android
Cerca de 1,3 milhão de aparelhos com
sistema operacional Android são ativados
por dia, crescimento de 160% se
comparado a junho de 2011, quando 500
mil dispositivos eram ativados diariamente.
Destes 1,3 milhão, 70 mil são tablets,
enquanto que cerca de 1,2 milhão são
smartphones. Segundo o site TechCrunch,
http://info.abril.com.br/noticias/mercado/1-3-mi-de-aparelhos-android-sao-ativados-por-dia-

a base total de dispositivos com o sistema


06092012-52.shl

operacional Android passa de 500 milhões


atualmente.
Android

http://developer.android.com/about/dashboards/index.htm
l
Android
Perícia Digital no Android
Preservação, aquisição, análise e
apresentação.
Para quê? Investigação interna, criminais,
litígios, segurança nacional, análise de
malware.
Perícia Digital no Android
Soluções comerciais:
Cellebrite;
Encase;
Oxygen;
ViaForensics...
Perícia Digital no Android
Mas tudo pode se resumir ao SDK!!!
http://developer.android.com/sdk/index.htm
l

E uma pesquisa
http://www.gsmarena.com
no GSMArena!
/
Perícia Digital no Android
Evidências
Preferências compartilhadas: arquivos XML.
Armazenamento interno: arquivos criados
pelo dispositivo, não acessível por nenhuma
aplicação ou usuário, exceto root.
Armazenamento externo: cartão SD
(FAT32).
SQLite: permite armazenar uma base de
dados num único arquivo.
Perícia Digital no Android
Informações $ adb pull <arquivo>

Dados Localização
Contatos /data/data/com.android.providers.contacts/

Calendário /data/data/com.android.providers.calendar/

SMS /data/data/com.android.providers.telephon/

Downloads /data/data/com.android.providers.downloads/

Dados do Browser /data/data/com.android.providers.browser/

Gmail /data/data/com.google.android.providers.gmail/

Cache de GeoLocalização /data/data/com.google.android.location/


Perícia Digital no Android
Rede: Wireshark, tcpdump.
Logs, debuggers: dmesg, logcat, dumpsys,
dumpstate, bugreport (logcat, dumpsys,
dumpstate)
Perícia Digital no Android
Memória Flash NAND
Pendrives, celulares, etc.
Não removível.
Escrever a apagar limitados.
Android provê Flash Translation Layer
(FTL):
Acessível como um dispositivos de blocos
(/dev/mtd*).
Implementado em software pelo subsistema
Perícia Digital no Android
YAFFS2
Primeiro sistema de arquivos desenvolvido
para memória Flash NAND.
Open Source.
Robusto.
Poucos ferramentas o leem.
Relativa facilidade para recuperar arquivos
apagados.
Perícia Digital no Android
Aquisição Lógica
Acesso com root.
Modo Depuração USB.
Principio de Locard.
Ferramentas: AFLogical OSE, aft.
https://github.com/viaforensics/android-
forensics
http://code.google.com/p/aft
/
Perícia Digital no Android
Aquisição Física
dd:
$ dd if=/dev/mtd/mtd2 of=/sdcard/cache.img bs=2048

Imagem NAND completa


nandump: file carving (scalpel), strings,
editor hexa, sqlite, The Sleuth Kit (mactime)
Perícia Digital no Android
Dump de RAM
Primeira na ordem de volatilidade.
Pouca informação disponível.
Até o momento, pouca investigação
Informações: dados de aplicativos,
fragmentos de comunicação, chaves de
encriptação, processos, arquivos abertos,
sockets, etc.
Perícia Digital no Android
Dump de RAM
Métodos comuns em Linux não funcional:
/dev/fmem
Como?
Live: adb shell [ps,netstat,logcat,...]
Dalvik Debugging Monitor Server: processo
por processo:
ddms
Perícia Digital no Android
Dump de RAM
LiME (Linux Memory Extractor – DMD)
Loadable Kernel Module (LKM)
Lime via TCP
$ adb push lime.ko /sdcard/lime.ko
$ adb forward tcp:4444 tcp:4444
$ adb shell
$ su
# insmod /sdcard/lime.ko path=tcp:4444
Na estação: $ nc localhost 4444 > android_ram.dump
Lime via SD Card
$ adb push lime.ko /sdcard/lime.ko
$ adb shell
$ su
# insmod /sdcard/lime.ko path=/sdcard
http://code.google.com/p/lime-forensics/
Na estação: $ adb pull <arquivo_sdcard>
Perícia Digital no Android
Análise de apps
APK: arquivo compactado.
META-INF/: certificados, arquivo manifest.
Assets/: configurações de apps.
Manifest/: permissões de apps.
Res/: outros recursos, com imagens.
Perícia Digital no Android
Análise de apps
Ferramentas:
Smali/Baksmali, APK Tool, Dex2Jar, JD-
G ui , A ndro gu ard, Und ers tan d, A P K
Inspector.

Análise de malware.
Perícia Digital no Android
Iniciativas
ARE (Android Reverse Engineering)
https://redmine.honeynet.org/projects/are/wik
i

OSAF (Open Source Android Forensics)


http://www.osaf-
community.org/

viaExtract
Santoku
https://santoku-
linux.com/
Perguntas?!

Você também pode gostar