Qu’est-ce que l’authentification SMTP ? Des emails sécurisés contre le spam

Si vous souhaitez envoyer des lettres de menaces ou des publicités non désirées par la poste sans craindre les conséquences, il vous suffit d’écrire une mauvaise adresse d’expéditeur sur l’enveloppe. Pour simplifier, il en va de même pour les emails. Si bien même que selon une étude de Kaspersky Lab, 58,31 % de tous les emails envoyés dans le monde sont des spams, une valeur qui a augmenté d’environ 3 % entre 2015 et 2016. La plus grande partie provient d’ordinateurs et de serveurs infectés par des logiciels malveillants, qui finissent rapidement sur les listes noires des grands fournisseurs en tant que distributeurs de pourriels qui ne sont pas utilisés aux fins auxquelles ils sont destinés. L’authentification SMTP fournit un minimum absolu de sécurité pour éviter que la même chose ne vous arrive.

Qu’est-ce que l’authentification SMTP ?

L’authentification SMTP, souvent abrégée en SMTP-Auth ou ASMTP, est une extension de SMTP étendu (ESMTP), qui est une extension de protocole réseau SMTP. Il permet à un client SMTP (un expéditeur d’emails) de se connecter à un serveur SMTP (un fournisseur d’emails) en utilisant un mécanisme d’authentification. Ainsi, seuls les utilisateurs de confiance peuvent envoyer des emails sur le réseau et les transférer via le serveur. Les données du journal peuvent également être utilisées pour déterminer qui a utilisé le serveur comme relais de messagerie.

Pourquoi SMTP-Auth existe ?

Le but de SMTP-Auth est d’empêcher qu’un serveur SMTP soit utilisé comme « Open Mail Relay » pour distribuer du spam sur le réseau. La nécessité de cette procédure est due aux caractéristiques inhérentes au SMTP original de 1982, qui ne prévoyait pas l’authentification des utilisateurs par défaut. C’est pourquoi, jusqu’en 1997 environ, les relais de messagerie ouverts constituaient la norme : il s’agit de serveurs de messagerie qui redirigent tous les emails, quelle que soit l’adresse de l’expéditeur ou du destinataire. Ce qui semble absurde aujourd’hui se basait à l’époque sur de bonnes raisons : en effet, les erreurs de système et les pannes de serveur sont plus fréquentes, c’est pourquoi les relais de messagerie ouverts devraient maintenir le trafic en cas d’urgence.

Toutefois, l’utilisation généralisée de ces relais non protégés a créé le problème du spam. Des annonceurs moralement douteux ainsi que des criminels malveillants (surtout le tristement célèbre « Spam-King » Sanford « Spamford » Wallace avec sa société Cyberpromo) ont utilisé les serveurs ouverts avec des adresses email volées ou inventées pour distribuer du spam. Cette pratique est appelée « Mail Spoofing ».

Comme les serveurs ne disposaient à l’époque d’aucun mécanisme d’authentification supplémentaire, ils ont accepté sans hésitation les courriers indésirables et les ont introduits dans le réseau. En utilisant du matériel externe, les spammeurs ont également économisé leurs propres ressources et n’ont pas pu être tracés. De plus, le changement constant de fausses adresses permettait de contourner les filtres anti-spam. Diverses contre-mesures ont été mises au point pour résoudre le problème des relais de courrier ouvert : d’abord SMTP-After-POP, puis ESMTP et ASMTP en 1995. Ces mesures ont été un succès, car en 2005-2006, le nombre de relais de courrier ouvert est passé de plusieurs centaines de milliers à une infime fraction.

Bien que la situation actuelle ne soit plus aussi critique qu’à l’époque, les spammeurs trouvent encore 10 à 20 nouveaux serveurs ouverts par jour sur le réseau, selon l’organisation internationale sans but lucratif Spamhaus. Parfois, ils sont le résultat de la négligence d’administrateurs inexpérimentés qui ouvrent temporairement leurs serveurs à des fins de test. Cependant, selon Spamhaus, le problème est plus souvent causé par des pare-feu mal configurés ou fissurés et des applications de sécurité externes (pas nécessairement la configuration du serveur elle-même), comme c’est souvent le cas pour les petites entreprises régionales. Si une application laisse passer un courrier indésirable, il est transmis via une connexion SMTP locale avec l’adresse IP de l’application concernée au serveur, qui le traite alors comme étant digne de confiance. De plus, de plus en plus de spammeurs botnets utilisent des ordinateurs domestiques « zombifiés » comme relais.

