103 votes

Email envoyé à moi est adressé à MAIL@MAIL.COM. Comment cela est-il fait?

Récemment, j'ai reçu un email d'arnaque, et pour rire, je l'ai ouvert pour le lire. Très simple, et pas beaucoup d'effort.

J'ai remarqué quelque chose de particulier; cet email ne m'était pas adressé. Au début, j'ai soupçonné une CC, ou un BCC, mais nulle part il ne contient mon adresse sur l'email. J'ai fourni une photo ci-dessous. Comment est-ce possible?

entrez la description de l'image ici

151voto

user Points 28521

Un message électronique Internet se compose de deux parties. Nous pouvons les appeler l'enveloppe et le message de contenu ou simplement le message.

L'enveloppe contient des données de routage : principalement, il s'agit de l'adresse de l'expéditeur et d'une ou plusieurs adresses de destinataire.

Le message contient le contenu du message : ligne d'objet, corps du message, pièces jointes, etc. Il contient également quelques informations techniques telles que les en-têtes de traçage (Received:), les données DKIM, etc. ; ainsi que les adresses de l'expéditeur et du destinataire affichées (ce que vous voyez dans les champs From, To et Cc de votre client de messagerie).

Voici l'essentiel : Les deux n'ont pas besoin d'être identiques !

Un serveur de messagerie va regarder les données de l'enveloppe pour déterminer comment envoyer le message. D'autre part, à quelques exceptions près, le message lui-même sera traité simplement comme des données. En particulier, un serveur de messagerie bien configuré ne regarde pas les champs To: et Cc: du message lui-même pour déterminer la liste des destinataires, ni le champ From: pour déterminer l'adresse de l'expéditeur.

Lorsque vous rédigez et envoyez un e-mail, votre client de messagerie prend ce que vous avez saisi dans les champs Pour, Cc et Cci, et traduit cela en informations de routage de l'enveloppe. Cela se fait principalement en supprimant tous les noms complets (ne laissant que les adresses e-mail), mais peut également inclure des choses comme la réécriture des adresses, l'expansion des alias, etc. Le résultat est une liste d'adresses e-mail qui sont transmises au serveur de messagerie auquel votre client de messagerie parle en tant que liste des destinataires. Les listes Pour et Cc restent dans l'e-mail, mais la liste Cci n'est pas transmise au serveur, la rendant invisible aux destinataires du message. L'adresse de l'expéditeur fonctionne de manière très similaire.

Lorsque le message arrive à sa destination finale, les données de l'enveloppe sont soit jetées, soit conservées dans les en-têtes détaillés du message. C'est en partie la raison pour laquelle Spittin' IT a demandé les en-têtes complets du message dans un commentaire à votre question.

De plus, avec l'e-mail Internet, il est possible de parler directement à un serveur de messagerie et ainsi d'envoyer un message qui a une incohérence entre les données de l'enveloppe et les données du message qu'un client de messagerie électronique normal, bien configuré, ne vous permettrait pas de composer. De plus, les serveurs de messagerie effectuent différents degrés de vérifications sur l'adresse de l'expéditeur qui leur est donnée dans les données de l'enveloppe ; certains la vérifient à peine au-delà de s'assurer qu'il s'agit d'une adresse e-mail valide sur le plan syntaxique. Le champ De des données du message est soumis à encore moins de vérifications.

Étant donné que le client de messagerie de réception affiche ce qui se trouve dans les en-têtes De, Pour et Cc, et non les données d'adresse de l'enveloppe, il est possible de mettre ce que vous voulez là-dedans et le client de messagerie de réception n'aura d'autre choix que de faire confiance à son exactitude raisonnable. Pour les e-mails légitimes, c'est généralement assez précis ; pour les spams, presque jamais.

Dans le monde des objets tangibles, physiques habités par nous, pauvres êtres humains, l'expéditeur de l'enveloppe et le destinataire de l'enveloppe correspondent respectivement à l'adresse de retour et à l'adresse du destinataire que vous écrivez à l'extérieur de l'enveloppe ; et les en-têtes De: et Pour:/Cc: correspondent à ce que vous mettez en tant qu'adresse de l'expéditeur et de destinataire, respectivement, dans la lettre que vous mettez dans l'enveloppe.

