SPF ?all und Umleitungen

Warum ein SPF ohne "-all" ein Risiko ist - Oder welche Lehren Sie aus dem Vorfall bei ct.de lernen sollten. Eine weitere Seite, die für einen strengen Einsatz von SPF votiert.

Auch wenn ich hier ct.de und Exchange Online als Beispiel nutzt, wo dieses Problem passiert ist, so sind alle Domains und Mailhoster mit Umleitungsfunktion potentielle Missbrauchsopfer, wenn Sie als Domaininhaber SPF nicht korrekt nutzen.

Weitere Details finden Sie auf den Seiten Google blockt ct.de wegen Microsoft? und Umleitung/Weiterleitung mit SPF/DKIM/DMARC/SRS.

EXO fälscht Absenderdomains?

Im Sommer 2023 hat ein Spammer die Domain "ct.de" als Absender missbraucht um Mails über eine Umleitung in Exchange Online zu Gmail zu senden. In der Folge hat Gmail die Domain betraft, so dass auch legitime Mails abgewiesen wurde. Wie konnte das passieren und warum sollten Sie daher die Aussendungen ihrer Domain zumindest mit SPF absichern, auch wenn dies auch vom Empfänger vielleicht erwünscht Umleitungen verhindert.

Die Redaktion der Zeitschrift c't sendet mit der Domain ct.de sicher viele Mails in die Welt. Nun hat sich ein Spammer aufgemacht und entweder selbst einen Office 365 Tenant mit Postfach gekauft oder ein Konto eines anderen Tenants missbraucht um Mails als "ct.de" über Exchange Online an Gmail und vermutlich andere Dienste zu senden. Geht das denn?

Der Angreifer kann natürlich nicht direkt mit dem Postfach seine Spammails als "ct.de" versenden, denn Microsoft stellt schon sicher, dass ein Exchange Online Postfach nur mit den Mailadressen versenden kann, die das Konto hat und zu den Domain gehören, die in dem Tenant registriert sind.

Include:protection outlook.com ein Risiko?

Daher ist es normalerweise ungefährlich, den Text "include:protection.outlook.com" im DNS als in den SPF-Eintrag zu addieren. Wenn Sie heute schon ein "-all" in ihrem SPF-Eintrag haben und zukünftig auch Exchange Online den direkten Versand ohne Umweg über einen lokalen Mailserver erlauben wollen dann ist dies sogar erforderlich.

Ein Problem bekommen Sie, wenn Sie include:protection.outlook.com eintragen aber ihre eigene Domain nicht mit einem "-all" am Ende gut absichern, denn dann kann es ihnen wie der Domain ct.de passieren, das jemand bösartig eine Umleitung in Exchange Online einrichtet und die weiteren Empfänger glauben es mit einem legitimen Tenant zu tu haben.

Das Problem ist nicht auf Exchange Online beschränkt. Wenn Sie ihre Domain bei einem anderen Hoster betreiben und diesen im SPF-Eintrag aufführen, dann kann auch jeder andere Kunde über eine Umleitung mit ihrem Namen senden.

Umleitung als Relay

Exchange Online ist kein offenes Relay aber natürlich gehören Weiterleitungen und Umleitungen zu den Leistungsmerkmalen eines Mailsystems. Das ist auch keine Besonderheit von Exchange Online. Das erbauen auch GMX, Hotmail, Gmail, Yahoo und nahezu jeder andere Provider.

Hier hat der Angreifer vermutlich eine Umleitung zu einer Zieladresse in seinem Tenant konfiguriert. Normalerweise ist das bei Exchange Online nicht aktiv, d.h. er muss entweder einen schwach gesicherten fremden Tenant genutzt oder einfach die Sicherheit des eigenen Tenants reduziert haben, so dass Exchange Online automatische Umleitungen ins Internet erlaubt.

Iim zweiten Schritt dann hat er dann Mail mit einer Absender aus der "ct.de"-Domain an dieses Postfach mit der Umleitung in Exchange Online gesendet. Da die Domain ct.de zu dem Zeitpunkt nicht mit einem "-all" abgesichert war, konnte Exchange Online die Mails nicht aufgrund der falschen IP-Adresse ablehnen. Wenn dann die anderen Filter nichts zu bemängeln hatten, wurde die Mail in das Exchange Online Postfach übertragen und dort griff die Umleitung zum externen Konto.

Das ist dann ein Fall, in dem Exchange Online eine Mail ins Internet sendet, obwohl die Absenderadresse nicht zum jeweiligen Tenant gehört. Solche Mails sind dann bei Gmail angekommen.

