LES NAVIGATEURS INTERNET
Safari
Safari est le navigateur internet installé par défaut avec le système d’exploitation Mac Os X « Leopard ». La dernière version stable porte le numéro 4.0.4. Ce navigateur est mis à jour automatiquement en même temps que le système. Il fonctionne comme tous les autres navigateurs du marché en utilisant un cache, un historique, des favoris etc... Le changement principal apporté par cette version 4 vient de l’utilisation pour le cache d’une base de données Sqlite (fichiers au format base de données Sqlite3), ainsi qu’une capture d’écran des pages web visitées. L’historique internet fait lui aussi appel aux bases de données Sqlite et également aux fichiers de préférences « .plist ».
Pour commencer, il est toujours intéressant de connaitre la configuration utilisateur du navigateur. Pour ce faire, il faut consulter le fichier :
« /Users/<utilisateur>/Library/Preferences/com.apple.Safari.plist ».
Dans ce fichier se trouve, entre autre, l’URL de la page de démarrage par défaut (Fig.24) :

Figure 24
Les autres informations font référence à la configuration visuelle du navigateur, avec les différents éléments affichés, ainsi que les barres d’outils configurées.
Le cache internet : comme signalé ci-dessus, le cache internet est entièrement contenu dans un fichier de base de données de type Sqlite. Son emplacement par défaut est : « /Users/<nomutilisateur>/Library/Caches/com.apple.Safari/Cache.db ». Cette base de données est composée de trois tables à analyser :
« cfurl_cache_schema_version » : aucune information intéressante pour une analyse
« cfurl_cache_response » : liste des URL consultées avec date et heure
« cfurl_cache_blob_data » : liste des images du cache
Les deux tables intéressantes sont donc « response » et « blob_data ». Ci-dessous une capture d’écran de ces tables :
cfurl_cache_response (Fig.25)

Figure 25
Les champs importants de cette table sont :
« entry_ID » : clé unique reliant les deux tables
« request_key » : URL visité
« time_stamp » : date et heure de consultation
Cfurl_cache_blob_data (Fig.26)
Figure 26
Les champs importants de cette table sont :
« entry_ID » : clé unique reliant les deux tables
« receiver_data » : contient l’image
Afin de relier les informations et de les avoir sur une même ligne, il faut créer et exécuter une requête SQL à l’aide d’un logiciel idoine tels que « Sqlite Expert Professional 2 », logiciel gratuit. La requête est donc la suivante :
Select request_key, receiver_data, time_stamp
From cfurl_cache_response, cfurl_cache_blob_data
Where cfurl_cache_response.entry_ID = cfurl_cache_blob_data.entry_ID ;
Voici une capture d’écran du résultat (Fig.27):

Figure 27
Le résultat de cette requête (Fig.27) nous affiche sur une même ligne l’URL, l’image, les dates et heures de consultation du site. Ces informations sont au format GMT, il faut donc rajouter une heure en hiver et deux heures en été.
Au même emplacement, « /Users/<nomutilisateur>/Library/Caches/com.apple.Safari/», il existe un répertoire se nommant : « Webpage Previews ». Ce dernier contient des captures d’écran des pages web visitées. Deux captures sont réalisées par page, une en miniature (au format jpeg) et une deuxième en image (au format png). Ces captures d’écran sont utilisées lorsque l’utilisateur sélectionne dans Safari l’option « Historique/Afficher tout l’historique ». Avec cette option, l’utilisateur peut parcourir les vignettes des pages web visitées et afficher dans le navigateur en taille réelle l’image de cette page. Cette fonctionnalité est activée par défaut.
Le cache internet de safari peut donc contenir énormément d’information utile à une analyse des traces internet.
L’historique internet : la localisation de l’historique internet de Safari est la suivante : « /Users/nomutilisateur/Library/Safari ». Dans ce répertoire plusieurs fichiers sont à analyser :
« Bookmarks.plist » : contient les favoris internet du navigateur. Ce fichier est au format « .plist » binaire, il faut donc le logiciel adéquat pour le convertir en XML. La capture ci-dessous (Fig.28), nous montre un exemple de favoris :

Figure 28
(1) Titre du site affiché dans la barre des favoris
(2) URL du site favori
Il suffit donc de parcourir ce fichier dans son ensemble pour répertorier tous les favoris de l’utilisateur.
« Downlaods.plist » : contient la liste des fichiers téléchargés par l’utilisateur. Ce fichier est au format XML donc éditable avec un logiciel de traitement de texte. La capture ci-dessous, nous montre un exemple (Fig.29) :
1
1
1
2
2
1
2
Figure 29
(1) Nom du fichier téléchargé ainsi que son répertoire de destination
(2) URL du fichier téléchargé
Dans ce fichier, il n’y a aucun renseignement sur la date et l’heure du téléchargement. En parcourant ce fichier, il sera donc possible d’établir une liste des fichiers téléchargés. Mais l’utilisateur a la possibilité de vider cette liste à tout moment.
« History.plist » : contient la liste des URL des différents sites visités à l’aide du navigateur. Son format est plist binaire. Il faut donc l’afficher à l’aide de l’utilitaire prévu. La capture ci-dessous, nous montre un exemple (Fig.30):

