Cada um de nós tem mais informação privilegiada num telefone do que tem em casa. Se pensarmos, num chip de memória do smartphone pode estar armazenado o historial bancário, o perfil de utilizador das redes sociais, as palavras-passe de acesso às nossas contas de e-mail, os nossos contactos, as mensagens que trocamos quer de carácter privado quer casual e tudo está acessível de forma relativamente simples.
Então o que lhe trazemos hoje não será para o assustar, mas para o ajudar, porque nem imagina o que pode ser descoberto com uma imagem da memória do seu telefone. Temos uma “mini investigação” à sua espera!
Há alguma considerações que devem ser colocadas para que se perceba a fundamentação do trabalho e das suas escolhas.
Primeiro: Existem ferramentas profissionais que fazem todo este trabalho em menos de 20 minutos. Mas não as vamos usar.
Segundo: Esta não é a forma mais eficaz para recuperar dados num dispositivo Android. Mas, gratuitamente, é das mais eficazes.
Terceiro: Este tutorial serve para ajudar aqueles que não podem contar com as ferramentas ideais para o trabalho. Sem gastar absolutamente nada.
Quarto: Fica sempre pela vossa conta e risco seguir o que estamos a ensinar. A nós correu bem.
Acreditamos que é um ponto positivo não sermos vítimas de ferramentas pré-feitas e pensadas para algo, pois no dia em que isso mudar, voltamos ao ponto 0. Este guia que hoje deixamos serve para continuar a abrir fronteiras do conhecimento, mesmo que, nalgum momento, tenham a oportunidade de utilizar ferramentas forenses profissionais. Não deixem de procurar alternativas e usem-nas como uma extensão do vosso conhecimento.
Análise forense do seu Android
Parte 1: O ROOT
Obter root varia consoante o dispositivo e é um processo simples, usem o Google para encontrar o processo ideal para o modelo do vosso telefone, mas hoje uma das apps mais eficazes é a Kingroot.
Contudo, no nosso caso apenas foi necessário fazer o download do Nexus Root Toolkit, seguir as instruções, e em 5 minutos estava feito. (Optámos também fazer unlock no bootloader, porque pode influenciar passos mais à frente).
Parte 2: Comunicação ADB
ADB é uma linha de comandos que permite comunicar com um dispositivo Android.
Para descobrir as maravilhas do ADB precisamos de ir: Settings/About Phone/Build Number. Tocar no build number 7 vezes. Quando voltamos aos Settings surge: Developer Options
Vamos activar as mesmas e activar o USB DEBUGGING.
Parte 3: Distro de Linux
Há distros que já possuem tudo o que necessitamos instalado, caso a vossa não tenha e seja debian based: apt-get install android-sdk (Se o ADB não vier incluído, a melhor forma é procurar no Google para encontrar)
Após tudo instalado, e termos o dispositivo conectado ao nosso PC ou VM, vamos abrir uma janela de terminal e digitar para testar o estado do dispositivo:
Ao verificar que o acesso é garantido ao dispositivo, digitamos: adb shell – (tecla enter e entramos na shell)
Logo de seguida, usamos este comando que nos permite identificar as partições.
ls -al /dev/block/
Após seleccionarmos a zona que queremos, temos duas alternativas:
(ex: /dev/block/dm-0 – que corresponde à i)
1- Usar o mítico DD. dd if=/dev/block/dm-0 of=/sdcard/NomeAescolha.dd este primeiro comando vai enviar-nos o ficheiro para a memória do nosso dispositivo
OU
2- abrir uma nova janela de terminal e digitar:
adb pull /dev/block/dm-0 NomeAescolha.dd este segundo comando vai enviar-vos o ficheiro .dd para a pasta /home
[Agora podemos ir todos viver a vida real durante 3 ou 4 horas enquanto o pull é feito.]
Parte 4: De volta ao Windows
Disclaimer: Por opção, por facilidade, foi utilizado o AUTOPSY 4.0.0. Sim, existem ferramentas melhores, mas o AUTOPSY é bom, é grátis, e faz mais do que o que nós queremos.
Enquanto passamos o nosso ficheiro.dd da VM para o HOST em Windows, vamos aproveitar e descarregar o AUTOPSY 4.0.0. Create New Case
Enter New Case Information
Additional Information
User Data Source
Ingest Modules
E finalmente
É hora de premir Finish e começar:
Início
Este processo ainda demora um pouco, o Autopsy possui muitos ingestion modules e como tal, após alguma espera conseguirão ver a análise detalhada como na imagem em cima.
Como observam na imagem, há forma de aceder aos contactos, mensagens, registo de chamadas, cookies guardados no telefone e etc. (os cookies mereciam um artigo só para si, pois contém algumas informações interessantes).
Mas e os artefactos das aplicações? Os registos das conversas do WhatsApp?
Recentemente estivemos presentes na Cyber Security Conference, e num momento em que pudemos conversar com alguns conferencistas conhecemos um Advanced Threat Prevention Evangelist, cujo nome não vai ser mencionado por motivos de privacidade. Os métodos dos profissionais de segurança são pautados com algum rigor. Após trocarmos alguma informação, continuámos a desenvolver assuntos (ligeiros) via conversa encriptada pelo WhatsApp.
Esta aplicação introduziu há cerca de um mês uma nova encriptação para a sua base de dados, que dá pelo nome de crypt9. O que sucede é que esta encriptação só afecta as bases de dados de backup, deixando a base de dados geral ainda desencriptada.
Vamos a: Data Sources / NomeDaVossaImagem.dd / data / .com.whatsapp / databases / msgstore.db
Com este ficheiro final seleccionado, vamos ver as suas strings.
Algumas partes desta imagem estão escurecidas por motivos de segurança.
Como podem ver, assim que é recebido o contacto por esta plataforma, salvaguardo-me logo dizendo que sou mais um utilizador de Telegram do que WhatsApp. No caso desta conversa ser prova em algum crime, tem de existir forma de provar que esta conversa aconteceu mesmo e não foi modificada pelo analista.
Como método alternativo ao uso de checksum de imagens, podemos utilizar a Timeline do Autopsy, no separador Tools, para ver mais informações.
Como é possível ver,às 17:08, do dia 18 de Maio de 2016 (dia da conferência) foi criado o ficheiro msgstore.db.
Depois de toda a investigação estar concluída, podemos gerar um relatório acedendo ao separador Tools e clicando em Generate Report.
Este relatório fica na pasta do caso e é criado em HTML. É uma forma óptima de comunicar aos outros colegas o que foi descoberto, o que está em cada pasta…
Agora, com estas dicas para fazer uma análise forense, podem inspeccionar os vossos telefones e se encontrarem algo interessante nas vossas apps partilhem. ( .com.facebook.katana / .com.facebook.orca são dois bons sítios para começar!).