23voto

phyrfox Points 2893

Tl;dr en bas.

Le protocole SMTP n'a pas la notion de destinataires CC ou BCC; c'est une convention établie par les clients de messagerie. Le serveur SMTP se préoccupe généralement uniquement des informations de routage et des données. Cette distinction est importante, car sans cette capacité, le BCC ne pourrait pas exister. Comme une communication légitime en BCC, considérez la transcription client suivante :

HELO from-mail-server.com
MAIL FROM:
RCPT TO:
DATA
From: "John Smith" 
To: "Jane Doe" 
BCC: "Anonymous" 
Subject: Avis de réunion importante
Date: lundi 15 mai 2017 12h20

Ceci est un avis de réunion importante. Nous nous réunirons demain.

.

Maintenant, dans ce cas, Anonymous a reçu un message sur cette réunion. Cependant, cette version du courrier n'a pas été routée vers Jane Doe; elle ne sait rien du fait qu'Anonymous a été notifié. En revanche, Jane Doe recevra le message avec un corps et un en-tête différents :

HELO from-mail-server.com
MAIL FROM:
RCPT TO:
DATA
From: "John Smith" 
To: "Jane Doe" 
Subject: Avis de réunion importante
Date: lundi 15 mai 2017 12h20

Ceci est un avis de réunion importante. Nous nous réunirons demain.

.

Ici, comme Anonymous était en copie cachée, le message envoyé à Jane Doe n'incluait pas la liste des destinataires BCC. En raison de la convention BCC, l'enveloppe électronique de l'e-mail peut ne pas inclure les destinataires ayant effectivement reçu le message, et elle peut également inclure des destinataires qui n'apparaissent pas dans les en-têtes du message.

Comme mentionné par @JonasWielicki, que je voulais également inclure, c'est que le MUA (Mail User Agent) est généralement responsable de l'envoi des multiples e-mails nécessaires pour implémenter le BCC. Les serveurs de messagerie ne savent rien du BCC, donc le MUA doit mettre en œuvre le BCC en envoyant des e-mails multiples avec des itinéraires différents spécifiés dans les en-têtes d'enveloppe. Pour cette raison, les BCC prennent généralement plus de temps à envoyer que les e-mails normaux, car différents corps de message doivent être construits et envoyés individuellement.

Cela aide également à respecter certaines règles de conformité des e-mails. Par exemple, un serveur de messagerie peut avoir des règles configurées pour mettre automatiquement en copie cachée un serveur d'archivage d'e-mails (tous les e-mails qui lui sont envoyés sont également archivés), auquel cas le serveur de messagerie pourrait même ne pas être un destinataire réel.

HELO from-mail-server.com
MAIL FROM:
RCPT TO:
DATA
From: "John Smith" 
To: "Jane Doe" 
BCC: "Anonymous" 
Subject: Avis de réunion importante
Date: lundi 15 mai 2017 12h20

Ceci est un avis de réunion importante. Nous nous réunirons demain.

.

Ici, le destinataire est une autre partie complètement non divulguée à aucun des destinataires ou même à l'expéditeur. Il s'agit d'une fonctionnalité du protocole, généralement utilisée pour relayer ou archiver des messages.

Ce que ce message indésirable a fait, c'est profiter de ce comportement. C'est une faille standard qui devrait techniquement fonctionner avec n'importe quel serveur de messagerie conforme. Bien sûr, de nombreux serveurs mis à jour utilisent des "extensions" comme DKIM pour vérifier qu'un e-mail est authentique, mais il y a encore de nombreux anciens serveurs de messagerie qui s'en moquent, simplement parce qu'il est tentant de ne pas réparer ce qui ne fonctionne pas.

Notez également que j'ai spécifié un en-tête Date. Cela peut être n'importe quelle valeur arbitraire (mais bien formatée); de nombreux clients afficheront de manière transparente toute plage de dates légales du passé lointain au futur lointain. J'ai personnellement envoyé un e-mail à moi-même il y a des années qui restera en haut de ma boîte mail longtemps après mon espérance de vie, ainsi qu'un e-mail antérieur à mon compte de messagerie et à ma propre naissance.

tl;dr