Figure 30
(1) Adresse URL du site visité
(2) Titre de la page web
(3) Date et heure de la dernière consultation
(4) Nombre de visite
En parcourant ce fichier, il sera donc possible d’établir une liste des sites visités. Le seul problème rencontré pour l’exploitation de ce fichier, vient du format particulier de la date et heure de consultation. Ce format particulier compte le nombre de secondes écoulées depuis le 01 janvier 2001 00h00m00s GMT. Pour convertir cet élément en une date compréhensible, il existe deux logiciels gratuits. Le premier se nomme « CFAboslute Time Converter » (fournit avec le système d’exploitation Mac OS X), le second se nommant « Safari Date Conversion », édité par BlackBag Inc. La capture ci-dessous nous montre un exemple de conversion avec « Safari Date Conversion » (Fig.31) :
1
2
3
4

Figure 31
(1) Date à convertir
(2) Résultat de la conversion
(3) Ajuster le fuseau horaire
Il faudra donc, pour toutes les entrées de ce fichier, convertir la date et heure de l’historique.
« WebpageIcons.db » : Lorsque vous visitez un site web, une icône peut s’afficher juste avant l’URL de cette page. Afin d’éviter d’avoir à la télécharger à chaque visite, Safari sauvegarde cette icône ainsi que l’URL lui correspondant dans ce fichier qui est au format Sqlite3. Pour récupérer les informations contenues dans ce fichier, il faut donc utiliser un des logiciels de base de données Sqlite cité lors de l’analyse du cache internet.
Cette base de données est constituée de 4 tables à analyser :
« IconData » : contient le fichier image de l’icône ainsi qu’un identifiant unique.
« IconDatabaseInfo » : sans importance pour l’analyse.
« IconInfo » : contient l’adresse URL du fichier image « .ico », l’identifiant unique et un champ date et heure au format Unix.
« PageURL » : contient les URL visité et leur icône correspondant.
Pour regrouper toutes les informations utiles dans une seule vue, il faut générer la requête SQL suivante :
Select PageURL.url, IconInfo.url, IconData.data, IconInfo.stamp
From PageURL, IconInfo, IconData
Where PageURL.iconID = IconInfo.iconID AND IconInfo.iconID = IconData.iconID;
Voici une capture d’écran montrant le résultat de cette requête (Fig.32).
1
2
3
Figure 32
Le premier champ affiche l’URL de la page visitée, le deuxième affiche l’URL de l’icône, le troisième le fichier image et le quatrième la date et heure, au format UNIX, du téléchargement de l’icône. Ici également, il faudra convertir le temps Unix dans un format compréhensible. Pour se faire, le logiciel gratuit « Unix Time Converter » remplit très bien cette tache. Un exemple de conversion du premier champ (Fig.33):
Figure 33
(1) Temps Unix
(1) Ajustement du fuseau horaire
(1) Conversion
« LastSession.plist »: ce fichier contient la dernière adresse URL chargée par le navigateur. Sur la capture d’écran ci-dessous, nous pouvons voir cette dernière adresse (Fig.34).
1
2
3
Figure 34
Les « cookies » : informations laissées par un site internet sur l’ordinateur de l’internaute. Cette information peut être de tout ordre ex : date de dernière connexion, habitude de navigation sur le site, etc... Le répertoire contenant les « cookies » est : « /Users/<utilisateur>/Library/Cookies/Cookies.plist ». La capture d’écran montre le résultat du fichier une fois converti (Fig.35):

