Esse foi um ano corrido. Muito trabalho e pouco tempo para me dedicar ao blog. O aumento dessa demanda assustou a todos do nosso laboratório, por outro lado, o Estado reduziu o nível de investimentos a zero. E como era de se esperar, a campeã das requisições é o WhatsApp e tanto o Cellebrite UFED quanto o MSAB XRY, duas das soluções de extração de dados de dispositivos de telefonia móvel mais utilizadas, possibilitam a obtenção de conteúdo relacionados a instant messenger, mas não conseguem lidar com todos os modelos baseados em Android disponíveis, ainda que estejam desbloqueados e possibilitem a configuração necessária para a operação de aquisição. Somente para exemplificar, na versão 6.4.1 do UFED, liberada no começo de novembro desse ano, tínhamos a seguinte condição:
Recurso | Quantidade |
---|---|
Modelos de telefones compatíveis | 7.351 un |
Modelos desbloqueáveis | 932 un |
Modelos com extração física por bypass do bloqueio | 3.453 un |
Modelos com extração do sistema de arquivos por bypass do bloqueio | 877 un |
Mesmo desbloqueados muitos modelos não permitem a extração do conteúdo de mensagens de WhatsApp levando-nos a realizar a extração através da técnica descrita nos posts que fiz sobre o assunto. Ainda assim recebo muitas mensagens com dúvidas, assim sendo resolvi fazer um último post sobre o tema (Até que modifiquem a sistemática que temos adotado). Então começemos.
REQUISITOS (LINUX/WINDOWS):
Na estação de trabalho…
- Java instalado e atualizado;
- O Android do dispositivo deverá ser da versão 4.0 ou superior;
- Java instalado e atualizado;
- Windows – Oracle Java
- Linux (Adotando o Linux Mint/Ubuntu como sistema operacional);
- $ sudo add-apt-repository ppa:webupd8team/java;
- $ sudo apt-get update;
- $ sudo apt-get install oracle-java8-installer;
- ADB (Android Debug Bridge);
- Windows – XDA-Developers
- Linux
- $ sudo apt-get install android-tools-adb
- Drivers
- Windows
- Driver Universal ou …
- Driver específico do fabricante de seu modelo (Pesquise no Google por “fabricante ADB driver download”;
- Windows
- Scripts para extração
- Windows ou Linux – XDA-Developers
- Quando concluir o download, extraia o conteúdo para uma pasta de sua preferência e não altere a estrutura de subpastas.
No dispositvo Android…
- Ative a “Depuração USB” em “Programador/Opções do desenvolvedor”. Caso não apareça no menu, clique seguidamente na opção “Sobre o telefone\Número da versão” até efetuar o desbloqueio da “Programador/Opções do desenvolvedor”;
- Caso o dispositivo possua bloqueio, desative-o ou mantenha-o sem bloquear durante a extração. Ao bloquear, a comunicação do computador com o celular pode interromper;
- Selecione a opção “Permanecer ativa”;
- Ao conectar ao computador selecione a conexão USB MTP;
- Caso seja solicitado confirme”Permitir a depuração USB“, caso contrário clique sobre “Revogar autorizações de depuração USB“;
- Vá até a pasta onde descompactou os scripts e execute o arquivo correspondente. Antes será preciso dá permissões de execução ao script
- Linux
- $ sudo chmod +x WhatsAppKeyDBExtract.sh
- $ ./WhatsAppKeyDBExtract.sh
- Windows – C:\WhatsApp-Key-DB-Extractor-master\WhatsAppKeyDBExtract.bat
- Linux
- Ao iniciar a execução do script lhe será solicitado realizar o backup do aplicativo. Clique em “Fazer backup dos meus dados”
Os arquivos extraídos serão copiados na pasta /Extracted, criada na pasta onde o conteúdo dos scripts foi extraído. Dentro dessa pasta você terá cinco arquivos, sendo o msgstore.db o arquivo com os diálogos, wa.db o arquivo com a agenda de contatos e o arquivo whatsapp.cryptkey a chave de criptografia para descriptografar os arquivos msgstore-yyyy-mm-dd.x.db.crypt12 presentes na pasta /sdcard/WhatsApp/Databases.
Pronto a extração foi realizada.
você terá (no Linux) a seguinte saída dos comando executados pelo script
$ ./WhatsAppKeyDBExtract.sh ========================================================================= = This script will extract the WhatsApp Key file and DB on Android 4.0+ = = You DO NOT need root for this to work but you DO need Java installed. = = If your WhatsApp version is greater than 2.11.431 (most likely), then = = a legacy version will be installed temporarily in order to get backup = = permissions. You will NOT lose ANY data and your current version will = = be restored at the end of the extraction process so try not to panic. = = Script by: TripCode (Greets to all who visit: XDA Developers Forums). = = Thanks to: dragomerlin for ABE and to Abinash Bishoyi for being cool. = = ### Version: v4.7 (12/10/2016) ### = ========================================================================= Please connect your Android device with USB Debugging enabled: * daemon not running. starting it now on port 5037 * * daemon started successfully * Downloading legacy WhatsApp 2.11.431 to local folder % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 17.4M 100 17.4M 0 0 3130k 0 0:00:05 0:00:05 --:--:-- 3375k WhatsApp 2.17.395 installed Backing up WhatsApp 2.17.395 5990 KB/s (30782098 bytes in 5.018s) Backup complete Removing WhatsApp 2.17.395 skipping data Success Removal complete Installing legacy WhatsApp 2.11.431 7948 KB/s (18329558 bytes in 2.251s) pkg: /data/local/tmp/LegacyWhatsApp.apk Success Install complete Now unlock your device and confirm the backup operation. Please enter your backup password (leave blank for none) and press Enter: apps/com.whatsapp/f/key apps/com.whatsapp/db/msgstore.db apps/com.whatsapp/db/wa.db apps/com.whatsapp/db/axolotl.db apps/com.whatsapp/db/chatsettings.db Saving whatsapp.cryptkey ... Saving msgstore.db ... Saving wa.db ... Saving axolotl.db ... Saving chatsettings.db ... Pushing cipher key to: /sdcard/WhatsApp/Databases/.nomedia 2 KB/s (158 bytes in 0.053s) Restoring WhatsApp 2.17.395 4947 KB/s (30782098 bytes in 6.075s) pkg: /data/local/tmp/base.apk Success Restore complete Cleaning up temporary files ... Done Operation complete Please press Enter to quit...
Só para lembrar, eu utilizo preferencialmente o Linux como ambiente para realizar as extrações. E mais, NÃO é possível abrir os arquivos criptografados sem a chave utilizada para a codificação.
Até o próximo.