Come è strutturato il database di Whatsapp?
Come fanno numerose app, WhatsApp memorizza tutte le sue informazioni su un database SQLite: la posizione e la struttura del database sono diverse da piattaforma a piattaforma.
Android
Se scegli di evitare il rooting del dispositivo, potrai ottenere solo un file criptato dalla scheda SD (/sdcard/WhatsApp/Databases/msgstore.db.crypt). Qual'è la struttura del file? Casuale, ovviamente! C'è una soluzione? Sì, c'è... finora. Il WhatsApp Database Encryption Project di Corjens, Spruyt e Wieringa ha reso nota una vulnerabilità nell'implementazione Android del cifrario AES: la chiave a 192 bit può essere rilevata eseguendo un'analisi sia statica che attiva sul pacchetto software. E il risultato è:
346a23652a46392b4d73257c67317e352e3372482177652c
Sono sufficienti poche righe di codice Python per ottenere un database decriptato.
Inversamente, se si esegue il root del dispositivo, si raggiungono facilmente i database semplici (/data/data/com.whatsapp/databases/msgstore.db e wa.db).
Come si può vedere nella prima figura, il database della versione Android è diviso in due file: wa.db contiene tutte le informazioni relative ai contatti (id, numero di telefono, stato, ecc.), mentre msgstore.db memorizza i messaggi, compresi gli allegati.
iOS
iTunes ha la capacità di sincronizzare e fare il backup automatico del contenuto dell'iPhone quando lo colleghi al tuo computer. E il backup non è criptato per impostazione predefinita. Quindi, anche evitando l'uso dell'analizzatore fisico UFED, potrebbe essere possibile trovare sul computer di una persona sospetta, un'enorme quantità di dati sul suo iPhone. iPhone Backup Extractor interpreta questi dati e ti permette di estrarre tutti i file che vuoi. Application/net.whatsapp.WhatsApp/Documents/ChatStorage.sqlite è la fonte di informazioni che stiamo cercando.
A differenza della versione Android, le tabelle sono qui raccolte in un unico file, ma la struttura è un po' più complicata: ZWACHATSESSION e ZWASTATUS hanno i contatti, ZWAMESSAGE e ZWAMEDIAITEM raccolgono i dettagli sui messaggi e gli allegati.
Articoli simili
- Qual è la differenza tra un database tradizionale e un database moderno?
- Qual è la differenza tra uno sviluppatore di database e un amministratore di database?
- Come decriptare un file crypt8 del database di WhatsApp
- Come recuperare il mio database di WhatsApp se è stato accidentalmente cancellato dal mio file system del cellulare Android