Figure 35
(1) Date de création du cookie (date à convertir avec Safari date conversion)
(1) URL de la page web ayant créée le cookie
Les traces internet laissées par le navigateur Safari sont toutes accessibles et consultables par différents moyens. Seules, quelques conversions de dates sont à effectuer. Il va de soi que toutes ces opérations doivent être exécutées pour tous les comptes utilisateur du système.
Firefox
Parmi les logiciels de navigation sur internet, un des plus utilisés est Firefox. Ce navigateur existe sous toutes les plateformes et de nombreux internautes le préfèrent à tous les autres. Sous Mac OS X, Firefox se trouve dans sa version 3.5.5. Les versions Mac de Firefox évoluent au même rythme que les autres.
Comme ce navigateur n’est pas développé par Apple. Les préférences ainsi que la configuration du logiciel se trouvent dans le fichier :
« /Users/ « utilisateur »/Library/Application Support/Firefox/Profiles/xxx.default/prefs.js »
L’élément intéressant se trouve au niveau de la ligne « browser.startup.homepage » qui nous donnera la page affichée par défaut lors de l’ouverture du navigateur. Aucun autre élément intéressant l’analyse ne se trouve dans ce fichier.
Nous allons maintenant étudier les traces laissées par ce navigateur dans le système de fichiers. Tous les fichiers étudiés dans ce paragraphe se situent dans : « /Users/ »utilisateur »/Library/Application Support/Firefox/Profiles/xxx.default/ ».
L’historique internet
L’historique internet est entièrement contenu dans le fichier « places.sqlite », qui n’est autre qu’une base de données Sqlite3. Afin de visualiser les données, nous utiliserons le logiciel gratuit « Sqlite Expert ». Ce dernier nous montre une série de tables. Celle qui nous intéresse dans ce cas est : « moz_places ». A l’intérieur nous trouvons de nombreux champs tels que : « url, title, visit_count et last_visit_date ».
« url » contient le lien vers la page web
« title » contient le titre de la page web visitée
« visit_count » contient le nombre de fois où la page a été visitée
« last_visit_date » contient la date de dernière consultation au format Unix
Afin de visualiser directement cette table, nous utilisons le logiciel « MozillaHistoryView » qui rempli très bien cette tâche. Il suffit de sélectionner le répertoire contenant l’historique et ce dernier se charge de l’affichage. Il est possible d’utiliser Sqlite Expert , mais les résultats affichés demanderont une mise en forme que le logiciel « MozillaHistoryView » effectue automatiquement.
La capture d’écran ci-dessous, nous montre le résultat (Fig.36):
1
2
Figure 36
Ce qui est très intéressant dans l’utilisation de ce logiciel c’est qu’il effectue la conversion du temps Unix en temps standard (voir colonne 2).
Le deuxième fichier exploitable à l’aide de ce logiciel est le fichier des téléchargements. Ce fichier, « downloads.sqlite », contient les informations sur les fichiers téléchargés à partir du navigateur. Un exemple ci-dessous (Fig.37):

Figure 37
Le logiciel « MozillaHistoryView » permet également d’analyser ce fichier. Il n’est pas utile de sélectionner un fichier quelconque, il scrute le répertoire de « Firefox » à la recherche des fichiers.
Les autres fichiers étant au format (Sqlite3), il faudra les exploiter à l’aide d’un logiciel permettant d’accéder à ces bases de données (Sqlite Expert Personal par exemple).
Les cookies de Firefox sont tous intégrés dans le fichier de base de données « cookies.sqlite ». Pour y accéder, nous devons l’ouvrir à l’aide du logiciel de gestion de base sqlite. Ce fichier ne contient qu’une seule table portant le nom de « moz_cookies ». Les champs intéressants de cette table seront les champs « name, value, host , expiry et lastAccessed » :
« name » contient le nom du cookie
« value » contient le contenu du cookie
« host » contient le site ayant généré ce cookie
« expiry » est la date d’expiration du cookie
« lastAccessed « est la date de dernier accés
Un exemple de fichier « cookies.sqlite » (Fig.38) :

Figure 38
Pour les dates et heures, nous sommes toujours en temps Unix. Pour le champ « expiry », cette date est au format jour/mois/année/heures/minutes/secondes alors que pour le champ « lastAccessed » la précision est l'ordre de la nanoseconde, il faut donc le divisé par 1.000.000, c'est-à-dire retiré les six dernier chiffre et ensuite le convertir.
Exemple sur le premier enregistrement :
« expiry » : 1321698500 = 19/11/2011 à 11h28m20s (+0100)
« lastAccessed » : 1259140497 = 26/11/2009 à 14h01m37s (+0100)
Firefox sauvegarde également les informations entrées dans les formulaires des pages web. Cette sauvegarde s’effectue dans le fichier de base de données sqlite « formhistory.sqlite ». Une seule table est présente dans ce fichier, il s’agit de « moz_formhistory ». Tous les champs de cette table sont importants. Ci-dessous un exemple de contenu (Fig.39) :

Figure 39
« fieldname » = le nom du champ sur la page web
« value » = la valeur enregistrée entrée dans le champ
« timeused » = nombre d’utilisation
« firstUsed » = date de première utilisation du champ
« lastUsed » = date de dernière utilisation du champ
Les dates et heures sont toujours au format Unix. Il faudra également ici ne garder que les 10 premiers chiffres pour avoir une date et heure au format jour/mois/année/heure/minutes/secondes. Exemple sur le troisième enregistrement :
1259241646550930 1259241646 = 26/11/2009 à 14 :20 :46
1259241879739012 1259241879 = 26/11/2009 à 14 :24 :39
Les favoris sont tous stockés dans le fichier de base de données « places.sqlite ». Les informations utiles sont réparties sur deux tables. La table « moz_bookmarks » va contenir le titre affiché dans la barre des favoris. Pour repérer les favoris, le champ « parent » doit être à « 3 ». Le champ position affiche l’ordre des favoris dans la barre. Le champ « fk » va servir de clé pour récupérer l’adresse URL du favori dans la table « moz_places » avec le champ « id ». Un exemple ci-dessous (Fig.40):

Figure 40
En rouge le champ « fk » - En bleu le champ « parent » - En vert le champ « position »
Figure 41
En rouge le champ « id » correspondant au champ « fk » - En jaune les adresse URL
Une requête SQL sur cette base de données va simplifier la récupération des informations :
Select moz_bookmarks.title, moz_bookmarks.dateAdded, moz_bookmarks.lastModified, moz_bookmarks.position, moz_places.url, moz_places.title, moz_places.visit_count,moz_places.last_visit_date
From moz_bookmarks, moz_places
Where moz_bookmarks.parent="3" And moz_bookmarks.fk=moz_places.id;
Cette requête va récupérer les informations dans les deux tables et les affiche à l’écran. La capture d’écran ci-dessous montre le résultat obtenu (Fig.42) :



