Pollupostage: comprendre le relayage SMTP

par Marc Thirion

Le relayage SMTP est une technique qui est abusée par les polluposteurs afin de dissimuler la réelle origine de leurs pourriels, et pour profiter de la bande passante réseau de leurs victimes. Sur cette page, nous expliqons en quoi consiste le relayage SMTP, d'abord sous sa forme simple (relai SMTP ouvert), puis sous une forme plus subtile appelée relayage multihop.

Comprendre le fonctionnement du courriel

Pour comprendre en quoi consiste le relayage SMTP, il faut déjà comprendre comment fonctionne le courriel (courrier électronique, ou email).

Il y a trois types d'intervenant dans le courrier électronique:

Le MUA est l'interface utilisateur: il permet de consulter le contenu de ta boîte aux lettres, de composer des messages, etc. Il a la bien sûr la fonction de donner le courrier que tu veux envoyer au centre de tri le plus plus proche, ton MTA.

Le MTA agit comme le système de distribution de courrier papier des PTT: il joue le rôle de centre de tri, logistique d'acheminement et centre de distribution. Comme dans le cas des PTT, il est prévu pour être relayable: chaque MTA transmet le courrier au MTA dont il pense qu'il va gérer le reste de l'acheminement du message. Chaque MTA qui a acheminé le courrier laisse normalement une trace (un champ Received: dans le message).

Une fois que le courrier est arrivé au MTA de la machine qui gère ta boîte au lettres (ton bureau de poste local), ce dernier le donne à un MDA (facteur) qui va le poser physiquement dans ta boîte aux lettres.

Un relai SMTP ouvert

Maintenant, les relais ouverts. Dans la description que j'ai faite, les MTA peuvent accepter du courrier de n'importe quel MTA ou MUA et les donner à n'importe quel autre MTA ou à leur MDA. Dans le temps, c'était fréquent. Un MTA qui est configuré comme cela est un relai ouvert.

Mais avec la massification du courrier électronique, des abus sont apparus : des gens peu scrupuleux envoient en masse des courrier commerciaux ou d'arnaque en profitant du faible coût du courrier électronique. La parade immédiate des victimes est de bloquer les MTA dont ces gens-là se servent. Le contournement trouvé par les polluposteurs est (entre autre) d'utiliser des relais ouverts (qui présentent en outre l'avantage de mieux masquer leur origine).

Donc les victimes se protègent en refusant les courriers venant de relais ouverts.

Tout cela est bel et bon, mais comment fermer un relai ? Un MTA possédait déjà la notion de domaine géré: c'est ce qui lui permettait de décider que si le destinataire était dans le domaine géré, il fallait passer le courrier au MDA local plutôt que le transférer au MTA suivant. Pour fermer le relais, il suffit alors d'ajouter la notion d'émetteur légitime. Cette dernière notion peut varier suivant le MTA : pour un FAI ou une entreprise, l'émetteur légitime est souvent défini par « courrier soumis par une machine du réseau interne (client pour un FAI), identifiée par son adresse IP »; pour smtp.laposte.net, et tous les MTA fonctionnant suivant le principe POP avant SMTP, c'est « courrier soumis par une machine qui a fait une identification par POP dans les X secondes précédentes, toujours d'après l'adresse IP » (il y a d'autres façons de s'identifier, dont une par protocole ESMTP, mais peu utilisée à ma connaissance).

Un relais fermé est alors un MTA qui n'accepte que les courriers dont soit le destinataire est dans le domaine géré, soit l'émetteur est un émetteur légitime.

On a vu que la plupart des FAI considèrent comme émetteurs légitimes les machines de leurs clients. Mais avec le développement du haut débit, et plus précisément de l'accès au forfait temps illimité, conjugué à la possibilité d'obtenir une adresse IP fixe, les clients se sont vus ouvrir la possibilité de monter leur propre serveur de courrier (MTA). Comme toujours en cas de massification d'une technologie, tout le monde n'est pas compétent pour maîtriser la chose (soyons charitables et ne supposons pas a priori que ces gens veulent nuire; mais gardons présent à l'esprit que c'est une éventualité).

On retrouve donc chez les clients des principaux FAI des relais ouverts.

Le relayage multihop

Que se passe-t-il alors ? Quelqu'un qui veut spammer repère un relai ouvert chez un client de fai.net (laissons de côté l'aspect pratique de la découverte de ce genre de choses pour l'instant); il (elle) soumet ses spams au relais ouvert. Si ce dernier est configuré pour transmettre les courriers non destinés au domaine géré au MTA tournant sur le serveur SMTP sortant du fournisseur d'accès, smtp.fai.net (ce qui n'est pas une configuration idiote pour un client du fournisseur d'accès), les courriers seront acceptés par smtp.fai.net (puisque qu'ils sont soumis par une machine qui est considéré comme étant un émetteur légitime); smtp.fai.net va alors soumettre lui-même le courrier au MTA suivant, qui est normalement celui qui gère le domaine du destinataire.

Ce dernier reçoit donc un courrier relayé du serveur smtp.fai.net, même si smtp.fai.net lui-même ne relaie pas. Il s'agit d'un cas de relayage multihop.

Les conclusions que l'on peut en tirer:

Nous avons une page listant différentes solutions techniques pour un FAI, afin d'éviter qu'il soit ouvert à ce type de problème, et que les serveurs SMTP du fournisseur d'accès se retrouvent présents dans les listes de boycott anti-pollupostage.

Revenir au dossier sur le pollupostage.