Extraire les pièces jointes d’un fichier EML

Voici un tout petit script Python que j’utilise régulièrement pour extraire les pièces jointes dans un fichier EML.

Très utile si vous avez un pare-feu qui vous met des courriels en quarantaine et vous permet de les récupérer en fichier EML.  Vous placez vos courriels suspects dans un dossier, puis vous exécutez le script.  Les pièces jointes seront extraites dans ce même dossier.  Vous aurez alors vos pièces jointes à analyser.

Je vous prépare pour bientôt un article sur mes outils d’analyses de malware favoris.

 import email
 import os

 path = './'
 listing = os.listdir(path)

 for fle in listing:
     if str.lower(fle[-3:])=="eml":
         msg = email.message_from_file(open(fle))
         attachments=msg.get_payload()
         for attachment in attachments:
              try:
                  fnam=attachment.get_filename()
                  f=open(fnam, 'wb').write(attachment.get_payload(decode=True,))
                  f.close()
               except Exception as detail:
                   #print detail
                   pass