Figure 42
Colonne 1 : le titre du bookmark affiché dans la barre
Colonne 2 : la date où le bookmark a été ajouté sur la barre (format Unix)
Colonne 3 : Date de dernière modification du bookmark (format Unix)
Colonne 4 : la position du bookmark dans la barre de gauche à droite
Colonne 5 : Url du bookmark
Colonne 6 : Le titre du bookmark dans l’historique
Colonne 7 : Nombre de visite de l’URL
Colonne 8 : Date de la dernière visite de l’URL (format Unix)
Le cache internet
Le cache de Firefox est de la même utilité que celui de Safari. Son emplacement au sein du système de fichier est, bien entendu, différent. Ce dernier se trouve dans « /Users/ « utilisateur »/Library/Caches/Firefox/Profiles/xxx.default/Cache ».
Son exploitation peut se faire avec le logiciel « MozillaCacheView ». Il suffit pour cela de donner en entrée le répertoire contenant le cache. La capture d’écran ci-dessous nous montre le résultat obtenu (Fig.43) :

Figure 43
Les mots de passe enregistrés par le navigateur Firefox, sont stockés et chiffrés à l’aide plusieurs fichiers dont « signons.sqlite », « cert.db » et « key3.db ». Le logiciel gratuit « passwordfox », de chez nirsoft, permet le décodage et l’affichage de ces mots de passe. La capture d’écran ci-dessous nous montre ce résultat (Fig.44) :

Figure 44
L’analyse du navigateur web « Firefox » se fait de la même manière que sous « Windows ». Les fichiers étant de même facture, l’exportation de ces derniers afin de les analyser avec les logiciels de Nirsoft, permet d’effectuer cette tache sans avoir à lancer de requêtes SQL. L’exportation des résultats au format HTML permet une meilleure compréhension ainsi qu’une lecture plus aisée.
LES LOGICIELS DE MESSAGERIE
Mail
Le client messagerie installé par défaut sur les systèmes Mac OS est « Mail ». Ce dernier remplit les tâches habituelles d’un client mail telles que: messagerie, flux RSS. Plusieurs comptes mail peuvent être configurés. L’analyse de ce client messagerie peut se révéler utile lors d’une analyse du système. Son fonctionnement restant dans les standards de ce type de logiciel.
La première étape de cette analyse commence, comme toujours, par retrouver la configuration du logiciel. Le fichier de configuration se trouvera bien dans:« /Users/ « utilisateur »/Library/Preferences/com.apple.mail.plist ». Les éléments importants dans ce fichier vont être (Fig.45) :
1 - Les dossiers contenant les données : cette information se trouve au niveau du « AccountPath ».

Figure 45
Sur cette capture d’écran (Fig.45), les différents répertoires du client messagerie sont mentionnés :
(1) Le chemin permettant d’accéder aux comptes
(2) Le nom des répertoires affichés dans le logiciel de messagerie
2 - La configuration du compte email. Cet élément se trouve dans la rubrique «AccountName».
1
2
2
2
2
Figure 46
(1) Nom du compte donné par l’utilisateur
(2) Chemin contenant les fichiers du compte
(3) Type de compte
(4) Adresse email du compte
(5) Nom de l’utilisateur
(6) Serveur POP
Dans ce fichier vous trouverez autant de « AccountName » que de comptes configurés. Ce fichier est donc important et doit être analysé avec une grande attention. D’autres éléments tels que le port de communication ou le surnom sont présents.
La seconde étape consiste à retrouver les emails de chaque compte. Cette opération sera facilitée après la lecture du fichier ci-dessus. Comme indiqué, le chemin du répertoire contenant les emails est mentionné en clair. Ce répertoire se présente sous la forme suivante (Fig.47):
1
1
1
1
2
3
4
5
6
Figure 47
(1) Répertoire contenant les emails effacés
(2) Répertoire contenant les messages reçus
(3) Répertoire contenant les messages envoyés
Dans ces répertoires, les emails sont stockés sous la forme de fichiers portant l’extension « emlx ». Il s’agit simplement de fichier au format texte, éditable dans n’importe quel logiciel de traitement de texte. Les pièces jointes sont comprises dans ces fichiers et encodés au format Base64.
La première partie de l’email est constituée par l’en-tête (Fig.48) :
1
2
3
Figure 48
La deuxième partie contient le corps du texte (Fig.49):
Figure 49
Et enfin la ou les pièces jointes en Base64 (Fig.50) :

