Tutoriales

Cómo desencriptar el fichero msgstore.db.crypt de WhatsApp

Hace poco más de un año, realizábamos una entrada mediante la cual, y siguiendo una serie de pasos, podíamos obtener los mensajes del fichero msgstore.db, archivo donde se almacenan todos nuestros mensajes y el cual ha sido polémica durante todo este tiempo debido a la inseguridad con la que WhatsApp maneja el mismo.

Tras una serie de actualizaciones, WhatsApp hizo tarea imposible o mejor dicho ardua, el poder obtener los mensajes contenidos dentro del mismo y para ello, encriptó el fichero pasando a denominarse “msgstore.db.crypt”, sin embargo, dicho fichero ya es posible desencriptarlo y ver el contenido del mismo.

A continuación, trataré de llevar a cabo una serie de indicaciones para que puedan conseguir desencriptar dicho fichero que tantos quebraderos de cabezas ha traído a más de uno.

Como desencriptar el fichero msgstore.db.crypt de WhatsApp…

Herramientas necesarias

Para empezar, necesitamos una aplicación que ha sido desarrollada por Fabio Sangiacomo, denominada WhatsApp Xtract, y la descomprimimos en una carpeta a nuestro alcance, como por ejemplo nuestro escritorio. La descarga de dicha aplicación la puedes encontrar al final de este artículo. Además de la herramienta anterior, necesitaremos el fichero “msgstore.db.crypt“, el cual podemos localizar en la siguiente ruta y dependiendo del terminal que tengamos:

  • Androidruta: /sdcard/WhatsApp/Databases/msgstore.db.crypt  Si no localizamos el fichero anterior, este puede ser creado simplemente creando una copia de seguridad, opción que podemos localizar en Configuración-Más-Backup Chats del propio WhatsApp.
  • iOS – ruta: net.whatsapp.WhatsApp/Documents/ChatStorage.sqlite  Podemos usar la herramienta Backup para obtener dicho fichero o bien Backup Extractor. Asimismo, vamos a necesitar que, en nuestro ordenador, tengamos instalado Python y la librería PyCrypto.

Instalando…

Antes de llevar a cabo el proceso para poder desencriptar, es necesario instalar las herramientas descritas anteriormente. Por tanto, voy a dejar al final de este artículo, las descargas de los ficheros que vamos a necesitar.

¡Recuerda que…!, debemos instalar Python y la librería pyCryto. Descomprimir y guardar en nuestro escritorio (y en una carpeta), la aplicación “WhatsApp Xtract“, como punto clave, obtener el fichero a desencriptar y guardarlo dentro de la misma carpeta que tengamos “WhatsApp Xtract”.

Para instalar pyCrypto, debemos hacer clic con el botón derecho de nuestro ratón sobre el fichero “!install pyCrypto” que debemos tener en la carpeta “python27“, y hacer clic en “Ejecutar como Administrador”, ya que de no hacerlo así, no se llevará a cabo la instalación de dicha librería.

Desencriptando…

El proceso de desencriptado, se realiza de una forma muy fácil, si las instalaciones llevadas a cabo han sido satisfactorias. De esta forma, y para poder desencriptar el fichero msgstore.db.crypt tan solo tenemos que acceder a la carpeta donde tengamos guardado “WhatsApp Xtract” y realizar lo siguiente:

  1. Comprobar que el nombre del fichero a desencriptar es “msgstore.db.crypt”.
  2. Hacer clic sobre el fichero “whatsapp_xtract_android_crypted”
  3. Esperar el proceso de desencriptado.

Llegados a este punto, te estarás preguntando… ¿y cómo veo el contenido? Pues de una forma muy fácil y sin tener nada o casi nada que hacer, ya que los resultados serán mostrados en nuestro navegador de Internet y se encontrarán almacenados en la carpeta de la aplicación “WhatsApp Xtract” como “msgbstore.db.html“, con lo cual, podremos abrir dicho fichero cuantas veces sea necesario.

 

¿Cómo es posible lograr la desencriptación del fichero msgstore.db.crypt?….

