Análisis forense de WhatsApp

Colapsar
X
 
  • Filtrar
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • noSign
    Super Moderator
    • Dec
    • 4905

    Análisis forense de WhatsApp

    Análisis forense de WhatsApp


    WhatsApp es una de esas aplicaciones privadas y rutinarias para muchos usuarios. Las personas tratan los chats como si fueran conversaciones privadas y, como es una experiencia cómoda, suelen compartir allí cosas que no dirían en redes sociales públicas. Por eso WhatsApp es tan crucial para el análisis forense digital. La aplicación almacena conversaciones, archivos multimedia, marcas de tiempo, información de pertenencia a grupos y metadatos que pueden ayudar a reconstruir eventos, identificar contactos y corroborar cronologías en investigaciones criminales y cibernéticas.

    El análisis forense de WhatsApp se realiza para encontrar pruebas fiables. Los datos recuperados de un dispositivo pueden mostrar quién se comunicó con quién, cuándo se enviaron y recibieron los mensajes, qué archivos multimedia se intercambiaron y, a menudo, qué cuenta era la propietaria del dispositivo. Esta información se utiliza para vincular a sospechosos y verificar declaraciones. También mapea movimientos al combinarse con datos de ubicación en los que investigadores y fiscales pueden confiar.
    Artefactos de WhatsApp en dispositivos Android

    En Android, WhatsApp almacena la mayoría de los datos privados de la aplicación en el área de datos de usuario del dispositivo. Normalmente, los archivos de la aplicación se encuentran en una ruta como
    /data/data/com.whatsapp/
    o, equivalentemente,
    /data/user/0/com.whatsapp/
    en muchos dispositivos.

    Normalmente, no se puede acceder a estos directorios sin privilegios elevados. Para leerlos directamente, generalmente se necesita acceso de superusuario (root) en el dispositivo o un volcado físico del sistema de archivos obtenido por medios legales y técnicamente adecuados. Si no tienes root o una imagen física, tus opciones se limitan a copias de seguridad lógicas u otros métodos de extracción que podrían no exponer las bases de datos privadas de WhatsApp.

    Dos archivos merecen atención inmediata en Android:
    wa.db y msgstore.db
    Ambos son bases de datos SQLite y juntos forman el núcleo de la evidencia de WhatsApp.

    Haga clic en la imagen para ver una versión más grande

Nombre:	2-wa.db-sql-file.webp
Visitas:	25
Size:	17,5 KB
ID:	57069

    Wa.db es la base de datos de contactos. Enumera los contactos del usuario de WhatsApp y generalmente contiene números de teléfono, nombres para mostrar, cadenas de estado, marcas de tiempo de creación o modificación de contactos y otros metadatos de registro. Normalmente, el archivo se abre con un navegador SQLite o se consulta con sqlite3 para inspeccionar las tablas.

    Las tablas clave que buscan los investigadores son la tabla que almacena los registros de contactos (a menudo denominada wa_contacts o similar), sqlite_sequence, que contiene recuentos de autoincremento y proporciona una idea de la escala, y android_metadata, que contiene información de localización, como el idioma de la aplicación.

    Wa.db es esencialmente la libreta de direcciones de WhatsApp. Contiene nombres, números y un poco de contexto para cada contacto.

    Haga clic en la imagen para ver una versión más grande