Figure 50
(1) Nom et format du fichier joint
(2) Type d’encodage
Pour extraire la pièce jointe du fichier, il suffit de copier les données encodées dans un convertisseur base 64 et de sauvegarder le résultat avec le nom du fichier (1) (Fig.50). Une méthode plus aisée est possible. Il faut utiliser le logiciel « emlxconvert.exe » qui va convertir tous les fichiers emlx en un seul fichier mbox accompagné des pièces jointes. Puis, il faut utiliser « @Raichu.exe » en ouvrant ce dernier fichier pour avoir une vue de tous les messages.
Ces manipulations seront à effectuer sur tous les fichiers emlx des répertoires « Deleted, INBOX, Sent », ainsi que pour tous les utilisateurs configurés sur le système.
Thunderbird
Le logiciel de messagerie Thunderbird (Mozilla), fait partie des programmes les plus utilisés pour la gestion des boites aux lettres électronique. Il est très probable que lors d’analyse de système de fichier Mac OS X, ce logiciel soit installé et utilisé. Son analyse se fera donc toujours en deux temps.
Dans un premier temps, la recherche de la configuration du logiciel est, dans ce cas différente à « Mail ». Thunderbird n’étant pas un programme développé par Apple, les fichiers de configuration ne sont pas au format « .plist ». Par contre, toutes les informations utiles à l’analyse vont se retrouver dans un seul répertoire qui est le suivant : « /Users/ « utilisateur »/Library/Thunderbird/Profiles/ « id».default/ ».
Parmi les fichiers présents, la configuration du ou des comptes se trouve dans le fichier « prefs.js ». Les informations présentes dans ce fichier ne sont pas formatées de manières simple, il est, à première vue, difficile de s’y retrouver.
Les lignes importantes sont celles contenant « mail.account.xxxx ». C’est à partir de ces lignes que l’on va pouvoir associer les comptes et leurs informations respectives (Fig.51).
1
2
Figure 51
Dans l’exemple ci-dessus (Fig.51), nous pouvons voir que deux comptes ont été configurés (account2 et account3). Intéressons nous au compte « mail.account.account ». Ce dernier renvoie vers « id1 » (première ligne) et vers « server2 » (deuxième ligne). A présent pour identifier le compte il va falloir retrouver dans ce même fichier tout les éléments correspondant à « id1 ». Quelques lignes plus bas nous retrouvons « id1 ». (Fig.51.a)
Figure 51a
Les éléments importants en relation avec « id1 » sont :
mail.identity.id1.fullName = nom d’utilisateur
mail.identity.id1.smtpServer = smtp relié au compte
mail.identity.id1.usermail = adresse email du compte
Enfin pour connaitre l’information sur le « SMTP » employé (smtp1), il faut se rendre quelques lignes plus bas pour trouver l’information (Fig.52) :
Figure 52
Les éléments importants en relation avec « smtp1 » sont :
mail.smtpserver.smtp1.description = nom donné au serveur « SMTP »
mail.smtpserver.smtp1.hostname = adresse du serveur « SMTP »
Toutes ces recherches sont à effectuer pour tous les comptes configurés.
L’analyse du fichier « prefs.js » est à faire en prenant les éléments et les liens compte par compte. Il est très facile de se perdre dans ce fichier si la méthode utilisée n’est pas rigoureuse. L’utilisation du logiciel « @Raichu.exe » permet une analyse rapide du fichier « prefs.js », comme le montre la capture d’écran ci-dessous (Fig.53):

Figure 53
Une fois la configuration de Thunderbird réalisée, il faut s’intéresser maintenant aux messages.
Pour le compte « pop.free.fr », les fichiers contenant les messages se trouve dans le répertoire par défaut de Thunderbird, dans le sous dossier « pop.free.fr ». Le fichier « Drafts » pour les brouillons, « Sent » pour les messages envoyés, « Trash » pour les effacés, « Unsent Messages » pour les messages non envoyés et « Inbox » pour les messages reçus, comme montré dans l’exemple ci-dessous (Fig.54):

Figure 54
NOTA : Les fichiers portant l’extension « .msf » et « .dat » ne sont pas utiles à l’analyse du compte de messagerie.
A la simple vue des tailles de fichier, nous pouvons voir que la boîte de réception contient de nombreux messages. Le fichier « Inbox » (sans extension) est tout simplement un fichier texte, où les messages se suivent les uns derrière les autres. Son format est identique aux fichiers de type « mbox » trouvés sous « Windows ». Les messages sont donc facilement consultables à l’aide d’un logiciel permettant l’extraction de boites email de ce type (exemple : « @Raichu.exe »). Les autres fichiers étant du même type, leur analyse s’effectue de la même manière.
Exemple de traitement du fichier « Trash » par « @Raichu.exe » (Fig.55):