Los chicos de Tech Buzz encontraron un fallo que se encuentra en el fichero backup, y es que siempre se encripta usando la misma key (clave): 346a23652a46392b4d73257c67317e352e3372482177652c y la misma no cambia para ningún terminal móvil, por lo cual es posible recuperar la información en unos pocos segundos. Descifrar por tanto el fichero y acceder a la base de datos se puede hacer de forma sencilla con OpenSSL (fuente  y binario para windows ), con el siguiente comando, donde tan solo es necesario especificar el fichero de entrada (-in) y el de salida (-out) con los nombres que correspondan, además de la clave indicada anteriormente:
openssl enc -d  -aes-192-ecb -in msgstore-1.db.crypt -out msgstore.db.sqlite -K 346a23652a46392b4d73257c67317e352e3372482177652c

 Herramienas necesarias…


ActivePython (4111 descargas)

El fichero “!install pyCrypto” lo he agregado a la aplicación “WhatsApp Xtract”,  tan solo debes copiarlo en la carpeta “python27” y ejecutarlo desde allí para instalar dicha librería.

NOTA IMPORTANTE: si el fichero se encuentra en formato .db.crypt7, db.crypt8, db.crypt9, db.crypt10, db.crypt11 o db.crypt12 será necesario que remitas además la key de whatsapp para dicho terminal desde el cual quieres desencriptar la base de datos. Te recordamos que éste método no funciona para los terminales BBM. Si no sabes de lo que estoy hablando, por favor, ponte en contacto conmigo en la siguiente dirección: desencriptar(arroba)mail.com

Instrucciones para obtener el fichero key del terminal móvil…

Recuerda que el fichero key es muy importante para poder desencriptarlo, éste se solicita a partir de la versión .db.crypt6, por tanto, deberás seguir las siguientes instrucciones:

Pre-requisitos a tener en cuenta:
  1. Debes disponer de uno de los siguientes sistemas operativos: Windows Vista, 7, 8, 10, Mac OS X o Linux
  2. Java, si no está instalado puedes descargarlo Descargar Java
  3. Drivers ADB (Android Debug Bridge) Descargar Drivers
  4. USB Debug activado en el móvil, es decir, el modo desarrollador debe estar activado
  5. El sistema operativo del terminal móvil debe ser Android 4.0 o superior
Instrucciones a seguir:
  1. DESCARGAR: WhatsApp-Key-DB-Extractor-master.zip
  2. Extraer WhatsApp-Key-DB-Extractor-master.zip (manten la estructura de directorios)
  3. Hacemos clic en WhatsAppKeyDBExtract.bat (si es Windows) o WhatsAppKeyDBExtract.sh (si es Mac o Linux)
  4. Conectas el terminal móvil vía USB, desbloqueando la pantalla y esperamos que aparezca el mensaje Full backup
  5. Introduces tu clave o la dejas en blanco si no se ha tenido previamente contraseña (lo normal es dejarlo en blanco) y pulsas en Back up my data
  6. Luego solo deberás comprobar que existen ficheros dentro de la carpeta “extracted”, en la cual encontrarás los archivos necesarios entre los que se incluye el fichero key.

Donar por Desencriptar

Si no entiendes mucho de informática o simplemente no quieres llevar a cabo lo indicado en este artículo, podrás optar por una realizar una donación a cambio de recibir el fichero con las conversaciones desencriptadas de WhatsApp. Para ello, hemos elaborado el siguiente módulo, desde el cual obtendrás la información necesaria. Si tienes cualquier duda, por favor, déjanos un comentario.

¡No olvides leer los términos y condiciones indicados y gracias por tu donación!


 
 
Eligiendo el método de pago de la lista, significa que estoy de acuerdo con los siguientes Términos y Condiciones.

Al donar aceptas estos términos y condiciones.

