Forensic analysis of mobile phone internal memory Artigo de: Svein Y Willassen Norwegian University of Science and Technology Jefferson Rodrigo Capovilla Série de Seminários Disciplina de Análise Forense de Documentos Digitais Prof. Dr. Anderson Rocha [email protected] http://www.ic.unicamp.br/~rocha Organização Organização ‣ ‣ ‣ ‣ ‣ Introdução Motivação Aplicação na computação forense Definição do problema Técnicas aplicadas • • ‣ ‣ ‣ ‣ Desoldagem Circuito de teste (JTAG) Trabalhos Correlatos Conclusão Comentários Referência Bibliográfica Seminários – Análise Forense de Documentos Digitais, 2011 4 Introdução Introdução ‣ Técnicas inovadoras de análise da memória interna de telefones celulares ‣ Diferencial: • Capacidade de recuperar dados apagados • Analisar celulares “mortos” Seminários – Análise Forense de Documentos Digitais, 2011 6 Motivação Motivação ‣ Dispositivo pessoal comum ‣ Evolução na capacidade de armazenamento de informações pessoais ‣ Dificuldade em recuperar informações apagadas Seminários – Análise Forense de Documentos Digitais, 2011 8 Motivação Total: 4 bilhões celulares no mundo População mundial: 6.9 bilhões No pessoas/cadastro SIM © Nokia 2010 [Cell Phones World 2011] Seminários – Análise Forense de Documentos Digitais, 2011 9 Aplicação na computação forense Aplicação na computação forense ‣ Freqüentemente contém informações com valores de evidências • • Fotos, Vídeos, Lista de contatos ,Sons ,Mensagens multimídia ,e-mail, Calendário Mensagens SMS Seminários – Análise Forense de Documentos Digitais, 2011 11 Definição do problema Definição do problema ‣ Extração de informações com celular ligado • • Extração de info por comandos AT (cabo, infravermelho ou bluetooth) Utilizam o S.O do celular ‣ ‣ • • Impossível acesso a informações apagadas Gerenciador de memória (sobrescrita de informações) A ligação do dispositivo pode corromper dados SIM Card Code (PIN + PUK) Seminários – Análise Forense de Documentos Digitais, 2011 13 Técnicas aplicadas Seminários – Análise Forense de Documentos Digitais, 2011 Técnicas aplicadas ‣ ‣ Extração de informações com celular desligado Idéia comum: Conseguir acesso direto aos pinos do chip de memória • • • ‣ Cópia de toda a memória flash, independente do S.O. Recuperar informações apagadas Transpõe todas as medidas de segurança do celular Técnicas aplicadas • • Desoldagem do chip de memória Utilização do circuito de teste (JTAG) Seminários – Análise Forense de Documentos Digitais, 2011 15 Técnicas aplicadas Desoldagem do chip de memória Seminários – Análise Forense de Documentos Digitais, 2011 Técnicas aplicadas Desoldagem do chip de memória Tecnologia BGA (Ball Grid Array) Seminários – Análise Forense de Documentos Digitais, 2011 17 Técnicas aplicadas Desoldagem do chip de memória ‣ Dificuldades do processo: • Temperatura: ‣ Integridade dos dados garantida por 3 ciclos de aquecimento • ‣ • Soldagem 2 lados placa (2 ciclos); Desoldagem (1 ciclo); Reballing (1 ciclo) Extração do chip se em temperatura baixa pode danificar os pinos Achar adaptadores para a leitura dos chips Seminários – Análise Forense de Documentos Digitais, 2011 18 Técnicas aplicadas Desoldagem do chip de memória ‣ Passos para a extração dos dados 1. 2. Pré-aquecimento por 24hs a 80oC para retirar umidade (efeito pipoca) Desoldagem usando ar quente com pré-aquecimento infra-vermelho. ‣ ‣ 3. 4. 5. 6. Temperatura máxima 220oC alcançada em 5 minutos Temperatura fusão solda: 183oC Chip removido da placa por sucção a vácuo com braço robótico Remoção dos resíduos de solda por ar quente Raballing dos pinos do chip Leitura pelos pinos de I/O através de um adaptador e o software de programação do chip Seminários – Análise Forense de Documentos Digitais, 2011 19 Técnicas aplicadas Utilização do circuito de teste JTAG Seminários – Análise Forense de Documentos Digitais, 2011 Técnicas aplicadas Utilização do circuito de teste JTAG ‣ Circuito de teste: • • • • • Possibilita definir e ler valores dos pinos do chip sem acesso direto físico Possibilita testar a conectividade entre os pinos de I/O Possibilita testar as interconexões entre CI’s em uma placa sem usar pontas físicas de teste Também conhecido como JTAG (Joint Test Action Group) JTAG é um nome usado no padrão IEEE 1149.1 [IEEE 1149.1], Standard Test Access Port and boundary-scan architecture to test access ports Seminários – Análise Forense de Documentos Digitais, 2011 21 Técnicas aplicadas Utilização do circuito de teste JTAG Circuito integrado com JTAG Seminários – Análise Forense de Documentos Digitais, 2011 22 Técnicas aplicadas Utilização do circuito de teste JTAG •TDI: Test data in •TCK: Test clock •TMS: Test Mode State •TRST: Test Reset (opcional) •TDO: Test data out Teste de conexão entre circuitos integrados Seminários – Análise Forense de Documentos Digitais, 2011 23 Técnicas aplicadas Utilização do circuito de teste JTAG Máquina de estados do TAP Operação sobre Data Register Operação sobre Instruction Register •A máquina de estados de todos os TAPs são sincronizadas •Cada JTAG possui 1 Instruction Register •Cada JTAG pode ter 2^(IR_size) DR •IR=5 -> até 32 DR Seminários – Análise Forense de Documentos Digitais, 2011 24 Técnicas aplicadas Utilização do circuito de teste JTAG Operações: •Reset: •Independente do estado, 5 pulsos de clock com TMS=1 retorna a máquina para o estado de reset. Operação sobre Data Register Operação sobre Instruction Register Exemplo de código: // go to reset state for(i=0; i<5; i++) JTAG_clock(TMS); Seminários – Análise Forense de Documentos Digitais, 2011 25 Técnicas aplicadas Utilização do circuito de teste JTAG Operação sobre Data Register Operação sobre Instruction Register Operações: •Carregando dados em IR: •Tamanho IR CPU = 5; Carregar 00100 •Tamanho IR FPGA = 10 ; Carregar 0000000010 Exemplo de código: // Because the bits are shifted through in a chain, we must start sending the data for the device that is at the end of the chain // so we send the 10 FPGA IR bits first JTAG_clock(0); JTAG_clock(1); JTAG_clock(0); JTAG_clock(0); JTAG_clock(0); JTAG_clock(0); JTAG_clock(0); JTAG_clock(0); JTAG_clock(0); JTAG_clock(0); // then send the 5 CPU IR bits JTAG_clock(0); JTAG_clock(0); JTAG_clock(1); JTAG_clock(0); JTAG_clock(0 | TMS); // last bit needs to have TMS active (to exit shift-IR) Seminários – Análise Forense de Documentos Digitais, 2011 26 Técnicas aplicadas Utilização do circuito de teste JTAG Operação sobre Data Register Operação sobre Instruction Register Operações: •Contar número de dispositivos no JTAG chain (cada dispositivo insere 1 atraso): 1. 2. 3. 4. Setar IR para modo BYPASS (todos os bits ‘1’) Limpar dados em DR inserindo ‘0’ Inserir ‘1’s até receber em TDO o primeiro ‘1’ O número de ‘1’s inserido é o numero de dispositivos no JTAG Chain Código em [fpga4fun jtag] Seminários – Análise Forense de Documentos Digitais, 2011 27 Técnicas aplicadas Utilização do circuito de teste JTAG Operação sobre Data Register Operação sobre Instruction Register Operações: •Ler ID dos dispositivos no JTAG chain •O ID é composto por 32 bits •Sempre que o jtag está no estado “Test-Logic-Reset”, o valor em DR é o ID Passos: 1. Colocar o JTAG em modo reset 2. Ir para modo Shift-DR 3. Fazer N requisições de 32 bits, sendo N o número de dispositivos Seminários – Análise Forense de Documentos Digitais, 2011 28 Técnicas aplicadas Utilização do circuito de teste JTAG Operação sobre Data Register Operação sobre Instruction Register Operações: •Dump de memória através do CPU •Conhecer interface de leitura da memória •Conhecer ordem das Boundary Cells •Colocar JTAG em modo EXTEST (funcionamento) Passos lógicos (atuando nos pinos da CPU): 1. Loop para toda posição da memória: 1. Carregar comando de leitura da memória (Mcmd) 2. Carregar endereço de leitura (Maddr) 3. Ler dados retornados • Sresp = Leitura OK • Sdata = Dados lidos 2. End Loop Seminários – Análise Forense de Documentos Digitais, 2011 29 Técnicas aplicadas Utilização do circuito de teste JTAG ‣ Conhecimento necessário para utilizar o JTAG como forma de extração de informações: • Conhecer o modelo de CPU e Memória e como estão conectados ao barramento do sistema – Requer documentação específica do celular ‣ • • • Importante para saber a combinação correta de bits a ser inserida em TDI Determinar cada porta de teste JTAG do circuito e sua localização na PCB. – Requer documentação específica do celular Conhecer o protocolo de comunicação da memória (leitura/escrita). Normalmente disponível no site do fabricante Conhecer a tensão correta do circuito. Aplicar tensão alta pode danificar o circuito. - Pode ser medida com o circuito ligado. Seminários – Análise Forense de Documentos Digitais, 2011 30 Técnicas aplicadas Utilização do circuito de teste JTAG ‣ Passos para a extração dos dados: • • • • • Atender os pré-requisitos apresentados no slide anterior Soldar fios em cada uma das portas JTAG Conectar os pinos JTAG no computador: protoboard + interface JTAG – Utilizado Chameleon POD [Chameleon POD] Utilização de um pacote JTAG-tools rodando em linux e compatível com Chameleon POD Utilização do comando “Discovery” para identificar a estrutura JTAG e os comandos para leitura de toda a memória Seminários – Análise Forense de Documentos Digitais, 2011 31 Técnicas aplicadas Resultados Seminários – Análise Forense de Documentos Digitais, 2011 Técnicas aplicadas Resultados ‣ A análise da memória mostrou : • • • • Conseguiu fazer a cópia de toda a memória Mensagens de texto apagadas pelo S.O foram recuperadas Imagens, MMS, itens de calendário e contatos presentes na memória apesar de apagados Cópias de itens de SIM-cards antigos foram encontrados em algumas ocasiões Seminários – Análise Forense de Documentos Digitais, 2011 33 Trabalhos Correlatos Seminários – Análise Forense de Documentos Digitais, 2011 Trabalhos Correlatos ‣ Acquisition of a Symbian Smart phone’s Content with an OnPhone Forensic Tool [Pontjho M Mokhonoana et al. 2007] Seminários – Análise Forense de Documentos Digitais, 2011 35 Trabalhos Correlatos ‣ Acquisition of a Symbian Smart phone’s Content with an OnPhone Forensic Tool [Pontjho M Mokhonoana et al. 2007] • • Extração dos dados da memória interna por programas que executem do próprio celular Dados acessados diretamente pelo S.O do celular ‣ ‣ Evita interface com equipamentos externos Facilidade: Pode ser feito fora do laboratório Seminários – Análise Forense de Documentos Digitais, 2011 36 Trabalhos Correlatos ‣ Acquisition of a Symbian Smart phone’s Content with an OnPhone Forensic Tool [Pontjho M Mokhonoana et al. 2007] • Requisitos da ferramenta forense, segundo o autor: ‣ ‣ ‣ Minimizar as mudanças no dispositivo Obter o máximo de informação possível Minimizar a interação do usuário com o dispositivo • Quanto mais interações, mais difícil provar a integridade das evidências Seminários – Análise Forense de Documentos Digitais, 2011 37 Trabalhos Correlatos ‣ Acquisition of a Symbian Smart phone’s Content with an On-Phone Forensic Tool [Pontjho M Mokhonoana et al. 2007] • Procedimento: Execução automática da ferramenta de cópia dos dados diretamente de um cartão de memória externo ‣ • Limitações: ‣ ‣ • A ferramenta faz cópias do sistema de arquivos Não tem acesso a informações apagadas Não faz cópia de arquivos abertos (Lista chamadas / contatos) Dados copiados: • • • Mensagens: SMS, MMS, e-mail Multimídia: Audio, Video, Figura Aplicativos, Cache Internet, arquivos usuário Seminários – Análise Forense de Documentos Digitais, 2011 38 Trabalhos Correlatos ‣ Hashing Techniques for Mobile Device Forensics [Shira Danker et al. 2009] Seminários – Análise Forense de Documentos Digitais, 2011 39 Trabalhos Correlatos ‣ ‣ ‣ Hashing Techniques for Mobile Device Forensics [Shira Danker et al. 2009] Foco: Verificar a consistência das informações transmitidas para o celular Experimento: • • Cálculo hash MD5 de um grupo de imagens (hash referência) Transmissão das imagens para 8 pares diferentes de celulares através: ‣ ‣ ‣ ‣ • Universal Memory Exchanger MMS Bluetooth MicroSD Recálculo MD5 das imagens nos celulares Seminários – Análise Forense de Documentos Digitais, 2011 40 Trabalhos Correlatos ‣ ‣ Hashing Techniques for Mobile Device Forensics [Shira Danker et al. 2009] Resultado: • • UME, Bluetooth e MicroSD com MD5 consistentes com a referência MMS apresentou resultado inconsistente para modelos diferentes ‣ • MMS: Transmissão para celulares de mesmo modelo ‣ ‣ Causa: possível implementação diferente do formato MMS Resultado: Hash inconsistente Conclusão: • No caso de imagens transmitidas por MMS, não é possível provar a fonte por esta ser modificada durante a transmissão Seminários – Análise Forense de Documentos Digitais, 2011 41 Conclusão Conclusão ‣ A tendência de analise de celular está parecida com a de computador • • Antes ligava-se o computador em busca de informações (procedimento destrutivo); Agora faz-se a imagem do disco antes da análise Possível recuperar informações apagadas da memória interna ‣ Abordagem pode ser extendida para qualquer dispositivo com memória interna Seminários – Análise Forense de Documentos Digitais, 2011 43 Comentários Comentários ‣ Desoldagem • • ‣ Risco de danos permanentes à memória JTAG • • ‣ Técnica exige procedimento complexo Exige alto conhecimento técnico Necessário documentação completa – Layout circuito Geral • Pelo artigo relacionado, figuras podem ter HASH diferentes, dificultando a prova da origem Seminários – Análise Forense de Documentos Digitais, 2011 45 Referências Referências 1.[Cell Phones World 2011] Cell Phone Subscriptions . Dísponível em: <> http://show.mappingworlds.com/world/?subject=TELEPHONECELLSUBS Acesso em: 16/10/2011 2.[Chameleon POD] Chameleon POD, Reconfigurable JTAG-adapter, Available: http://www.amontec.com 3.[fpga4fun jtag] How JTAG works. Disponível em:<> http://www.fpga4fun.com/JTAG2.html Acesso em: 16/10/2011 4.[IEEE 1149.1] IEEE 1149.1, IEEE Standard Test Access Port and Boundary-scan Architecture, IEEEANSI, 2001 5.[Pontjho M Mokhonoana et al. 2007] Pontjho M Mokhonoana e Martin S Olivier (2007). Acquisition of a Symbian Smart phone’s Content with an On-Phone Forensic Tool. 6.[Shira Danker et al. 2009] Shira Danker, Rick Ayers e Richard P Mislan (2009). Hashing Techniques for Mobile Device Forensics. In Small Scale Digital Device Forensics Journal, VOL. 3, NO.1, JUNE 2009 ISSN# 1941-6164 Seminários – Análise Forense de Documentos Digitais, 2011 47 Perguntas?? Obrigado!