Natürlich macht auch Gmail entsprechende Spamprüfungen und hier kam nun zu tragen, dass ct.de auch einen include:protection.outlook.com im SPF-Record hatte. Das muss eigentlich so sein, wenn eine Firma einen Microsoft 365 Tenant hat und diverse Dienste im Auftrag des Anwender auch Mails versenden, z.B. Planner, Teams, Flow etc.

Gmail ist nun davon ausgegangen, dass die Mail von einer legitimen IP-Adresse der Domain "ct.de" eingeliefert wurde und authentisch ist. Das "?All" hatte hier also gar keine Funktion. Ob der Spammer nun viele Mails an eine einzige Adresse oder mit immer wechselnden Umleitungen an verschiedene Konten gesendet hat, weiß ich nicht.

Mein Haus, meine Regeln

Auf jeden Fall haben Gmail-Empfänger diese Mails als "Spam" gemeldet und die dortigen Administratoren dürften dann die Domain "ct.de" irgendwann geblockt haben. Denn es hat ja den Eindruck, dass der Admin seine per SPF-Eintrag legitimierten Mailserver nicht im Griff hat und diese als Spamschleuder unterwegs sind.

Ich kenne es so, dass Provider dann die einliefernden IP-Adressen in verschiedene Blocklisten eintragen. Allerdings passiert dies wohl nicht mit den IP-Adressen von Exchange Online, die von viele Kunden und Domains genutzt werden. Also wurde die Domain und nicht die einliefernde IP-Adresse betraft und direkte Mails aus Hannover zu Gmail waren nicht mehr möglich.

Schuldfrage

War nun Microsoft schuld? Vielleicht, denn durch den Versand der Mails mit einer Domain, die nicht zum passenden Tenant gehört, wurde das Problem sichtbar. Allerdings könnte dieses generelle Problem nur gelöst werden, wenn Umleitungen generell unterbunden werden. Das ist aber utopisch und eine Basisfunktion jeden Mailsystems. Insofern besteht dieses Risiko nicht nur bei Exchange Online sondern bei jedem Mailhoster, der Umleitungen erlaubt. Hier helfen DKIM, DMARC und SRS nur in einigen Fällen.

Damit kommen wir aber zum eigentlichen Problem. Exchange Online hat Mails von einer IP-Adresse mit einer Mail mit einer Absenderddomain "ct.de" angekommen, die nicht legitimiert war. Hier kommt dann wieder der "?all" im SPF-Eintrag zum tragen. Es gibt hier mehrere Optionen von SPF mit Umleitungen

SPF Eintrag SPF Eintrag Beschreibung Ratsam

fehlt

keine

Ohne SPF-Eintrag gibt es auch kein "include:protection.outlook.com" und Gmail hätte kein SPF=PASS bekommen, sondern SPF=UNKNOWN. Also zumindest keine Bonuspunkte, die man durch manuelle Domainbestrafung für alle einliefernden IP-Adressen reduzieren muss

Nein, eigene Domain kann von Spammern missbraucht werden.

"...-all"

Fail

In dem Fall wäre die Mail vom Spammer an Exchange Online aufgrund des "SPF=FAIL" gar nicht erst angenommen worden

Ja

"... ~all"

SoftFail

Mails von Servern, die nicht explizit in der Allow-Liste eingetragen sind, "könnten" dennoch legitim sein. Der Empfänger sollte die Mails annehmen aber kennzeichnen.

Nicht ratsam

"... ?all"

Neutral

Wird bewertet, als wenn keine Richtlinie vorhanden wäre

Nicht ratsam

Übrigens. Die Domain "newletter.heise.de" hat ein "-all" während "heise.de" ein ?all hat (Stand 26. Sep 2023).

Ergebnis

Nur mit einem "-all" und einer Auflistung aller Mailserver, die mit ihrer Domain senden dürften, schützen Sie ihre Domäne gegen Missbrauch durch Spammer. In Verbindung mit Exchange Online und Umleitungen beliebiger Tenants ist dies sogar erforderlich, damit Empfänger nicht in die Irre geleitet werden. Sie können nämlich nicht so einfach unterscheiden, von welchem Tenant genau nun die Mail übertragen wurde.

Leider ist es aber auch eine Tatsache, dass ein "-all" in vielen aber nicht allen Fällen verhindert, dass ein Empfänger ihre Mail an ein weiteres externes Konto umleitet. Hier spielen zwar noch DMARC, DKIM und SRS eine Rolle aber gehen Sie davon aus, dass Umleitungen bei den Empfängern zu weiteren Konten bei einem "-all" gestört werden können. Das ist dann aber ein Problem beim Empfänger. Er könnte ja gleich die richtige Ziel-Adresse bei ihnen hinterlegen. Wenn er z.B. bei Migrationen die Hoheit über das weiterleitende System und das Zielsystem hat, dann kann er dort die Konfiguration entsprechend anpassen.

Weitere Links