1. La donación es voluntaria, nadie te obliga a donar, sin embargo, al donar recibirás una compensación, como por ejemplo la descarga de algún fichero, cuyo enlace recibirás en tu e-mail.
2. El fin de estas donaciones esta destinado exclusivamente al mantenimiento del servidor, y a mejoras del mismo.
3. El donante es responsable en todo momento de lo que hace, y debe ser una persona física.
4. Los menores no independientes, deberán tener el permiso de sus padres para donar.
5. Los incapacitados judicialmente no podrán donar bajo ningún concepto.
6. Este servicio de DONACIONES es GRATUITO y sin ningún coste.
7. El dinero DONADO nunca, bajo ningún concepto, será devuelto.
8. Ser donante, no te excluye de cumplir estos términos y condiciones, ni los términos y condiciones de Vera's Soul. En caso de que esto pase, el equipo administrativo puede considerar prohibir el acceso a nuestros servicios a esa cuenta y/o borrarla sin previo aviso ni posibilidad de vuelta atrás.
9. Vera´s Soul se reserva el derecho de cancelar cuentas en caso de fraude o estafa.
10. El servicio Vera's Soul se presta “TAL CUAL” y podrá contener errores que provoquen eventualmente fallos, interrupciones o pérdidas en los datos y/o la información, incluyendo cuentas, objetos y mapas, que estén almacenados en nuestro servidor. Usted reconoce y acepta expresamente que utilizará ésto bajo su riesgo.
11. Estos términos y condiciones pueden ser modificados sin previo aviso.
12. Se recomienda leer y comprender los términos y condiciones de PAYPAL. Punto 13.3 y 13.5 (https://www.paypal.com/es/webapps/mpp/ua/upcoming-policies-full?locale.x=es_ES)



 

 

Más información en: xda-developersSecurityByDefaultactivestatehotoloti

280 Comentarios

  • Amigo podrias hacer un video para mi, de esa guia porque no entiendo absolutamente nada :( Te lo agradeceria en el alma

  • Tengo una duda a ver si me podes ayudar, lo hice funcionar y vi los mensajes de la base de datos, pero tambien copie todo lo que estaba en la carpeta de WhatsApp y hay varias conversaciones que no estan incluidas en la base creo que fueron borradas pero por lo que tengo entendido se almacen 7 dias mas puede ser? Por que esas son las que necesito recuperar… Tenes idea como puedo hacer??

    • Es posible que las conversaciones que estés buscando se encuentren almacenadas en diferentes ficheros. Echa un vistazo a la carpeta Backups del WhatsApp, pues en ella encontrarás los diferentes ficheros de copia de seguridad, el cual contienen las demás conversaciones anteriores a cierta fecha. Ten en cuenta que todo dependerá si tenías activado la realización de copias de seguridad de forma automática.

      Si es así, tan solo deberás ir mirando fichero por fichero y desencriptándolos uno a uno.

  • hola amigos, deseo hacer esto con el archivo de genera un blackberry, pues se llama diferente y su extensiòn tambien. Me urge desencriptar los archivos de whatsapp en un blackberry messageStore . ejemplo estos son los archivos que tengo en la carpeta de .
    whatsapp de un blackberry
    agradezco su ayuda
    7.260 1330978303407messageStore.db
    85 1330978303407messageStore.db-exception
    285.788 messageStore.db
    244.828 messageStore.db.d.1347058724072.bak
    246.876 messageStore.db.d.1347229039636.bak
    261.212 messageStore.db.d.1347311858964.bak
    112.732 messageStore.db.w.1345780664309.bak
    175.196 messageStore.db.w.1346458643515.bak
    246.876 messageStore.db.w.1347141869819.bak
    580.853 bytes

  • El archivo que se almacena en BlackBerry es el mismo que para cualquier otro. Como puedes ver tienes varias versiones de archivo, los que acaban en .bak son las copias de seguridad que WhatsApp ha ido haciendo y en ellos se encuentran las conversaciones guardadas en diferentes fechas.

    Para poder desencriptar, sigue los pasos indicados, pero debes renombrar el archivo que quieras desencriptar al que se comenta, es decir, si tu fichero se denomina “messageStore.db” lo renombras a “msgstore.db.crypt” y pruebas la desencriptación, en el caso que no sea encriptado, pruebas a renombrarlo a “msgstore.db” y empleas el script para desencriptar los ficheros no encriptados, es decir, el llamado “whatsapp_xtract_android”, recuerda que el fichero “msgstore.db” que hayas renombrado debes incluirlo en la misma ruta donde tienes WhatsApp Xtract.

    Un saludo y suerte.

  • Hola:

    Gracias x el video, la verdad que lo explicas genial.
    Tengo un problema, cuando ejecuto el whatsapp_xtract_android_crypted para que me pase el archivo msgstore-2012-09-06.1.db.crypt a html, me sale error: no such table: chat_list.
    ¿Que puede ser?
    Muchas gracias!!

    • Denada Paulina.

      En relación a ese error, se debe a que no has cambiado el nombre al fichero msgstore, es decir, debes cambiar el nombre al fichero msgstore-2012-09-06.1.db.crypt, debiendo quedar como msgstore.db.crypt

      Un saludo