Aujourd’hui, les relais de messagerie ouverts instrumentalisés pour le spam sont généralement identifiés comme tels au bout de quelques jours, voire quelques heures, et se retrouvent ensuite sur des listes noires. Par conséquent, même les emails légitimes finissent dans le filtre anti-spam du destinataire, de sorte que l’opérateur d’un serveur de messagerie doit d’abord s’occuper de combler les lacunes de sécurité, puis essayer de les supprimer de la liste afin de pouvoir à nouveau fonctionner normalement. Les entreprises ne génèrent pas seulement un trafic élevé par le biais des spammeurs au détriment de leur vitesse matérielle ; leur réputation ternie et le temps supplémentaire qu’elles y consacrent coûtent également de l’argent.

C’est exactement pour cette raison que presque tous les serveurs de messagerie utilisent aujourd’hui ESMTP en liaison avec ASMTP. Ils ont donc toujours besoin d’une authentification avant d’utiliser leur service de courrier électronique. Un relais SMTP configuré de manière optimale (également appelé « Smart Host ») est un serveur qui ne transmet les emails des expéditeurs à des tiers que s’il est responsable des deux parties. En clair : les messages entrants ne sont envoyés qu’aux utilisateurs enregistrés, et les messages sortants proviennent uniquement des utilisateurs enregistrés ou de ceux qui sont autorisés à utiliser le serveur de messagerie.

Comment fonctionne ASMTP ?

Une caractéristique essentielle de l’ASMTP est que les emails sont acceptés via le port 587/TCP (le SMTP-Auth-Port) au lieu du port traditionnel 25/TCP, qui est la base obligatoire pour ESMTP. Le protocole contient essentiellement une sélection de mécanismes d’authentification avec différents niveaux de sécurité qu’un serveur SMTP peut utiliser, en fonction de sa configuration, pour vérifier la fiabilité d’un client SMTP.

Il s’agit notamment, mais pas exclusivement, des éléments suivants :

  • PLAIN : une authentification utilisant le nom d’utilisateur et le mot de passe du client. Les deux sont transmis en clair et codés dans le jeu de caractères Base64
  • CRAM-MD5 : une alternative à PLAIN et LOGIN avec un niveau de sécurité plus élevé selon le principe challenge-response. Comme les spammeurs peuvent décoder les données d’accès personnelles d’un utilisateur relativement rapidement à partir du code Base64, le mot de passe n’est pas transmis au serveur en texte clair ou en code avec ce mécanisme. Au lieu de cela, le serveur donne au client une sorte de problème arithmétique qui ne peut être résolu qu’en utilisant le mot de passe. Cette tâche change à chaque connexion, de sorte que les spammeurs ne peuvent pas utiliser à mauvais escient les données des précédentes connexions au serveur.
  • D’autres mécanismes sont également proposés : GSSAPI, DIGEST-MD5, MD5, OAUTH10A, OAUTHEBEARER, SCRAM-SHA-1 et NTLM.

Voici un exemple d’authentification via LOGIN :

Partie Commandes et codes statut ESMTP Explication
Serveur 220 smtp.server.com ESMTP Postfix Une fois la connexion établie, le serveur SMTP répond.
Client EHLO relay.client.com Le client SMTP se connecte avec son nom d’hôte et interroge le support ESMTP du serveur via la commande « EHLO ».
Serveur 250-smtp.server.com Bonjour250 AUTH CRAM-MD5 LOGIN PLAIN Le serveur confirme le login et donc aussi qu’il est compatible avec ESMTP (si ce n’est pas le cas, il continue avec « HELO » grâce à la rétrocompatibilité du SMTP). Le serveur offre ensuite au client un choix de mécanismes d’authentification.
Client AUTH LOGIN Le client sélectionne le mécanisme d’authentification LOGIN.
Serveur: 334 VXNlcm5hbWU6 Le serveur demande le nom d’utilisateur de l’expéditeur avec le code Base64 pour « Username : ».
Client TWF4IE11c3Rlcm1hbm4= Le client répond en code Base64 avec « John Doe ».
Serveur 334 UGFzc3dvcmQ6 Le serveur demande via le code Base64 le mot de passe de l’expéditeur.
Client SWNoYmlua2VpblNwYW1tZXI= Le client répond avec le code Base64 pour le mot de passe. Dans cet exemple, c’est « Imnotaspammer ».
Serveur 235 OK Le serveur confirme l’authentification. La transmission de l’email selon SMTP commence.

