AutoReply
Kennen Sie die netten Dienste, die auf ihre Mail mit einer automatische Antwort reagieren und den Eingang der Mail bestätigen. Das ist nicht ohne Risiko und nicht alle Fälle kann Exchange erkennen und heilen
Szenarien
In allen Fällen geht es darum, dass ein System oder Software automatisch auf eine eingehende Mail reagiert, indem sie darauf eine weitere Mail generiert. Dabei unterscheide ich drei Fälle
- Systemantwort an den Absender
Darunter fallen Unzustellbarkeitsmeldungen und Zustellquittungen. Sie zeichnen sich dadurch aus, dass der Absender "leer" ist (MAIL FROM:<>") und daher darauf nicht wieder eine Antwort gesendet werden kann. Dies unterbricht meist zuverlässig eine Schleife aber sie belegen dennoch Ressourcen. - Antwort an den Absender
Wenn Sie z.B. eine Out of Office - Abwesenheitsassistent-Meldung einrichten, dann bekommen die Absender eine Mail unter ihrem Namen. Hier stellt sich dann schon die Frage, wie eine Schleife verhindert wird, wenn beide Partner eine OOF-Meldung hinterlegt haben. Also Teilnehmer1 sendet eine Mail an Teilnehmer2 und geht dann in Urlaub und aktiviert seine OOF1-Meldung. Teilnehmer2 ist schon in Urlaub und sendet seine OOF2-Meldung, die vom Mailserver des Teilnehmer1 wieder beantwortet wird. - Weiterleitung/Umleitung
Mails können durch Anwender mittels Regeln an andere Postfächer gesendet werden. Dort könnte es aber auch wieder eine Weiterleitungen an ein Postfach geben und im schlimmsten Fall eine Schleife entstehen. Es macht dann schon einen Unterschied, ob die Mail in dem Fall neu erstellt oder einfach umgeleitet wird.
In allen Fällen kann es passieren, das eine Mails von A->B letztlich wieder bei A ankommt und beide Endpunkten die ein oder andere automatische Verarbeitung aktiviert haben.
Risiko - vorhanden
Solche Loops können sehr schnell beide Server belasten und im Extremfall die Funktion zum Erliegen bringen. Ich erinnere ich an einen Fall, bei dem ein Mitarbeiter auf damals Exchange 5.5 eine Weiterleitung zu seinem T-Online-Konto eingerichtet hat. Das war noch vor dem Jahr 2000 und die Firma hat keinen externen Zugriff per OWA eingerichtet und an Smartphones mit ActiveSync hat damals noch niemand gedacht. Damit der Mitarbeiter seine Mails also zuhause lesen konnte, hat er die Firmenmails einfach weitergeleitet und über den damaligen T-Online-Client gelesen.
Es war aber eine Weiterleitung und keine Umleitung, so das bei T-Online die Mail mit der Firmenadresse als Absender angekommen ist. Das war für den Anwender dann nicht so schön zu lesen aber das hat ihn nicht gestört.
Das gibt solange gut, bis der Mitarbeiter in den wohlverdienten Urlaub gegangen ist und pflichtbewusst auch in T-Online eine "Abwesenheitsmeldung" hinterlegt hat. Damals hat T-Online diese Mails aber nicht als "Systemnachricht" mit einem leeren Absender versendet, sondern eine neue Mail mit der T-Online-Adresse als Absender auf die Reise gesendet. Die Mail landete wieder beim Firmenpostfach, wurde weitergeleitet und hat erneut eine OOF-Meldung generiert und so fort. Es hat wenige Stunden gedauert, bis das Postfach voll und die Festplatte des Exchange Servers ebenfalls voll war.
So etwas möchten Sie sicher nicht erleben. Hier sind aber auch einige Dinge zusammen gekommen, die das Problem auch möglich gemacht haben.
Gegenmaßnahmen
Speziell Exchange aber auch andere Mailserver haben durchaus Einstellungen, die solche Fehler verhindern oder zumindest einschränken.
- AcceptedDomain
Zuerst sollten sie all ihre eigenen Domains auf "Authoritative" stellen, damit Mails an unbekannte Empfänger nicht wieder in Schleifen ins Internet und wieder zurück übertragen werden, bis ein Hop-Count die Mail blockiert. - Remote Domain
Ob eine OOF-Meldung oder automatische Weiterleitung überhaupt erlaubt ist, können Sie in Exchange serverseitig über die "RemoteDomain" konfigurieren. Ich würde dazu raten, dass zumindest die Weiterleitungen als Standard "deaktiviert" sind und sie als Administrator eine Allow-Liste der Domains pflegen. - Anzahl der Received-By-Zeile
Ähnlich wie bei TCP/IP-Paketen, bei denen jeder Router den Time-To-Live (TTL) herunter zählt, addieren Mailserver ihre Verarbeitung als "Received-By"-Zeile und zählten die Anzahl der "Received-By"-Zeilen. Wenn es zu viele Zeilen gibt, ist das ein Zeichen für sehr ineffektives Routing oder eine Schleife, die unterbrechen werden sollte. Das funktioniert natürlich nur, wenn auch Spamfilter und Firewalls diese Zeilen in der Mail belassen und nicht aus falsch verstandener "Security by Obscurity"-Überlegungen entfernen. - OOF-Intelligenz
Wenn Sie ein Exchange eine "Abwesenheitsmeldung" einstellen, dann sendet Exchange immer nur genau eine OOF-Meldung an den jeweiligen Absender. Dazu merkt sich Exchange die Absender-Adresse als Hashwert im Postfach des Benutzers. Erst wenn Sie ihre OOF-Regel wieder abschalten, wird diese Tabelle geleert, so dass bei einer erneuten Aktivierung das Spiel wieder von vorne anfängt. - Mailbox Größen Limit
Sowohl Exchange Online als auch Exchange OnPremises können Postfächer in der Größe limitieren. Wenn alle anderen Schutzmechanismen versagen, ist das eine harte Grenze, um ein Volllaufen des Servers zu verhindern. Oft sind die Freigrenzen aber so hoch, dass bis dahin schon viele Gigabytes und Tausende, wenn nicht Millionen Mails übertragen wurden. Es sei denn Sie nutzen Skripte wie Dynamische Quota-Einstellungen, die das Limit künstlich niedrig halten, so dass ein Postfach innerhalb eines Tages nur begrenzt wachsen kann -
Exchange Online External Recipient Rate (ERR) Limit
In Exchange Online, aber nicht OnPremises, gibt es noch Limits für den Versand an externe Empfänger. Das sind zwar ein paar Tausend Mails pro Stunde aber eine natürliche Drossel, bis andere Mechanismen schützen. Siehe auch xchange Online Message Rate Grenzen -
TERRL - Tenant External Recipient Rate Limit
Ich hoffe, dass Sie diese Limit nie erreichen, wenn es ist schon sehr hoch angesetzt. - Spam-Filter
Viele Produkte, z.B. auch NoSpamProxy führen Buch über die Anzahl der pro Benutzer gesendete und empfangenen Mails und können auch hier "Überlast" oder Missbrauch erkennen. Das ist durchaus wichtig, um z.B. Ausleiten von Informationen über Mails zu erschweren. -
Duplicate Message-ID
Exchange hat eine eingebaute Funktion, um Duplikate zu erkennen. Das ist hilfreich, wenn ihnen jemand eine Mail über einen Verteiler und noch einmal direkt sendet, oder eine Übertragung unterbrochen wurde und sie die Mail ggfls. doppelt bekommen würden. Es ist nicht sehr wahrscheinlich aber durchaus mögich, dass Exchange immer wiederkommende Mails als Dublette erkennt und unterdrückt. Ein echter Schutz gegen Loops ist es aber nicht, - "Precedence"-Header
In der "RFC3834 Recommendations for Automatic Responses to Electronic Mail” wird beschrieben wie ein Absender seine Mail klassifizieren kann, so dass Regeln unterschiedlich ausgeführt werden. Eine Mail ohne den Header Precedence wird regulär zugestellt. Wenn der Absender aber z.B. ein "Precedence: Bulk" oder "Precedence:list” setzt, dann könnte dies für das Zielsystem das Signal sein, keine Regeln anzuwenden. Eine RFC ist aber nur eine Empfehlung und keine Vorgabe. Wobei viele Produkte sich daran halten.
Die RFC gibt noch einige weitere Empfehlungen, wann ein Agent keine automatische Mail erstellen sollte, z.B. beim Spam, Gefährliche Anlagen, Der Empfänger nicht "sichtbar ist (z.B. BCC), die "Return-Path" leer ist oder ein Urlaubsprogramm erst vor kurzem eine Mail gesendet hat
All diese Möglichkeiten reduzieren das Risiko, dass Mail-Loops entstehen aber verhindert diese nicht vollumfänglich. Es gibt ja auch durchaus Lösungen, die eine automatische Antwort erforderlich machen. Zwar sinkt in Zeiten von Teams, WhatsApp und Chat-Agenten auf Webseiten die Bedeutung von Mails aber es gibt immer noch Lösungen, bei denen per Mail auch aktiv Daten übertragen, vom Ziel verarbeitet und quittiert werden.
Hier ist dann natürlich die Software gefragt, welche die eingehenden Mails automatisiert liest, verarbeitet und beantwortet. Das gilt nicht nur für einfache Weiterleitungsregeln oder OOF-Meldungen. Zukünftig werden wir auch den ein oder anderen Bot sehen, der für den Anwender schon Mails vorbereitet oder sogar vollautomatisch beantwortet.
Intelligentes AutoReply
Exchange und Outlook kennen nur die OOF-Meldung und die Posteingangsregeln. Die OOF-Einstellungen sind ziemlich robust gegen Loops, da sie auf jeden Absender immer nur genau eine Rückmeldung senden. Anders sieht es natürlich mit Posteingangsregeln aus, die durchaus Schadpotential haben, wenn sie als Administrator solche Weiterleitungen nach extern zulassen. Von dem Schadpotential eines Administrators, der mit dem Feld TargetAddress unvernünftig umgeht, sprechen wir gar nicht erst.
Wenn Sie daher für Adressen wie "rechnung@", "support@", "info@", "Kontakt@" und andere eine intelligentere Lösung suchen, dann sollten eine ERM/CRM-Software oder eigene Lösung entwickeln, die ihren Anforderungen entspricht.
Vergessen Sie dabei nicht, dass auch Absenderadressen gefälscht sein können. Ich würde auf eine eingehende Mail nur dann automatisch antworten, wenn die Absenderdomain z.B. per "SPF=-ALL" oder DKIM gesichert ist. Ansonsten könnte ihr Service sehr schnell für Missbrauch analog zu NDR Spamming genutzt werden.
Sie können mich gerne ansprechen, wenn sie spezielle Anforderungen haben.
Weitere Links
- Out of Office - Abwesenheitsassistent
- Regeln
- Weiterleitungen
- NDR Spamming
- Dynamische Quota-Einstellungen
- TERRL - Tenant External Recipient Rate Limit
- Limit Enforcement System
- Exchange Online External Recipient Rate (ERR) Limit
- Exchange Online Message Rate Grenzen
- Duplicate Message-ID
-
Get-ForwardingRules
Bericht über Regel mit Weiterleitungen/Umleitungen erstellen - RFC3834 Recommendations for Automatic Responses to Electronic Mail
https://datatracker.ietf.org/doc/html/rfc3834 - "554 5.4.14 Hop count exceeded - possible mail loop" NDR for outgoing email
that's sent to an on-premises application in Exchange Server
https://learn.microsoft.com/en-us/exchange/troubleshoot/mailflow/hop-count-exceeded-possible-mail-loop - Understanding the “Precedence:” Header
https://www.validity.com/blog/understanding-the-precedence-header/