Wie funktioniert E-Mail-Zustellung

Die Frage
  • Sie haben eine E-Mail erhalten, obwohl Ihre E-Mail-Adresse weder im To:-Feld noch im CC:-Feld erscheint?
  • Sie haben eine E-Mail bekommen, in der Ihre eigene E-Mail-Adresse als Absender erscheint?
Date: Fri, 19 Oct 2015 13:40:43 +0200
From: Hasen-Dienst <jemand@ruhr-uni-bochum.de>
To: Mein Freund <irgendwer@ruhr-uni-bochum.de>
Subject: I missed you

Dear Friend, 
...
Die Erklärung

Dies sieht auf den ersten Blick merkwürdig aus, ist aber ganz normal für ein Mailsystem. Für den Transport und die Zustellung von E-Mail wird eine Technik verwendet, die aus den E-Mail-Headern nicht unmittelbar hervorgeht.

Es gibt einige Anwendungen, bei denen der Zusammenhang so klar ist, dass sich kaum jemand wundert, dass die To:-Adresse nicht stimmt.

  • Bei der Umleitung / Weiterleitung von E-Mail wird die E-Mail an eine oder mehrere Adressen zugestellt, die nicht im To: stehen.
  • Empfänger, die im Bcc: stehen, empfangen die E-Mail-Nachricht, obwohl diese (meist) nicht in den E-Mail-Headern zu finden sind.
  • Bei Mailinglisten steht i.d.R. die Listenadresse im To:, die E-Mail wird aber an die Mitglieder der Mailingliste zugestellt.

Gerade bei Spam (unerwünschte Werbemails bzw. Massensendungen) ist nahezu immer die From:-Adresse gefälscht und es stimmt nur selten die Adresse im To: mit der des Empfängers überein. Hier werden (inbesondere beim Phishing) Angaben verwendet, die dem Empfänger bekannt bzw. vertrauenswürdig erscheinen sollen.

E-Mail ist in vielfacher Hinsicht der Briefpost nachgebildet. Wie beim klassischen Brief besteht auch eine E-Mail aus einem Briefkopf (Header), dem der Inhalt der Nachricht (Body) folgt. Für den Versand wird der Brief in ein Kuvert gesteckt (Envelope), das bis zur endgültigen Zustellung nicht wieder geöffnet bzw. vom E-Mailsystem ausgewertet wird. Wie in der Briefpost ist es auch bei E-Mail kein Problem, auf das Kuvert andere Adressen zu schreiben als im darin enthaltenen Brief.

Für den Transport und die Zustellung von E-Mail ist ausschließlich die Envelope-Information relevant.

Die Nachricht

Für die automatische Verarbeitung ist der Aufbau des Headers genau geregelt (siehe RFC 5322 - Internet Message Format). Jedes Mail-Programm zeigt einige dieser Headerzeilen an:

  • Date: Datum und Uhrzeit der Erstellung der Nachricht
  • From: Adresse des Autors/der Autorin des Inhalts der Nachricht
  • Reply-To: an welche Adresse eine eventuelle Antwort gehen soll, wenn sich diese von der From:-Adresse unterscheidet
  • To: an wen sich die Nachricht hauptsächlich richtet
  • Cc: weitere Empfänger
  • Subject: entsprechend dem „Betrifft:” der Briefpost

Der E-Mail-Header dient zur Information des Empfängers und ist Ausdruck der Absichten des ursprünglichen Verfassers. Für den Transport und die Zustellung sind diese Informationen nicht relevant.

Der Versand

Zum Versand wird vom absendenden Mail-Programm zunächst der E-Mail-Server kontaktiert und ihm entsprechend dem Simple Mail Transfer Protocol - SMTP, RFC 5321 mitgeteilt, von wem und an wen die Nachricht geschickt werden soll. Diese Informationen sind der Umschlag(Envelope). Im Anschluß wird die Nachricht, also Header und Body, übertragen und an die in der Envelope angegebenen Adressen weitergeleitet.

Der Dialog zwischen E-Mail-Programm und E-Mail-Server ist einfach, erfolgt im Klartext und sei anhand eines Beispiels illustriert ( <: E-Mail-Server, >: absendendes E-Mail-Programm).

<-  220 mx2.mail.ruhr-uni-bochum.de ESMTP NO UCE C=DE
 -> HELO host.domain.invalid
<-  250 Ok
 -> MAIL FROM:<jemand@ruhr-uni-bochum.de>
<-  250 2.1.0 Ok
 -> RCPT TO:<irgendwer@ruhr-uni-bochum.de>
<-  250 2.1.5 Ok
 -> QUIT
<-  221 2.0.0 Bye
 -> DATA
<-  354 Enter mail, end with "." on a line by itself
 -> Date: Fri, 19 Oct 2015 13:40:43 +0200
 -> From: Hasen-Dienst <jemand@ruhr-uni-bochum.de>
 -> To: Mein Freund <irgendwer@ruhr-uni-bochum.de>
 -> Subject: I missed you
 -> 
 -> Dear Friend, 
 ->   ...
 -> .
<-  250 2.0.0 Ok: queued as 3qwXFm60wbz4w0K
 -> QUIT
<-  221 2.0.0 Bye

Da für die Zustellung der E-Mail ausschließlich die in RCPT TO: angegebene(n) Adresse(n) ausschlaggebend sind, kann

  • eine E-Mail-Weiterleitung dadurch erfolgen, dass einfach die Adresse in RCPT TO: geändert wird
  • eine E-Mail auch an die Bcc:-Empfänger geschickt werden, indem diese zusätzlich in RCPT TO: genannt werden, ohne in der E-Mail selbst erscheinen zu müssen
  • die Verteilung einer Nachricht an eine Mailingliste einfach dadurch erfolgen, dass in RCPT TO: die Adresse der Mailingliste durch die Adressen ihrer TeilnehmerInnen ersetzt wird

Das bedeutet auch, dass ein Versender von Massenmail in den Mailheadern (To: und From:) irgendwelche Phantasienamen benutzen kann und die Nachricht kommt an, solange bei RCPT TO: die richtigen Empfänger verwendet wurden.