Figure 55
L’exportation pourra se faire en fichier « html ou csv ». Pour visionner les pièces jointes l’option « attachments » permet de les visualiser et de les exporter.
Entourage
Entourage est le logiciel de messagerie de Microsoft pour Mac OS X. Il est disponible avec la suite Office. Cette application est d’une utilisation standard. Mais la façon dont les données (messages, contact etc.) sont stockées sur le disque est très particulière pour ce type de logiciel.
Pour l’analyse d’Entourage, il faudra examiner un seul et unique fichier. Ce dernier se trouve dans le répertoire suivant :
« Users/ « utilisateur »/Documents/Données utilisateurs Microsoft/Utilisateurs Office 2004/ « Identité »/Base de données ».
Dans ce fichier base de données sont regroupés tous les éléments du compte email. La configuration du Pop et SMTP, ainsi que les informations de l’utilisateur. La visualisation des données de ce fichier n’est pas aisée. En effet, aucun logiciel permettant l’exploitation de ces données n’a été trouvé. Pour récupérer la configuration du compte, il faudra donc utiliser un éditeur hexadécimal. Les données de configuration se trouvent à l’offset « 0118DAF0 ». La capture d’écran ci-dessous montre le résultat (Fig.56):

Figure 56
Si nous comparons ce résultat avec le panneau de configuration du compte Entourage (Fig.57), tous les éléments sont présents. Le mot de passe du compte n’est pas présent dans le fichier « Base de données » car il est ajouté au trousseau de l’utilisateur Mac OS X (logiciel intégré à Mac OS X pour la gestion des mots de passe).
Figure 57
Après avoir étudié la configuration du compte, il nous faut à présent, récupérer les emails de ce compte. Dans ce même fichier « Base de données », nous allons trouver tous les emails de l’utilisateur. Mais il est toujours difficile de lire des informations à l’aide d’un éditeur hexadécimal. Voici le résultat sur la capture d’écran ci-dessous (Fig.58):

Figure 58
Le moyen le plus approprié pour effectuer cette tache est d’importer le fichier « Base de données » dans le logiciel Entourage. Il sera alors possible de consulter tous les messages, cette opération doit obligatoirement se faire en mode « offline » sinon Entourage tentera de télécharger les nouveaux messages de la boîte de réception. Il faudra ensuite effectuer une exportation des données au format archive entourage. Cette opération sauvegardera tous les messages présents dans le compte utilisateur, les contacts, le calendrier, les notes, etc. Le format de cette exportation sera celui de fichier « mbox » pour les emails et « xml » pour le reste. La capture d’écran ci-dessous montre le résultat obtenu par une exportation des messages :


Figure 59
Cette exportation ne concerne que les messages visibles sous Entourage. Les emails définitivement supprimés n’apparaissent pas. Pourtant, ces messages supprimés sont toujours présents dans le fichier « Base de données ». Après plusieurs tests sur plusieurs fichiers « Base de données », les éléments suivants ont pu être constatés.
Au début de chaque zone contenant un message, un marqueur est présent. Il indique si le message est dans la boîte de réception, émission, effacés ou si nous avons à faire à une pièce jointe. Ces différents drapeaux sont :
« mesg » = message envoyé
Figure 60
« MSrc » = message reçu
Figure 61
« base64 » = Fichier / pièce jointe
Figure 62
« DELE » = effacé
Figure 63
Le logiciel « Entourage », ne fait l’objet d’aucune communication ni publication de la part de Microsoft. Le fichier « Base de données » n’est absolument pas documenté. Il est donc très difficile d’avoir des informations. C’est pour cette raison que l’utilisation du logiciel lui-même reste l’option la plus simple pour décoder les informations présentes dans la base de données. L’importation du profil dans Entourage, puis l’exportation de toutes les données en fichier « mbox », est la solution à mettre en œuvre.
iChat
iChat est le logiciel de messagerie instantanée installé par défaut avec le système Mac OS X. Il est compatible avec de nombreux système de messagerie (AIM, Google Talk et Jabber) mais principalement avec un compte « mobile.me » ou « mac.com ». Dans l’étude des traces de ce logiciel, nous allons prendre l’exemple suivant (Fig.64) :

Figure 64
La fenêtre du centre de la capture représente les contacts du compte « Analyse », la fenêtre de gauche regroupe la liste des fichiers téléchargés et la fenêtre de droite la conversation entre le titulaire du compte et « cuba1393@gmail.com ».
Les comptes configurés.
Dans un premier temps, nous allons devoir retrouver le fichier contenant l’adresse du compte utilisateur. Pour cela, il suffit de se rendre dans le fichier suivant : « /Users/ « utilisateur »/Library/Preferences/com.apple.iChat.Jabber.plist »

