Die Geister, die ich nicht rief - effektiver Schutz gegen Ghost Sender in Exchange Online
Exchange Online ist recht flexibel, was den Nachrichtenfluss angeht. Mails können beispielsweise von extern direkt an Exchange Online zugestellt oder über ein vorgeschaltetes Mail-Gateway geleitet werden. Letzteres ist in Unternehmen nicht unüblich.
Für Exchange Server wurde vielleicht früher eine Filterlösung eines Drittherstellers eingekauft und eingesetzt, da die in Exchange Server integrierten Möglichkeiten zwar nett, aber nicht ausreichend sind. Beim Wechsel auf Exchange Online wurde diese Lösung zunächst beibehalten, um hier keine zusätzliche Baustelle zu eröffnen. Grundsätzlich spricht auch nichts dagegen, weiter eine Drittlösung zu verwenden.
Allerdings kann dies in bestimmten Szenarien dazu führen, dass Exchange Online für Spoofing-Angriffe anfällig wird. Es handelt sich hierbei jedoch nicht um eine Sicherheitslücke in dem Sinne, sondern um ein Designproblem.
An dieser Stelle geht ein besonderer Dank an die Sicherheitsforscher von InfoGuard Labs, die dieses Problem und auch Lösungsansätze dazu gefunden und veröffentlicht haben! Weitere Informationen sind unter Ghost-Sender - Universal Email Spoofing against Exchange Online - InfoGuard Labs zu finden.
Glücklicherweise kann dies aus technischer Sicht recht einfach mitigiert werden. Und dieser Artikel zeigt, was Du dazu tun musst!
Wie kommen die Geister in die Maschine?
Exchange Online ist grundsätzlich wie jedes E-Mail-System so konfiguriert, dass es zunächst E-Mails von allen Absendern und Absendersystemen annimmt. Das ist erst einmal nicht ungewöhnlich. Allerdings bauen die Schutzmechanismen in Exchange Online darauf auf, dass Mails direkt - also ohne zwischengeschaltetes System - zugestellt werden.

Wird ein Drittherstellersystem eingesetzt, so verlässt sich Exchange Online im Grunde darauf, dass über das Drittsystem entsprechende Schutzmaßnahmen etabliert sind.
Für den Nachrichteneingang wird in Exchange Online hierfür ein Empfangsconnector eingerichtet, der Mails von diesem System annimmt. Allerdings kann es hier zu einer Fehlkonfiguration kommen, die dazu führt, dass Exchange Online auch weiterhin direkt zugestellte E-Mails annimmt.
In Exchange Online gibt es zwei Empfangsconnector-Typen:
- Ihre Organisation / OnPremises
- Partnerorganisation
Der Empfangsconnector "Ihre Organisation" erzwingt nicht die Ablehnung von Mails, die nicht von einem akzeptierten System kommen. Wenn dieser Typ zum Einsatz kommt, ist Exchange Online also grundsätzlich für diesen Angriff anfällig. Dieser Connector-Typ kommt jedoch sehr häufig zum Einsatz, da Drittsysteme oft im eigenen Rechenzentrum bereitgestellt werden und dieser Typ daher naheliegend erscheint. Selbst Drittanbieter verwenden typischerweise diesen Connector-Typ für ihre Einrichtungsassistenten.
Ein Angreifer kann so alle zwischengeschalteten Systeme umgehen und gefälschte Mails direkt an Exchange Online senden. Und das Fatale hierbei ist, dass die gängigen Schutzmechanismen wie SPF, DKIM und DMARC ebenfalls komplett umgangen werden, da Exchange Online die Mails ohne weitere Prüfung annimmt.
Die Geister wieder aus der Maschine bekommen
Microsoft sieht die Thematik aktuell nicht als Sicherheitsproblem an und wird daher nichts unternehmen. Dementsprechend müssen selbst Maßnahmen ergriffen werden, um sich gegen solche Angriffe zu schützen. Immerhin hat Microsoft hierfür mögliche Maßnahmen bereitgestellt:
- Einnen Connector des Typs "Partner" bereitstellen und so einschränken, dass Mails
- nur noch noch bestimmten IP-Adressen oder
- unter Verwendung eines bestimmten Zertifikats angenommen werden.
- Eine Transportregel erstellen, die eingehende Mails grundsätzlich blockiert, außer von bestimmten Absenderadressen.
Welche Möglichkeit die bessere ist, kommt auf die Gegebenheiten des Unternehmens an. Grundsätzlich erscheint ein Connector mit zertifikatsbasierter Einschränkung am Besten, da IP-Adressen Änderungen unterliegen und der Connector daher immer wieder geprüft und gepflegt werden muss.
Die folgenden Kapitel zeigen das Vorgehen einmal pro Variante. Zusätzlich kannst Du ein Skript aus meinem Skriptnest nutzen, um Deine Umgebung auf die Anfälligkeit zu prüfen und bei Bedarf Connectors anzulegen sowie direktes Senden zu deaktivieren.
Einrichtung eines Connectors
Über das Exchange Online Admin Center ist wie folgt vorzugehen:

