Les antivirus et vulnérabilités du format MIME
Date : 20 Juin 2005
En analysant le comportement des passerelles anti-virus confrontées à des ambiguités ou des interprétations non conformes aux RFC du format MIME, le NISCC, assisté par la société " Corsaire " ont mis en évidence, grâce à une batterie de tests, des interprétations laxistes pouvant conduire à laisser passer des contenus malveillants (typiquement un virus).
Le NISCC (Royaume Uni) a publié ce mois-ci un avis de sécurité présentant huit vulnérabilités relatives au format MIME. Cette publication est issue des travaux menés par la société "Corsaire" qui a développé une batterie de tests pour évaluer le comportement des produits (et en particulier des passerelles de contrôle anti-virus) lors du traitement des messages MIME.
MIME (Multipurpose Internet Mail Extensions) est un format de codage très utilisé pour la messagerie électronique, mais aussi pour le web. Il existe cependant quelques ambiguïtés dans les RFC qui définissent le format MIME et, face à ces ambiguïtés, les produits supportant MIME peuvent réagir différemment. Ce comportement est particulièrement préoccupant si pour un même message MIME la passerelle de contrôle antivirus (web ou e-mail) et l'outil de l'utilisateur final sur son poste de travail ont une interprétation différente. Car dans ce cas la passerelle peut laisser passer un message qu'elle croit inoffensif, mais qui en réalité sera néfaste pour l'utilisateur final.
Les tests réalisés par Corsaire montrent que certains produits se comportent de façon incorrecte face aux situations suivantes :
- Le même champ MIME apparaît plusieurs fois dans l'entête MIME (CAN-2003-1014)
- Des caractères "espace" sont utilisés dans les valeurs des champs MIME (CAN-2003-1015)
- Des guillemets (caractère ") sont utilisés dans les valeurs des champs MIME (CAN-2003-1016)
- Le champ "Content-Transfer-Encoding" contient des valeurs non-standards (CAN-2004-0051)
- Le séparateur ":" entre le nom et la valeur d'un champ MIME est omis ou doublé (CAN-004-0052)
- Un codage conforme à la RFC 2047 est utilisé pour inclure des caractères non-ASCII dans certains champs (CAN-2004-0053)
- Un codage conforme à la RFC 2231 est utilisé pour inclure des caractères non-ASCII dans certains champs (CAN-2004-0161)
- Des commentaires sont insérés dans les certains champs (CAN-2004-0162)
Ce type de problème n'est pas vraiment nouveau et des anomalies similaires ont déjà été signalées de façon ponctuelle par le passé sur certains produits. Par contre l'approche de Corsaire est très intéressante par le fait qu'elle systématise, sous forme d'une batterie de 140 tests, la vérification du comportement des produits supportant le format MIME.
Les résultats publiés sont malheureusement frustrants/incomplets car aucune liste de produits vulnérables n'est donnée. L'approche choisie par Corsaire et le NISCC en terme de divulgation de faille a été en effet de laisser les fournisseurs de produits s'exprimer et se positionner (comme étant vulnérable ou non-vulnérable) plutôt que de publier le résultat de leurs tests, même à l’issue de la période de grâce usuelle (*). Corsaire signale aussi que la batterie de test étant disponible depuis plusieurs mois pour les constructeurs, la plupart ont corrigé silencieusement (sans publicité) les défauts constatés avant publication des avis Corsaire. On notera que les produits constructeurs suivants ont émis des recommandations suite à ces tests :
- MAILsweeper (ClearSwift) propose deux "astuces" de configuration pour améliorer le blocage des emails MIME anormaux : http://www.mimesweeper.com/support/cs/email.aspx?ID=3791
- MIMEDefang (http://www.mimedefang.org/) a indiqué que pour se protéger contre ces types d'attaques il fallait activer la "canonisation" des messages MIME en dé-commentant dans le fichier de configuration la ligne "action_rebuild()"
- F-Secure Internet GateKeeper a échoué aux tests relatifs à la vulnérabilité CAN-2004-0051. Cette anomalie sera corrigée dans la version 6.41.
- Pour plus d'information
Avis de synthèse du NISCC (temporairement inaccessible) avec la réponse des constructeurs:
http://www.uniras.gov.uk/vuls/2004/380375/mime.htm
Avis Corsaire détaillant chaque vulnérabilité :
http://www.corsaire.com/advisories/c030804-006.txt
Autre étude similaire publiée dans "VirusBulletin" en février 2003 (Malformed email project) : http://www.av-test.org/down/papers/2003-02_vb_malformed2.pdf
(*) Politique de divulgation des failles du Cert-IST : http://www.cert-ist.com/policy_fr.htm