En résumé, l'expéditeur a falsifié un e-mail, le serveur de messagerie d'origine l'a accepté/transmis, votre serveur de messagerie l'a accepté et stocké dans votre boîte de réception, et votre client a fidèlement affiché les données qui se trouvaient dans votre boîte de réception, le tout sans contourner aucune sécurité. La sécurité de "l'envoi" est souvent beaucoup moins restreinte que celle de la "réception" dans cette perspective, car POP3 exige presque toujours un nom d'utilisateur et un mot de passe avant que vous puissiez accéder à une boîte de réception (théoriquement, vous pourriez contourner cela, mais je ne connais aucun service de messagerie légitime qui le fasse).

6voto

trognanders Points 364

SMTP et l'email sont des services Internet très anciens venant d'une époque où la sécurité et l'authentification étaient beaucoup moins prises au sérieux (le DNS en est un autre exemple). La conception du protocole ne fait aucun effort pour vérifier l'authenticité de l'adresse de l'expéditeur, et ne valide que l'adresse du destinataire dans la mesure où il s'assure que le courrier est adressable.

L'email est transmis via le protocole SMTP. Le protocole SMTP est relativement simple ; il offre une facilité pour transmettre du texte en clair à une adresse e-mail et c'est à peu près tout. La structure de ce texte en clair est définie par RFC 5322. L'idée générale est que le texte de l'email a des métadonnées appelées un en-tête, et le corps textuel réel du message. Cet en-tête email est généré par l'expéditeur (rien de cela ne peut être considéré comme fiable) et contient des champs comme "to:", "from:", "subject:", etc...

Le protocole SMTP ne (et n'est pas censé) valider que les en-têtes d'email correspondent à très peu de choses définies dans le protocole SMTP, qui sont essentiellement votre adresse e-mail et une adresse d'expéditeur qui n'est jamais validée de quelque manière que ce soit.

Presque tout dans un message e-mail peut être faux.

La seule chose même vaguement digne de confiance concernant le contenu des e-mails aujourd'hui sont les signatures DKIM, qui prouvent que l'e-mail a été traité par un serveur de messagerie approuvé par le titulaire de domaine. En creusant plus profondément, vous constaterez que cet e-mail frauduleux n'a aucune signature DKIM.

3voto

i486 Points 160

L'adresse À dans l'en-tête de l'email est à des fins d'information et elle est affichée par le client email. La vraie adresse du destinataire est donnée avec RCPT TO dans le protocole SMTP. C'est similaire si vous écrivez une lettre, la mettez dans une enveloppe, écrivez Adresse-1 sur l'enveloppe. Ensuite allez chez le transporteur, donnez une autre Adresse-2. Le transporteur place votre enveloppe dans une plus grande enveloppe avec l'Adresse-2 et l'envoie là-bas. Votre secrétaire (logiciel de client email) met l'enveloppe externe à la poubelle et vous montre l'enveloppe interne avec Adresse-1. Vous pouvez voir cela avec la vue RAW du message email.

2voto

Chris H Points 1625

Ceci est un aspect légèrement différent, basé sur l'examen des en-têtes. Les autres réponses traitent mieux des détails de SMTP que je ne pourrais le faire.

Si vous pouvez obtenir les en-têtes complets de votre message, alors recherchez-les pour votre adresse, vous pourriez la trouver dans un champ appelé Envelope-to, Delivered-to ou X-Apparently-to. Le premier est utilisé par mon fournisseur de messagerie, le deuxième par Gmail; j'ai également vu le troisième utilisé. Ce sont des champs différents mais pour nos besoins, ils ont tendance à signifier la même chose: la boîte aux lettres dans laquelle le message doit réellement être livré. J'ai testé en envoyant depuis Outlook (version bureau) avec le destinataire en copie cachée (BCC).

Mon fournisseur de messagerie utilise également le champ Delivered-To mais pour le nom de boîte aux lettres sur leur serveur. Ce n'est pas mon adresse e-mail même si cela y ressemble (pensez à ChrisH-$ACCOUNTNAME@$SERVER.mail.com).

Outlook (associé au serveur Exchange), en revanche, n'inclut pas dans les en-têtes un seul champ avec l'adresse e-mail du destinataire si vous êtes listé en copie cachée (BCC).

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X