Dans ce chapitre nous allons à présent étudier comment analyser un email malveillant. Nous savons qu'un email malveillant a été envoyé pour infecter l'utilisateur
Pourquoi les attaquants utilisent l’email comme vecteur d’infection ?
L’email est un des vecteurs les plus utilisés par les attaquants pour transmettre un logiciel malveillant. Vous avez surement déjà reçu un email contenant une facture à payer ou vous informant que vous avez été sélectionné pour toucher l’héritage d’une personne très riche ? Ce type d’email est fréquent et la plupart du temps exploite le vecteur humain.
Il se peut que votre adresse email se retrouve dans une liste utilisée pour du spam, mais dans certains cas cet email peut être ciblé, c'est à dire adapté à vous pour vous inciter encore plus à ouvrir la pièce jointe.
En forensic, l’analyse des emails peut être fastidieuse car on se retrouve souvent à analyser et trier des centaines voire des milliers d’emails.
Récupérer un email pour l’analyser
Le stockage des emails avec Outlook
Avec Outlook, les emails sont stockés dans un fichier PST. Chaque compte de messagerie que vous avez configuré dans Outlook reçoit sa propre base de données sous la forme d'un fichier PST (Personal Storage Table), où les courriers électroniques, les éléments de calendrier, les contacts et les rappels sont tous stockés.
Les données d'un fichier PST peuvent ou non être compressées et chiffrés, en fonction de vos paramètres.
Vous pouvez également remarquer des fichiers avec une extension .ost dans votre dossier de données Outlook. Les fichiers OST ont le même format que PST, mais sont généralement utilisés comme stockage temporaire hors connexion de courriers électroniques pour les serveurs Exchange et les hôtes de messagerie Web tels que Gmail et Outlook.com.
L'idée est que vous pouvez toujours interagir avec les messages stockés dans le fichier OST lorsque vous êtes déconnecté du serveur de messagerie (par exemple, lorsque vous n'avez pas Internet), puis lorsque vous vous reconnectez au serveur à nouveau, Outlook synchronise tout.
Cela signifie que vos données seront stockées dans un fichier PST si vous utilisez un compte POP3 ou IMAP standard, ou un compte Exchange pour lequel le stockage hors connexion n’est pas configuré. Gmail, Outlook.com et les autres hôtes de messagerie Web obtiendront un fichier OST. Les comptes Exchange peuvent même utiliser à la fois un fichier OST pour un accès hors connexion et un fichier PST pour la sauvegarde des données.
Nous récupérons ici notre fichier a l'aide de FTK Imager.
Visualiser les fichiers OST/PST
Pour ouvrir ce type de fichier vous pouvez utiliser un simple viewer. Il existe de nombreux outils de forensic que vous pouvez également utiliser mais il ne sont pas gratuits.
Nous utiliserons ici Free OST Viewer Tool.
Une fois que le fichier OST est chargé, nous pouvons explorer la boite email :
Nous pouvons voir ici qu'un email a été reçu provenant d'un adresse @guerrillamail.com qui est un fournisseur d'email temporaire en ligne. Par ailleurs nous pouvons voir également le contenu de l'email ainsi que sa pièce jointe invoice.zip.
Il est également possible d’extraire cet email, vous obtiendrez alors un fichier avec l’extension .msg.
Pour analyser un fichier PST/OST il sera également possible d’utiliser PFFEXPORT
. Pour installer pffexport il faudra rentrer la commande suivante sur votre machine Linux.
sudo apt install pff-tools
Analyser l’en-tête et récupérer une pièce jointe
Nous venons d’extraire un email pour l’analyser. Un entête email est composé de plusieurs informations qui peuvent être utile pour l’analyse forensic.
From | Champs indiquant l'émetteur de l'email. |
Subject | Champs indiquant le sujet de l'email |
Date | indique la date et l'heure de l'email |
To | L'adresse qui recoit l'email |
Return-Path | L'adresse de retour pour l'option Reply To |
Received | liste de tous les serveurs traversés par le message pour atteindre le destinataire. |
Mime-Version | MIME (Multipurpose Internet Mail Extensions) est une norme Internet qui étend le format du courrier électronique. |
Content-Type | En règle générale, cela vous indiquera le format du message, tel que HTML ou texte brut. |
Message-id | Chaîne unique attribuée par le système de messagerie lors de la création du message. |
Message Body | Le contenu de l'email ainsi que la piece jointe. |
Pour obtenir ces informations il faudra d’abord convertir le .MSG en fichier EML.
sudo apt install libemail-outlook-message-perl libemail-sender-perl msgconvert Your\ invoice\ 34625.msg
Cette commande va générer un fichier eml.
Il sera ensuite possible de lire l'entête avec un editeur de texte.
Nous retrouvons ici nos éléments de l'en-tête email. Nous pouvons identifier les éléments suivant:
L'email a été envoyé le 31 juillet 2019 a 12h16
L'objet de l'email est : "You invoice 34625"
L'adresse emettice est hu6nsk+fgbeuap1buy4o@guerrillamail.com
L'adresse receveur est john.opoc2@gmail.com
Une piece jointe appelé invoice.zip est présente.
En descendant un peu plus vous trouverez du texte encodé en base 64. Ce morceau en base64 correspond à la pièce jointe de l’email.
Il suffit de copier/coller cette base64 dans un fichier pour pouvoir ensuite le décoder.
base64 -d pj.b64 >> pj.decoded
Et nous nous retrouvons avec un fichier ZIP contenant la pièce jointe.
En ouvrant cette piece jointe avec le mot de passe mentionné dans l'email, nous nous retrouvons avec 2 fichiers :
invoice.pdf
;invoice.docm
.
En résumé
Nous venons de voir que l’email était un vecteur de choix pour les attaquants. Nous avons vu également comment trier et extraire des emails. Enfin nous avons vu comment récupérer une pièce jointe.
Dans cette pièce jointe, nous trouvons un fichier PDF et un fichier DOC que nous allons analyser au prochain chapitre.