Comment configurer une authentification SMTP ?

Dans certains clients de messagerie (comme Mozilla Thunderbird), l’authentification SMTP est généralement configurée automatiquement lorsqu’un nouveau compte est créé. Si cela ne fonctionne pas, vous devrez peut-être aider manuellement.

Dans le cas de Thunderbird, procédez comme suit :

  1. Ouvrez le menu contextuel en cliquant avec le bouton droit de la souris sur votre compte e-mail et cliquez sur « Paramètres ».
  2. Sélectionnez votre serveur de messagerie dans le menu « Serveur de messagerie sortant (SMTP) » et cliquez sur « Modifier ».
  3. Activez l’option « Utiliser nom d’utilisateur et mot de passe » et entrez votre adresse email.
  4. Confirmez les réglages avec « OK ».

De plus, voici un tutoriel pour Outlook :

  1. Cliquez sur « Paramètres du compte » dans le menu « Fichier ».
  2. Sélectionnez votre compte et cliquez sur « Modifier ».
  3. Cliquez sur « Autres paramètres » dans la fenêtre qui s’ouvre.
  4. Allez dans l’onglet Serveur de courrier sortant et sélectionnez l’option « Serveur de courrier sortant (SMTP) requiert une authentification ».
  5. Cochez la case « Utiliser les mêmes paramètres que pour le serveur de messagerie entrant ».
  6. Confirmez avec « OK ». La fenêtre se referme.
  7. Cliquez sur « Suivant ». Outlook va maintenant vérifier les nouveaux paramètres du compte. Une fois le test terminé, cliquez sur « Fermer ».
  8. Cliquez sur « Terminer » puis sur « Fermer ».

Comment tester SMTP-Auth ?

Vous pouvez utiliser le client Telnet pour vérifier si un serveur de messagerie est utilisé comme relais ouvert ou si SMTP-Auth fonctionne correctement (par exemple, si vous configurez votre propre serveur de messagerie). Ceci est également utilisé par certains spammeurs pour localiser manuellement les relais de messagerie ouverts. SMTP et ESMTP sont des protocoles purement textuels, c’est pourquoi vous pouvez également démarrer et exécuter une session client-serveur manuellement. Tout ce dont vous avez besoin est votre nom d’utilisateur et votre mot de passe dans le code Base64, que vous pouvez obtenir sur des sites Web tels que base64encode.net.

Conseil

Le client Telnet est disponible sur tous les systèmes d’exploitation courants et peut être ouvert par défaut via le terme « telnet ». Sur les versions Windows à partir de Vista, le client doit d’abord être installé ou activé dans le panneau de contrôle.

Le test d’authentification SMTP s’exécute comme suit :

  1. Essayez de vous connecter au serveur SMTP via le port 25/TCP en utilisant la commande « telnet smtp.example.com 25 » (remplacez « smtp.example.com » par le domaine de votre serveur mail).
  2. Le serveur doit répondre avec le code d’état « 220 smtp.example.com ESMTP Postfix » et démarrer la session.
  3. Le serveur est accueilli avec la formule « EHLO smtp.example.com ».
  4. Le serveur offrira une sélection de mécanismes d’authentification comme indiqué dans l’exemple ci-dessus. Par exemple, sélectionnez LOGIN en entrant la commande « AUTH LOGIN ».
  5. Après les commandes « MAIL FROM » et « RCPT TO », entrez une adresse d’expéditeur et de destinataire qui n’existe pas. Si le serveur répond par un message d’erreur, ASMTP est correctement configuré et votre serveur n’est donc pas un Open Mail Relay. S’il confirme les deux commandes avec « 250 OK » à la place, il y a un besoin d’amélioration.

Vous pouvez également effectuer le test d’authentification SMTP à l’aide d’outils externes tels que MxToolbox, Inc.. Il offre également une sélection de listes noires que vous pouvez vérifier en cas de soupçons.


Attendez ! Nous avons quelque chose pour vous !
Votre messagerie professionnelle

Créez une adresse personnalisée
Affichez votre sérieux sur Internet
Nom de domaine inclus
À partir d' 1 € TTC/mois
Conseiller personnel inclus !