SPF, DKIM und DMARC verständlich erklärt

In diesem Artikel stellt uns Exchange-Experte Markus Hengstler einige Tools vor, welche die Sicherheit bei der E-Mail-Kommunikation erhöhen.

AutorMarkus Hengstler
Datum18.02.2019
Lesezeit6 Minuten

Lange zurück liegen die Zeiten, in denen der Posteingang von unnötigen Nachrichten oder Aufforderungen Geld zu überweisen, verschont wurde. Der Kampf gegen Missbrauch des Email-Dienstes ist ein schwieriges Unterfangen, finden doch die Täter immer neue Möglichkeiten, die Schutzmechanismen zu umgehen.

Umso unverständlicher ist es, dass die bewährten Technologien bei weitem nicht flächendeckend konfiguriert sind. In diesem Artikel möchte ich die 3 wichtigsten Waffen im Kampf gegen Spam und gefälschte Emails vorstellen, in der Hoffnung, dass diese häufiger zum Einsatz kommen.

Wie funktioniert SPF?

SPF steht für Sender Policy Framework und dient dazu, die Mail anhand der IP Adresse des sendenden Mailservers zu validieren. Dazu wird ein DNS-Eintrag in der Zone der Email-Domäne erstellt, der die Systeme auflistet, welche berechtigt sind, in deren Namen Nachrichten zu versenden. Hier ein Beispiel:

microsoft exchange

Es können FQDNs, IP Adressen oder Verweise auf einen anderen SPF Record integriert werden (include). Abschliessend wird eine Richtlinie festgelegt, wie mit allen nicht gelisteten Systemen verfahren werden soll (-all).

Wichtige Details bei SPF:

  • Die zu überprüfende Domäne wird aus dem Email-Header «mail from:» generiert. Dies ist nicht die Domäne, welche der Benutzer in seinem Mail-Client sieht. Hier ein Beispiel eines Newsletters, der von UMB zu kommen scheint:
    microsoft exchange
  • Der Header zeigt aber, dass die Nachricht mit der Domäne des Massenmail-Versenders verschickt wurde:
    microsoft exchange
  • SPF unterstützt höchstens 10 Namensauflösungen, um alle IP-Adressen zu erlangen. Wird die Anzahl überschritten, schlägt der Test fehl.
  • Oft werden Includes verwendet, wenn Marketing-Mails von speziellen Dienstleistern verschickt werden. Manchmal sind diese gar nicht nötig, da die «mail from:» Adresse des Dienstleisters verwendet wird und nur das From innerhalb des Mails die eigene Domäne beinhaltet, wie im letzten Beispiel ersichtlich ist.
  • Weiterleitungen können die Validierung scheitern lassen, wenn die «mail from:» Adresse des ursprünglichen Mails übernommen wird.

Wie funktioniert DKIM?

DKIM steht für Domain Keys Identified Mail und überprüft wie SPF die Email-Domäne der «mail from:» Adresse. Allerdings wird nicht die IP Adresse des sendenden Servers verglichen, sondern die Nachricht und der Mail-Header werden digital signiert. Dafür benutzt das sendende System den privaten Teil eines asymmetrischen Schlüsselpaares. Das öffentliche Gegenstück wird mit einem DNS-Record in der Email-Domäne zugänglich gemacht. Somit kann jede Gegenstelle die Signatur und damit die Herkunft der Nachrichten überprüfen.

Hier das Beispiel:

microsoft exchange

K1 im FQDN ist dabei der sogenannte Selector. Im Email-Header wird dieser hinterlegt, damit das überprüfende System weiss, welcher Key (falls mehrere vorhanden sind) für die Signatur verwendet worden ist. So lässt sich auch der Mailserver eines Massenmail-Versenders einbinden, indem dessen Public Key mit dem entsprechenden Selector in der DNS-Zone der Email-Domäne hinterlegt wird. Der lange String hinter p= ist der öffentliche Schlüssel, welcher die Validierung der Signatur erlaubt. Im Header sieht das dann so aus:

microsoft exchange

Vorteile von DKIM gegenüber SPF sind:

  • Die Signatur bleibt auch bei Weiterleitungen gültig und lässt eine Verifikation zu
  • Neben der Herkunft kann auch die Nachricht selbst geschützt werden

Achtung: Nicht alle Produkte unterstützen DKIM. Exchange On-Premises zum Beispiel kann dies nicht. Allerdings ist das auch nicht nötig, da das Mail-Gateway normalerweise die Kommunikation im Internet übernimmt.

Hier beispielsweise ist die Konfiguration einer Sophos-Firewall ersichtlich:

microsoft exchange

Und wofür wird jetzt DMRC verwendet?

Wie schon erwähnt, prüfen sowohl SPF als auch DKIM die Domäne im «Mail From» und nicht die Domäne, die dem Benutzer angezeigt wird. DMARC erlaubt nun eine Richtlinie über DNS zu definieren, die mehr oder weniger zwingend voraussetzt, dass einer der beiden Checks die gleiche Domäne betrifft, wie die eeder Empfänger im «From»-Feld sieht.

Auch hier ein Beispiel:

microsoft exchange

Die Policy wird über den Parameter p= bestimmt und kann none, quarantine oder reject sein. Die Policy none zusammen mit den Parameter rua= und ruf= können für einen Test vor der Scharfschaltung verwendet werden. Quarantine und reject sagen dem empfangenden System, dass sie die Nachricht als Spoof markieren oder sie ablehnen sollen, wenn nicht entweder SPF- oder DKIM-Checks für die Domäne microsoft.com erfolgreich durchlaufen worden sind.

Fazit

Der Schutz sowohl von eigenen Benutzern als auch fremden Empfängern vor gespooften Emails kann erheblich verbessert werden, wenn alle 3 Technologien (SPF, DKIM und DMARC) eingerichtet werden. Die Umsetzung ist keine Hexerei, aber muss gut geplant werden. Dies gilt insbesondere bei Verwendung von Partnern für den Versand von zum Beispiel Newsletter.

Für mehr Informationen über das Thema Sicherheit beim Einsatz von Mail besuchen Sie einen der folgenden Kurse:


Über den Autor

Markus Hengstler

Markus Hengstler arbeitet bei der UMB AG als Senior Systems Engineer in den Bereichen Exchange, Windows und Citrix. Dank seiner Erfahrungen in diesen Bereichen ist er zertifizierter «MCSE: Server Infrastructure». Ausserdem ist er einer von drei «MCSM: Messaging» in der Schweiz. Seit 2001 unterrichtet er als Microsoft Certified Trainer und seit 2010 als Citrix Certified Instructor bei Digicomp.