Laurent Charveriat (Cyber Networks) : 
"Les en-têtes SMTP sont les maillons faibles des systèmes de messagerie"

Par JDNet Solutions (Benchmark Group)
URL : http://www.journaldunet.com/solutions/itws/030130_charveriat.shtml

A la tête d'une entreprise spécialisée dans l'ingéniérie, la supervision, le conseil et les développements liés à la sécurité, Laurent Charveriat lance un avertissement aux administrateurs de messageries d'entreprise : les en-têtes des messages SMTP laissent filtrer trop d'informations confidentielles qui peuvent être exploitées à mauvais escient.



Propos recueillis par Fabrice Deblock le 30/01/2003


En savoir plus

Qu'est-ce qu'un en-tête SMTP ?
Laurent Charveriat. C'est un des trois composants d'un mail, avec l'enveloppe et le corps du message. L'enveloppe correspond aux commandes SMTP (NDLR : Simple Mail Transfert Protocol) permettant au message d'être acheminé par le serveur et le corps du message au texte saisi par l'expéditeur. L'en-tête, quant à lui, contient des champs tels que "sujet", "date", "de", "à", "copie à"...

Enveloppes et en-têtes peuvent-ils être différents ?
L'enveloppe contient des commandes telles que le nom de la machine émettrice, l'adresse mail de l'émetteur et celles des destinataires. La plupart des en-têtes dupliquent les informations de l'enveloppe. Le protocole SMTP utilisant des serveurs de messagerie "relais", des intermédiaires, une ligne "received by..." est systématiquement ajoutée à chaque fois qu'ils sont sollicités. La correspondance entre l'en-tête et l'enveloppe ne dépend que de la "bonne volonté" des serveurs traversés. C'est une première porte ouverte à la fraude, à l'usurpation d'identité, à la modification des pièces jointes...

Cette succession de lignes "received by" est-elle riche en informations ?
Oui, c'est un autre aspect de la succession des serveurs mails dans l'acheminement des messages SMTP. Ces "en-têtes de trace" constituent l'historique du chemin parcouru, avec à chaque fois le nom du serveur relais et son adresse IP. Si vous couplez cela aux informations de l'en-tête initial, vous accédez à une cartographie complète de système de messagerie utilisé par l'expéditeur, comme par exemple le logiciel utilisé (Outlook, Notes...), sa version précise, le numéro identifiant du message (message-ID), le format du message (version du protocle MIME utilisé pour l'envoi des pièces jointes), la version de l'antivirus...

Comment ces informations sont elles exploitables par un pirate ?
Quand il s'agit d'une entreprise qui utilise en interne des serveurs relais, comme cela arrive très fréquemment dans les grandes sociétés, l'historique de traçage et les informations de l'en-tête initial, comme on vient de le voir, peuvent se révéler très instructifs pour un pirate.

Le fait par exemple de connaître le logiciel de courrier utilisé, sa version et le système sur lequel il tourne peut permettre d'en exploiter une faille de sécurité connue et référencée. Par exemple, si celui-ci réagit mal à l'envoi d'une ligne de commande SMTP dont la taille excède un certain nombre de caractères, un dépassement de buffer peut être provoqué [NDLR : comme dans le cas du virus Sapphire mais sur des serveurs SQL].

D'autres attaques sont elles possibles
?
La connaissance des adresses IP internes d'une entreprise peut permettre de déduire son plan d'adressage IP et de faciliter grandement la recherche d'une machine présentant une faille de sécurité. Elle permet aussi de cibler plus facilement une usurpation d'adresse (IP spoofing) ou un rebond.

De manière similaire, connaître le nom des machines peut permettre au pirate de tenter une attaque Netbios ou de cibler une usurpation de nom (DNS spoofing). D'autres types d'attaques sont envisageables : usurpation d'identité mail (mail spoofing), contournement des filtres anti-spam et anti-relayage...

Cerise sur le gateau, l'envoi d'un mail à une personne n'existant pas suffit à obtenir ces informations.
Il suffit en effet d'écrire à une adresse inexistante pour que le serveur SMTP génère un message de notification de non-remise comprenant toutes les informations de l'en-tête initial. Alors que, quel que soit le mode d'acquisition de ces renseignements, ce sont des informations qui devraient normalement rester strictement confidentielles.

Quelles sont les différentes parades ?
Certaines entreprises fonctionnent avec ce qu'on appelle une "zone démilitarisée" ou DMZ, sorte de sas entre le réseau externe et l'entreprise. Ce relais interne réceptionne les mails et se connecte sur le serveur interne pour les délivrer. Cette connexion constitue le point faible du dispositif car, en cas d'attaque de la DMZ, les informations peuvent être récupérées.

En savoir plus

À l'heure actuelle, on trouve de plus en plus de relais SMTP qui peuvent être configurés de façon à ne pas ajouter de ligne "received by" aux messages. Même si le protocole SMTP interdit cette pratique sur Internet, elle reste possible à l'intérieur de l'entreprise mais au prix d'une gestion complexe des circuits internes de messagerie (détection des boucles de mail par exemple). Il est aussi parfois possible de configurer les serveurs de messagerie pour qu'ils soient moins bavards mais cela reste rare et insuffisant.

L'autre alternative est d'épurer les en-têtes avant le passage des messages sur Internet. Cela nécessite soit un filtre basé sur des expressions régulières adapté aux en-têtes de l'entreprise et spécialement développé pour elle (par exemple, dans le domaine de l'open source, PostFix), soit un produit incorporant la fonctionnalité Reverse SMTP qui veut que ce soit le réseau interne qui se connecte à la DMZ et non l'inverse. Notre société propose d'ailleurs une solution incluant cette fonctionnalité.




Pour tout problème de consultation, écrivez au Webmaster
Copyrights et reproductions . Données personnelles
Copyright 2006 Benchmark Group - 69-71 avenue Pierre Grenier
92517 Boulogne Billancourt Cedex, FRANCE