Figure 65
Dans cet exemple, deux comptes sont configurés : « joel.gomez.fr@gmail.com » et « jojo@gmail.com ». (1)(Fig.65)
Le compte « joel.gomez.fr@gmail.com » est le compte par défaut. Cette information est retrouvée dans ce fichier au niveau de la ligne « ActiveAccount » qui enregistre le UID du compte par défaut (2) (Fig.65).
La liste des contacts.
Il n’existe pas de fichier contenant cette liste proprement dite. Le seul moyen détourné d’y arrivé est de consulter le fichier plist suivant :
« /Users/ « utilisateur/Library/Caches/com.apple.iChat/Pictures/PictureNameMap.plist ». Ce fichier a pour but de contenir la relation entre les contacts et les images associées. Par ce biais, nous pouvons lister les contacts et leurs images respectives, puisque ces dernières sont également contenues dans ce répertoire. Une capture d’écran du contenu de ce fichier (Fig.66):
1
2
1
2
Figure 66
Nous pouvons voir dans ce fichier qu’il existe deux contacts pour ce compte (1) (Fig.66). Associé, un identifiant pour l’image correspondant au contact (2) (Fig.66). Dans le même répertoire nous trouverons donc deux fichiers images portant comme nom l’identifiant et comme extension « .jpg ».
Les sauvegardes des conversations.
Malheureusement, les conversations ne sont pas archivées par défaut. Donc si l’utilisateur choisit cette option, les discussions seront sauvegardées par défaut dans le répertoire :
« /Users/ « utilisateur »/Documents/iChat/ « date discussion »/ » comme dans l’exemple ci-dessous (Fig.67):
1
1
2
2
Figure 67
Les fichiers de sauvegarde de conversation sont au format « .plist » et leur lecture en XML reste assez difficile, étant donné qu’il faut rechercher dans le fichier les conversations qui sont mélangées avec d’autres paramètres.
Echanges de fichiers.
L’élément important est de savoir également si des fichiers ont été échangés pendant une conversation. Cette information, qui n’est pas présente dans les fichiers de sauvegarde, va se retrouver dans le fichier suivant :
« /Users/ « utilisateur »/Library/Preferences/com.apple.iChat.plist »
Ici également la lecture du fichier n’est pas facilitée par le nombre de paramètres présents. Même les éléments de transfert de fichier ne sont pas simples à décoder. Prenons cet exemple de fichier :

Figure 68
(1) GUID du compte concerné
(2)IsIncoming = false => Envoie / IsIncoming = true => Réception
(3) Nom du contact concerné par l’échange
(4) Chemin du fichier
(5) Date et heure transfert
(6) Taille du fichier
En résumé, le compte avec le GUID (1) a envoyé (2) le fichier (4), d’une taille de (6) au compte (3), en date du (5).
Un autre exemple avec réception de fichier (Fig.70). Seul le champ « IsIncoming » passe à « true » (1).
2
3
1
2
4
5
6

Figure 70
Le logiciel iChat est un standard dans le monde Macintosh pour la discussion en direct. Les utilisateurs de cette application l’utilisent généralement avec un compte « mobile.me » ou « .mac ». Les autres réseaux tels que, msn ou yahoo, ne sont pas utilisables avec iChat.
MSN Messenger « amsn »
Msn Messenger est un logiciel de messagerie très populaire en France. Un très grand nombre de personne de tous âges l’utilisent quotidiennement. Sous Mac Os X, cette application est fournie avec le pack Office ou bien est téléchargeable directement depuis internet. Les informations pouvant être intéressantes pendant une analyse sont de trois ordres.
Les comptes configurés.
A partir de l’application MSN, plusieurs comptes ou passeport peuvent être configurés. Ce qui permet à plusieurs utilisateurs d’utiliser cette application, sans modifier les paramètres des autres utilisateurs. Cette information peut être retrouvée dans le fichier suivant :
« /Users/ « utilisateur »/Library/Prefernces/Microsoft/com.microsoft.Messenger.plist »
Dans ce fichier, de nombreuses informations sont présentes. Pour retrouver les comptes configurés, il faut simplement se rendre au niveau des clés « MSNSignInMRU01 », pour le premier compte configuré, « MSNSignInMRU02 » pour le deuxième etc. La capture d’écran nous montre ces clés (Fig.71).
1
Figure 71
Dans cet exemple, deux comptes ont été configurés. Le premier « cuba1393@hotmail.com » et le second « jojo_au_boulot@hotmail.fr ».
Une autre information est présente dans ce fichier. Le dernier compte ayant utilisé cette application peut se trouver au niveau de la clé « UserPassportID ». L’adresse mentionnée au niveau de cette clé est la dernière adresse utilisée (Fig.72). Exemple :
Figure 72
La liste des contacts.
Chaque compte utilisateur ou passeport possède sa propre liste de contact. Cette information se retrouve dans le fichier suivant :
« /Users/ « utilisateur »/Library/Microsoft/Microsoft Messenger User Cache.plist »
La lecture de ce fichier se fait d’une manière très simple. Ce fichier est divisé en autant de section que de comptes configurés (Fig.73). Exemple :
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>cuba1393@hotmail.com</key>
<dict>
|
Figure 73
Ce fichier débute directement par l’adresse email du compte. S’en suit une série de bloc
de texte séparé par la balise <dict>, énumérant les contacts (Fig.74) :
<dict>
<key>Capabilities</key>
<integer>0</integer>
<key>ContactType</key>
<integer>1</integer>
<key>ServiceType</key>
<integer>0</integer>
<key>UserDomain</key>
<string>hotmail.fr</string>
<key>UserName</key>
<string>carraibeean</string>
|
1
2
Figure 74
Deux éléments intéressants :
(Fig.74) - Le nom de domaine de l’adresse (1)
(Fig.74) - L’adresse elle même (2)
Donc l’adresse du contact sera : « carraibeean@hotmail.fr »
Il y aura donc autant de bloc que de contact. Pour le second compte, nous allons retrouver dans le fichier son adresse email et, comme pour le premier, une série de bloc contenant l’adresse des contacts.
Les sauvegardes des conversations.
Par défaut, MSN Messenger Mac OS X, demande à chaque fin de conversation, si l’utilisateur veut sauvegarder ses conversations. Si la réponse est « oui », cette sauvegarde s’effectue dans des fichiers de type « html ». Pour chaque contact, un répertoire portant le nom de ce dernier est créé.

