Introduction
Ce document décrit le format de boîte aux lettres UNIX (mbox) et son application sur l'appareil de sécurité de la messagerie Cisco (ESA).
Conditions préalables et considérations importantes
- Assurez-vous que vous comprenez que AsyncOS sur l'ESA utilise le format mbox UNIX lors de l'archivage des messages et dans l'action
log() des filtres de messages.
- Le format mbox est de type ASCII et non binaire.
- Il existe plusieurs variantes du format mbox, ce qui peut compliquer l'analyse.
- AsyncOS n'utilise pas la méthode d'en-tête « Content-Length » ni n'insère un champ
Content-Length.
Présentation du format mbox UNIX
Le format de boîte de messagerie UNIX est utilisé par AsyncOS lorsque les messages sont archivés ou consignés par le biais d'actions de filtrage de messages. « Archive Message » est une option de configuration supplémentaire pour des fonctionnalités telles que IronPort Anti-Spam (IPAS), Anti-Virus (Sophos et McAfee), Advanced Malware Protection (AMP) et Graymail sur ESA.
Le format mbox est un format de texte brut (ASCII) qui stocke un ou plusieurs e-mails concaténés dans un seul fichier. Les messages sont séparés à l'aide d'un modèle spécifique, ce qui permet d'extraire des messages individuels. Le format correspond aux messages transférés entre les passerelles de messagerie compatibles RFC 2821.
Structure d'un fichier mbox
- Séparateur de messages : Chaque message commence par une ligne commençant par « From » (les caractères ASCII F, r, o, m et un espace).
- Champs Après « De » : Les champs suivants sont :
- Envelope-sender : peut être une véritable boîte aux lettres, un tiret (
-) ou une autre chaîne, selon l'application qui génère la boîte aux lettres.
- Date : Inséré par ESA au format asctime() UNIX standard, toujours 24 caractères.
- Données facultatives : Certaines variantes de mbox ajoutent d'autres champs après la date.
- Séparation des champs : Ces champs sont séparés par un espace unique.
- Contenu du message électronique : Suit la ligne de séparation au format standard RFC 2822 (en-têtes, ligne vide, corps).
Exemple : Message unique au format mbox
From Adam@Outside.COM Sun Oct 17 12:03:20 2004
Received: from mail.outside.com (192.35.195.200)
by smtp.alpha.com with ESMTP; 17 Oct 2004 12:03:20 -0700
X-IronPort-AV: i="3.85,147,1094454000";
v="EICAR-AV-Test'0'v";
d="scan'208"; a="86:adNrHT37924848"
X-IronPort-RCPT-TO: alan@mail.example.com
From: Adam@Outside.COM
To: Alan Alpha <Alan@mail.example.COM>
Subject: Exercise 7a Anti-Virus Scanning
Reply-To: Adam Alpha <adam@outside.com>
Date: Sun, 17 Oct 2004 12:02:39 -0700
MIME-version: 1.0
Content-type: multipart/mixed; boundary="IronPort"
--IronPort
Content-type: text/plain; format=flowed; charset=us-ascii
Content-transfer-encoding: 7bit
Blah blah blah blah blah
Blah blah blah blah blah
Blah blah blah blah blah
...
--IronPort
Content-type: text/plain
Content-transfer-encoding: 7bit
Content-disposition: inline
X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*">X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
--IronPort--
Séparation des messages et gestion des lignes « De »
- Étant donné que de nombreuses applications génèrent des fichiers mbox, le format de la ligne de séparation « De » peut varier. Cependant, vous pouvez toujours utiliser « De » comme limite de message fiable.
- Il existe environ 20 variantes connues pour les champs qui suivent le séparateur, ce qui complique l'analyse automatique.
- Pour éviter toute confusion, les lignes du corps de l'e-mail commençant par « De » sont toujours précédées d'un seul « > ». Les fichiers journaux AsyncOS ajoutent un ">" à toute ligne commençant par un ou plusieurs caractères ">" suivis de "De".
Exemple : Création de devis dans les fichiers mbox
From jtrumbo@example1.com Sun Dec 12 12:27:33 2004
X-IronPort-RCPT-TO: trumbo@example1.com
From: jtrumbo@example1.com
To: trumbo@example2.com
Subject: Quote this, if you dare
Date: Sun, 12 Dec 2004 12:28:00 -0700
The following line is just From
>From A From Line
The following line has quoted >From
>>From A >From Line
The following line has many >>>>From
>>>>>From This line has 4 > characters before From
And this is the last line
Fin de message et analyse
- La fin d'un message est généralement marquée par une ligne vide. AsyncOS inclut toujours cette ligne, mais ce n'est pas le cas de toutes les implémentations.
- Lors de l'analyse, considérez le début d'une nouvelle ligne de séparation « De » ou la fin du fichier comme la fin d'un message. Supprimez la ligne vide, le cas échéant.
- Certaines variantes utilisent un champ « Content-Length » pour marquer les limites des messages, mais AsyncOS n'utilise pas cette méthode.
Résumé des points clés
- AsyncOS utilise le format de boîte aux lettres UNIX standard pour archiver et consigner les messages.
- Le format mbox est ASCII, concatène les messages et utilise les lignes « De » comme séparateurs.
- AsyncOS s'assure que les lignes des messages commençant par « De » sont entre guillemets avec « > » pour éviter les erreurs d'analyse.
- L'analyse des fichiers mbox nécessite la gestion de nombreuses variantes, en particulier avec les lignes de séparation des messages.
- Ne vous attendez pas à un champ « Content-Length » dans les fichiers mbox générés par AsyncOS et ne vous y fiez pas.