- Exchange admin center aufrufen
- Auf "+ Connector hinzufügen" klicken
- "Verbindung von: Partnerorganisation"
- Sprechenden Namen vergeben und nach Bedarf Beschreibung hinzufügen, Haken bei "Aktivieren" entfernen
- Unter "Gesendete E-Mail wird authentifiziert" die Option "Durch Überprüfung, ob die Absenderdomäne mit einer der folgenden Domänen übereinstimmt" auswählen und einen * hinzufügen (= alle Absenderdomänen)
- Unter "Sicherheitseinschränkungen"...
- ...den Haken für "E-Mails zurückweisen, wenn sie nicht über TLS gesendet werden" belassen und
- ...den Haken bei "E-Mails zurückweisen, wenn sie nicht aus diesem IP-Adressbereich gesendet werden" aktivieren und die Quell-IP-Adresse(n) hinzufügen, von der/denen Mails angenommen werden sollen
- ACHTUNG: sollen IP-Adressen hinterlegt werden, akzeptiert der Assistent maximal /24-Netze. Wenn ein Anbieter größere Netze verwendet (z.B. /19, /21, usw.), so sind diese entsprechend in /24er-Netze aufzuteilen.
- "Connector erstellen"
Über PowerShell ist wie folgt vorzugehen:
# Check if module is installed and install for current user, if not
if (!(Get-InstalledModule ExchangeOnlineManagement -ErrorAction SilentlyContinue))
{
Write-Host 'Module "ExchangeOnlineManagement" not installed, installing for current user...' -ForegroundColor Yellow
Install-Module ExchangeOnlineManagement -Scope CurrentUser -Confirm:$False
}
# Connect to Exchange Online
Write-Host ''
Write-Host 'Connecting to Exchange Online...' -ForegroundColor Yellow
Connect-ExchangeOnline -ShowBanner:$False
# Create partner connector
New-InboundConnector -Name <Beliebiger Connector-Name> -Enabled $False -ConnectorType 'Partner' -SenderIPAddresses <Komma-getrennte Liste der erlaubten Absender-Adressen> -SenderDomains '*' -RequireTls $True -RestrictDomainsToIPAddresses $TruePowerShellEinrichtung einer Transportregel
Alternativ kann auch eine Transportregel eingerichtet werden, die nach dem gleichen Prinzip verfährt (Mails nur von bestimmten Absenderadressen annehmen). Hierzu ist wie folgt vorzugehen:

