O Whatsapp é um aplicativo multiplataforma de mensagens instantâneas para smartphones com muitos recursos adicionais como envio de fotos, vídeos, áudio, mapas, etc., sem pagar por isso (Parece que não por muito tempo). O app é uma presença comum e importante em aparelhos de telefonia móvel e está disponível para iOS, BlackBerry OS, Android, Windows Phone, Symbian e Nokia. Tornou-se uma ferramenta de sucesso na categoria de instant messengers, chegando em 2013 a 30 bilhões de mensagens por dia. Todos utilizam o programa e nesta esteira de sucesso apareceram também os problemas, pois toda vez que algo é documentado, pode ser utilizado como prova em disputas judiciais.
A extração, recuperação e análise de mensagens do WhatsApp é procedimento relativamente simples, mas pode trazer alguma dificuldade para quem nunca fez. Os arquivos de mensagens do WhatsApp podem variar de localização. Dispositivos de telefonia móvel possuem uma memória interna e uma memória externa, como um micro SD e ambas pode ser utilizadas para armazenar os arquivos de mensagens, dependendo do sistema do aparelho onde está instalado.
Os procedimentos a seguir são específicos para os sistemas Android e iOS.
Android
Nos aparelhos com sistema Android os arquivos de mensagens ficam gravados tanto na memória do aparelho quanto no cartão. Na memória do aparelho o arquivo de mensagens, msgstore.db e o arquivo com a lista de contatos, wa.db, ficam na pasta /data/data/com.whatsapp/databases, situada na partição do sistema, entretanto o acesso ao seu conteúdo através do aparelho só é possível se estiver em modo root, se não estiver é bom lembrar que as boas práticas forenses não recomendam colocar o Android em modo root. Caso esteja configurado para manter backup das mensagens, o WhatsApp armazena o arquivo de mensagens no cartão de memória, na pasta /sdcard/WhatsApp/Databases, sob o nome msgstore.db.crypt indicando que o mesmo encontra-se sob criptografia, ou nomeado como msgstore-yyyy-mm-dd.X.db.crypt caso haja mais de um arquivo de backup. Caso os arquivos msgstore.db e wa.db possam ser recuperados é possível extrair a lista das mensagens com o nome associado na lista de contatos do aplicativo.
iOS
Nos iPhones os arquivos de mensagens também ficam gravados tanto na memória do aparelho quanto no cartão. O arquivo ChatStorage.sqlite fica armazenado na pasta /net.whatsapp.WhatsApp/Documents.
A extração dos arquivos pode ser feita de diversas maneiras:
- Conectando o dispositivo diretamente a um computador;
- Conectando o cartão de memória a um leitor de cartões;
- Utilizando um gerenciador de arquivos no dispositivo.
Após recuperar os arquivos é necessário copiá-los para a estação onde o conteúdo será recuperado. Esta estação deve ter instalado o ActivePython 32 bits, que pode ser baixado aqui. Mesmo que você tenha Windows de 64 bits, instale a versão de 32 bits. Em seguida baixe o WhatsApp Extract 2.1 aqui e extraia na pasta C:\Whatsapp (Por exemplo).
Após extrair o arquivo acesse a pasta onde você colocou seu conteúdo e execute o arquivo “install pyCrypto.bat” para instalar a biblioteca Pycrypto, que será utilizada para descriptografar arquivos crypt.
Os arquivos criptografados utilizam uma chave de 192 bits AES conhecida, cujo valor é 346a23652a46392b4d73257c67317e352e3372482177652c e podem ser descriptografados utilizando OpenSSL , seguindo o comando abaixo.
~$ openssl enc -d -aes-192-ecb -in msgstore.db.crypt -out msgstore.db -K 346a23652a46392b4d73257c67317e352e3372482177652c
O OpenSSL é pré-instalado no linux e no Mac, e no Windows deve ser baixado aqui e instalado.
O WhatsApp Extract 2.1 também possui um script para realizar esta tarefa e pode ser executada através do arquivop de lote whatsapp_xtract_android_crypted.bat.
Execute então os arquivos de lote whatsapp_xtract_android.bat e whatsapp_xtract_android_crypted.bat para o sistema Android e o whatsapp_xtract_iphone.bat para os iOS. O arquivo whatsapp_xtract_console.bat carrega o command do Windows, com instruções para que possa ser utilizado para ambos. Existe ainda o arquivo whatsapp_xtract_drag’n’drop_database(s)_here.bat para ambos os sistemas, que como o nome indica permite o uso do recurso arrastar e soltar para extrair o conteúdo das mensagens.
A extração é realizada e é gerado um arquivo html contendo as mensagens de forma estruturada, organizadas por número do interlocutor, data da mensagem, direção das mensagens (de/para), conteúdo da mensagem, status da mensagem, tipo da mídia enviada/recebida e tamanho desta mídia.
Até o próximo.