Accueil > Divers (et d’été) > Informatique > Autour de l’Iphone > Récupérer les SMS de son iPhone

Récupérer les SMS de son iPhone

lundi 13 septembre 2010, par Paul Courbis

Prérequis

  • un iPhone jailbreaké ;
  • un accès sftp à l’iPhone (il faut installer le package OpenSsh dans Cydia, disposer d’un client sftp sur votre machine de bureau et connecter les deux sur le même réseau) ou un outil de transfert de fichiers comme iphonefolders ;
  • un outil permettant de lire des fichiers de bases de données Sqlite (inclus dans Cygwin sous le nom sqlite3.exe).

Méthode

Il suffit de récupérer le fichiers sms.db dans le répertoire /private/var/mobile/Library/SMS/sur l’iPhone qui contient, en particulier, la table message :

  • ROWID Identifiant unique du message
  • address Numéro de téléphone de l’émetteur su SMS
  • date date du message (heure GMT) en secondes depuis le 1er janvier 1970. Il est possible de convertir cette heure facilement sous Unix dans un format lisible à l’aide de la commande date -u -R --date "1970-01-01 XXXXXXXX seconds" ou XXXXXXXX est le nombre de secondes en question.
  • text Contenu du message
  • flags
  • replace
  • svc_center
  • group_id
  • association_id
  • height
  • UIFlags
  • version
  • subject
  • country
  • headers
  • recipients
  • read
  • smsc_ref
  • dr_date

Il est possible d’exporter les données en fichier plus facilement utilisable en utilisant les commandes suivantes (en gras ce qu’il faut taper) :

sqlite3 sms.db
SQLite version 3.6.21
Enter « .help » for instructions
Enter SQL statements terminated with a «  ; »
sqlite>.mode html
sqlite>.output messages.html
sqlite>select * from message ;
sqlite>.quit

On obtient alors un segment de fichier html au format UTF-8. Pour pouvoir l’ouvrir avec un navigateur Internet (ou avec Excel pour le modifier facilement), il faut rajouter le code suivant au début du fichier :

<html>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<body>
<table>
<tr>
<th>ROWID</th>
<th>address</th>
<th>date</th>
<th>text</th>
<th>flags</th>
<th>replace</th>
<th>svc_center</th>
<th>group_id</th>
<th>association_id</th>
<th>height</th>
<th>UIFlags</th>
<th>version</th>
<th>subject</th>
<th>country</th>
<th>headers</th>
<th>recipients</th>
<th>read</th>
<th>smsc_ref</th>
<th>dr_date</th>
</tr>

Rajouter aussi, en fin de fichier :

</table>
</body>
</html>

On obtient alors un fichier HTML complet, facilement éditable...

Messages

Un message, un commentaire ?

modération a priori

Ce forum est modéré a priori : votre contribution n’apparaîtra qu’après avoir été validée par un administrateur du site.

Qui êtes-vous ?
Votre message

Pour créer des paragraphes, laissez simplement des lignes vides.