Figure 75
Sur cet exemple (Fig.75), nous voyons les conversations enregistrées par le compte « john.doe@hotmail.fr »(1). Deux fichiers de sauvegardes sont présents. Le premier concerne une conversation avec « jane.doe@hotmail.com » le 30.11.2009 (2) et le deuxième concerne une conversation avec « henri.doe@hotmail.fr » le 01.12.2009 (3). Le contenu de ces fichiers est au format html. La capture d’écran ci-dessous nous montre un exemple (Fig.76).
1
2
3

Figure 76
Sur cet exemple de conversation (Fig.76), nous constatons que l'entête correspond à l’adresse du contact ainsi que la date et heure du début de conversation (1). Un transfert de fichier s’est effectué vers « jane.doe@hotmail.com »(2) et a réussi (3).
En conclusion, l’analyse de « amsn » sous Mac Os X, ne demande pas de logiciel particulier. Tout est accessible en fichier texte, html ou plist.
Yahoo Messenger
De même que pour les autres outils de messagerie instantanée si dessus, Yahoo Messenger peut nous apporter de nombreux éléments.
Les comptes configurés.
Pour récupérer cette information il faut se rendre dans le répertoire suivant :
« /Users/ « utilisateur »/Library/Preferences/ ».
Plusieurs fichiers vont servir à notre analyse. Le premier se nomme « com.yahoo.messenger3.plist ». Dans ce fichier les informations de configuration générale de « yahoo messenger » sont présentes. Dans un premier temps nous allons trouver au niveau de la clé « LoginUsers »(Fig.77) les comptes configurés et enregistrés. Seul l'identifiant sera présent. Dans un deuxième temps il faudra se rendre à la clé « YahooId » (Fig.78) qui va contenir le compte affiché par défaut lors de l’ouverture du programme. La capture d’écran montre le résultat :
1
2
3
Figure 77
Figure 78
Dans cet exemple, deux comptes sont enregistrés (« cuba1393 et gom.caro »)(Fig.77). Le compte affiché par défaut lors de l’ouverture du programme est « gom.caro » (Fig.78).
D’autres fichiers sont à consulter. Dans ce même répertoire vont se trouver un fichier « .plist » par compte configuré. Dans ce fichier de configuration un seul élément peut être utile pour l’analyse. Il faut se rendre à la clé « RecentUserSearches ». A ce niveau, vous trouverez les recherches de contact effectué par l’utilisateur.
Figure 79
Sur la capture d’écran ci-dessus apparaissent les deux fichiers « .plist » des comptes configurés (Fig.79).

Figure 80
En ouvrant le fichier « .plist » de « cuba1393 », nous voyons qu’il a demandé l’ajout d’un contact dont le nom est « jogo1393 » (Fig.80).
La liste des contacts.
La liste des contacts ne se retrouve dans aucun fichier lisible. Le seul fichier pouvant correspondre à la liste des contacts se trouve dans le répertoire :
« /Users/ « utilisateur »/Library/Caches/Yahoo! Messenger/ »
Dans ce répertoire nous allons trouver des fichiers portant le nom suivant : « addressbook.login.cache » (identifiant correspondant au nom du compte). Dans notre exemple, deux fichiers sont présents dans ce répertoire, « addressbook.cuba1393.cache » et « addressbook.gom.caro.cache ». Malheureusement ces fichiers ne sont pas éditables en l’état.
Après des recherches effectuées, nous n’avons découvert aucune documentation expliquant l’organisation des données contenues dans ce fichier. D’après son nom, il pourrait contenir la liste des contacts du compte. Mais après plusieurs tests, il se pourrait que les contacts soient récupérés en ligne sur les serveurs de la société « yahoo » à chaque démarrage du logiciel.
Les sauvegardes des conversations.
Par défaut, les conversations ne sont pas sauvegardées. L’utilisateur du compte doit donc dans un premier temps valider l’option de sauvegarde. Ensuite les conversations seront sauvegardées. Les fichiers se trouvent dans le répertoire suivant : « /Users/ « utilisateur »/Library/Application Support/Yahoo! Messenger/Logs/ « nom du compte »/ « nom du contact »/ « date.heure ».ychat ». Ces fichiers « .ychat » sont au format plist binaire. La capture d’écran ci-dessous nous montre le contenu d’un de ces fichiers (Fig.82) :

Figure 81
1 - message du compte utilisateur
2 - date te heure au format Safari du message (à convertir avec l’outil SafariDateConverter)
3 - réponse du contact
L’historique est donc groupé par message du compte utilisateur. Pour chaque message du compte utilisateur, il y aura des clés correspondant à la date te heure du message, plus la réponse du contact.
1
2
3