- Exchange Online Admin Center aufrufen: Exchange admin center
- "+ Eine Regel hinzufügen" auswählen und aus der Liste "Eine Regel erstellen" auswählen
- Sprechenden Namen vergeben
- "Diese Regel anwenden, wenn: Auf alle Nachrichten anwenden"
- "Gehen Sie wie folgt vor: Nachricht umleiten an / Gehostete Quarantäne"
- Außer wenn: Der Absender / IP liegt in einem dieser Bereiche oder stimmt genau überein mit", hier die erlaubten IP-Adressen hinterlegen
- Rechts neben "Außer wenn" auf das + klicken
- "Oder: Die Nachrichtenköpfe / Enthält mindestens eines dieser Wörter"
- Auf "Enter text" klicken und die Bezeichnung X-MS-Exchange-Organization-AuthAs hinzufügen
- Auf "Enter words" klicken und den Text Internal hinzufügen
- "Weiter", "Fertigstellen"
Über PowerShell ist wie folgt vorzugehen:
# Check if module is installed and install for current user, if not
if (!(Get-InstalledModule ExchangeOnlineManagement -ErrorAction SilentlyContinue))
{
Write-Host 'Module "ExchangeOnlineManagement" not installed, installing for current user...' -ForegroundColor Yellow
Install-Module ExchangeOnlineManagement -Scope CurrentUser -Confirm:$False
}
# Connect to Exchange Online
Write-Host ''
Write-Host 'Connecting to Exchange Online...' -ForegroundColor Yellow
Connect-ExchangeOnline -ShowBanner:$False
# Create transport rule
New-TransportRule -Name "<Sprechenden Namen vergeben>" -Quarantine $true -ExceptIfHeaderContainsMessageHeader 'X-MS-Exchange-Organization-AuthAs' -ExceptIfHeaderContainsWords 'Internal' –ExceptIfSenderIpRanges "<Freigegebene IP-Adressen>" -StopRuleProcessing $true -Priority 0 PowerShellAnpassung vorhandener Connectors
Es muss nicht in jedem Fall ein neuer Connector angelegt werden. Unter Umständen können vorhandene Connectors einfach angepasst werden. Dies ist jedoch nur dann möglich, wenn der Connector bereits den Typ "Partner" verwendet. Eine Konvertierung eines Connectors in den Typ "Partner" ist nicht möglich. Connectors des Typs "OnPremises" müssen also neu erstellt werden.
Der Typ "Partner" ist zwingend erforderlich, da nur hier Mails abgelehnt werden, die nicht den Einschränkungen entsprechen.

- Exchange admin center aufrufen
- Anzupassenden Connector auswählen
- Im Flyout-Menü auf den blauen Link "Identitäten von gesendeten Mails bearbeiten" klicken
- Die Option "Durch Überprüfung, ob die Absenderdomäne mit einer der folgenden Domänen übereinstimmt" auswählen und einen * hinzufügen (= alle Absenderdomänen), "Speichern"
- Im Flyout-Menü auf den blauen Link "Einschränkungen bearbeiten" klicken
- Option "Nachrichten ablehnen, wenn sie nicht aus diesen IP-Adressbereichen stammen:" aktivieren und Liste der freigegebenen IP-Adressen einpflegen, "Speichern"
Über PowerShell ist wie folgt vorzugehen:
# Check if module is installed and install for current user, if not
if (!(Get-InstalledModule ExchangeOnlineManagement -ErrorAction SilentlyContinue))
{
Write-Host 'Module "ExchangeOnlineManagement" not installed, installing for current user...' -ForegroundColor Yellow
Install-Module ExchangeOnlineManagement -Scope CurrentUser -Confirm:$False
}
# Connect to Exchange Online
Write-Host ''
Write-Host 'Connecting to Exchange Online...' -ForegroundColor Yellow
Connect-ExchangeOnline -ShowBanner:$False
# Modify partner connector
Set-InboundConnector -Name <Connector-Name> -SenderIPAddresses <Komma-getrennte Liste der erlaubten Absender-Adressen> -SenderDomains '*' -RequireTls $True -RestrictDomainsToIPAddresses $TruePowerShellUnd was ist mit dem direkten Senden?
Direktes Senden ist eine Funktion, die einen E-Mail-Versand von beliebigen Absenderadressen der eigenen Domänen aus über einen speziellen SMTP-Endpunkt erlaubt. Es wurde ursprünglich als Alternative für Systeme konzipiert, die sich gegenüber Exchange Online nicht authentifizieren können (beispielsweise, weil sie keine Authentifizierung unterstützen oder OAuth nicht beherrschen).
Im Jahr 2025 wurde festgestellt, dass sich Angreifer diese Funktion zunutze machen, um gefälschte Mails an interne Empfänger zu senden. Hierzu mussten die Angreifer lediglich herausfinden, welche akzeptierten Domänen in der Umgebung vorhanden sind.
Diese Funktion lässt sich seitdem vollständig deaktivieren. Dies entspricht auch der gängigen Empfehlung. Falls ein Unternehmen die Funktion trotzdem noch einsetzen muss, kann der Empfang ähnlich wie bei der Ghost Sender-Problematik zumindest auf bestimmte IP-Adressen eingeschränkt werden. Hierfür kann wie oben gezeigt eine Transportregel angelegt werden.
Hat Dir dieser Artikel gefallen? Lass es andere wissen!