Nombre:	4-msgstore.db-file-sql.webp
Visitas:	22
Size:	31,4 KB
ID:	57070

    msgstore.db es el almacén de mensajes. Esta base de datos contiene los mensajes enviados y recibidos, las marcas de tiempo, el estado de los mensajes, los identificadores del remitente y del destinatario, y referencias a archivos multimedia.

    En muchas versiones de WhatsApp, encontrará tablas que incluyen una tabla de información general (a menudo denominada sqlite_sequence); una tabla de índice de texto completo para el contenido de los mensajes (message_fts_content o similar); la tabla principal de mensajes, que suele contener el cuerpo del mensaje y los metadatos; messages_thumbnails, que cataloga las imágenes y sus marcas de tiempo, y una tabla chat_list, que almacena las entradas de las conversaciones.

    Tenga en cuenta que WhatsApp evoluciona y los nombres de los campos cambian entre versiones. Las versiones más recientes del esquema pueden incluir campos adicionales como media_enc_hash, edit_version o payment_transaction_id. Siempre revise el esquema antes de confiar en un nombre de campo específico.

    En muchos dispositivos Android, WhatsApp también guarda copias de seguridad cifradas en una ubicación de almacenamiento pública, generalmente en
    /data/media/0/WhatsApp/Databases/
    (la tarjeta SD virtual) o en
    /mnt/sdcard/WhatsApp/Databases/
    para tarjetas SD físicas.
    Estos archivos de copia de seguridad se parecen a msgstore.db.cryptXX, donde XX indica la versión del esquema criptográfico.

    Los archivos msgstore.db.cryptXX son una copia cifrada de msgstore.db, diseñada para copias de seguridad del dispositivo. Para descifrarlos, se necesita una clave criptográfica que WhatsApp almacena de forma privada en el dispositivo, generalmente en /data/data/com.whatsapp/files/. Sin esa clave, las copias de seguridad cifradas no son legibles.

    Otros archivos y directorios importantes de Android que conviene examinar incluyen las preferencias y los XML de registro en /data/data/com.whatsapp/shared_prefs/. El archivo com.whatsapp_preferences.xml suele contener detalles del perfil y valores de configuración. Un fragmento de este archivo puede mostrar el número de teléfono asociado a la cuenta, la versión de la aplicación, un mensaje de perfil como "¡Hola! Estoy usando WhatsApp" y el nombre para mostrar de la cuenta. El archivo registration.RegisterPhone.xml suele contener metadatos de registro, como el número de teléfono y el formato regional.

    El archivo axolotl.db en /data/data/com.whatsapp/databases/ contiene las claves criptográficas (utilizadas en la implementación del protocolo Signal/Double Ratchet) y los datos de identificación de la cuenta. Chatsettings.db contiene la configuración de la aplicación. Los registros se guardan en /data/data/com.whatsapp/files/Logs/ y pueden incluir whatsapp.log, así como copias de seguridad rotadas comprimidas como whatsapp-YYYY-MM-DD.1.log.gz.

    Estos registros pueden revelar la actividad y los errores de la aplicación, lo que puede ser útil para el análisis de tiempos o la resolución de problemas.

    En el área privada de la aplicación, también puedes encontrar fotos de perfil en caché en /data/data/com.whatsapp/cache/Profile Pictures/ y miniaturas de avatar en /data/data/com.whatsapp/files/Avatars/. Algunas miniaturas de avatar usan la extensión .j, aunque en realidad son archivos JPEG. Siempre valida las firmas de los archivos en lugar de confiar en las extensiones.

    Si el dispositivo usa una tarjeta SD, un directorio de WhatsApp en la raíz de la tarjeta puede almacenar copias de los archivos compartidos /mnt/sdcard/WhatsApp/.Share/, una carpeta de papelera para el contenido eliminado /mnt/sdcard/WhatsApp/.trash/ y el subdirectorio Databases con copias de seguridad cifradas y subcarpetas multimedia que reflejan las del almacenamiento interno. La presencia de archivos eliminados o carpetas .trash puede ser una fuente fructífera de medios recuperados.

    Una complicación clave en Android es el comportamiento del fabricante o de la ROM personalizada. Algunos proveedores añaden funciones que cambian la ubicación donde se almacenan los datos de la aplicación. Por ejemplo, algunos teléfonos Xiaomi implementan la función "Segundo Espacio" que crea un segundo espacio de trabajo para el usuario. En este segundo espacio de trabajo, WhatsApp almacena sus datos en una ruta de ID de usuario diferente, como /data/user/10/com.whatsapp/databases/wa.db, en lugar de la habitual /data/user/0/com.whatsapp/databases/wa.db.

    A medida que las cosas evolucionan y cambian, es necesario validar las rutas reales en el dispositivo de destino en lugar de asumir ubicaciones estándar.

    Notas prácticas para principiantes

    A partir de las bases de datos y los archivos multimedia descritos anteriormente, se puede recuperar listas de contactos, historiales de chat completos o parciales, marcas de tiempo en formato de época (comúnmente, epoch en milisegundos en Android), estado de los mensajes (enviados, entregados, leídos), nombres y hashes de archivos multimedia, pertenencia a grupos, nombres de perfil y avatares, contactos bloqueados e incluso registros de aplicaciones y metadatos de versiones. Esto nos ayuda a comprender quién se comunicó con quién, cuándo se intercambiaron mensajes, si se transfirieron archivos multimedia y qué cuentas se configuraron en el dispositivo.

    Para principiantes, es importante tener en cuenta algunas precauciones prácticas. En primer lugar, opere siempre con imágenes forenses o copias de archivos extraídos. No trabaje directamente en el dispositivo en vivo a menos que esté realizando una adquisición aprobada y controlada y haya documentado cada acción. En segundo lugar, utilice herramientas forenses confiables para abrir bases de datos SQLite.

    Si analiza los campos manualmente, confirme los formatos de las marcas de tiempo y las zonas horarias. En tercer lugar, las copias de seguridad cifradas requieren la clave del dispositivo para descifrarlas. Esta clave suele almacenarse en el área privada de la aplicación en Android, y sin ella no es posible descifrar los archivos .cryptXX En cuarto lugar, los chats y archivos eliminados no siempre desaparecen, ya que las bases de datos pueden dejar registros o los archivos multimedia pueden permanecer en cachés o en almacenamiento externo. Sin embargo, la recuperación nunca está garantizada y depende de muchos factores, como el tiempo transcurrido desde la eliminación y la actividad posterior del dispositivo.

    Al revisar las tablas de mensajes, asigne cuidadosamente los campos de ID de mensaje a las referencias multimedia. Muchas versiones de WhatsApp utilizan tablas independientes para los elementos multimedia, donde el archivo real se referencia mediante un ID de medio o un nombre de archivo. Las tablas de miniaturas y los directorios multimedia le ayudarán a reconstruir el vínculo entre un mensaje de texto y el archivo que lo acompaña. Preste atención a la presencia de campos adicionales en las versiones más recientes de la aplicación. Estos pueden contener ID de pago, historial de ediciones o metadatos de cifrado. Adapte sus consultas según corresponda.

    Finalmente, dado que WhatsApp y los sistemas operativos cambian con el tiempo, siempre revise el esquema y las marcas de tiempo de los archivos según la evidencia específica que tenga. No asuma que los nombres de campo o las rutas son idénticos en todos los dispositivos o versiones de la aplicación. Mantenga una lista de las rutas y los nombres de archivo que encuentre para poder reproducir el proceso y explicarlo en los informes.
    Resumen

    El análisis forense de WhatsApp es una disciplina compleja. En Android, los principales artefactos son la base de datos de contactos wa.db, el almacén de mensajes msgstore.db y las copias de seguridad cifradas como msgstore.db.cryptXX, junto con directorios multimedia, XML de preferencias y material de claves criptográficas en el área privada de la aplicación.




    Fuentes:


    Mobile Forensics is one of the most challenging and powerful skills in cybersecurity. Learn how to extract and analyze data from mobile devices, uncover hidden apps and artifacts, and trace real-world attacks!


    Nota.: Figura el análisis para iOS

Trabajando...
X