24. April 2024

Exchange SMTP Header Informationen verstecken

Wenn wir heute eine Postkarte oder einen Brief erhalten, hat die Nachricht bereits vom Absender bis zum Empfänger mehrere Zwischen-Stellen durchlaufen bis sie letztendlich in den Briefkasten landet. Genauso verhält es sich bei einer E-Mail. Wenn eine E-Mail aus dem Internet in ein Postfach zugestellt wird, hat diese ebenfalls eine Reise durch verschiedene Internet-Knoten hinter sich gebracht.

Im Gegensatz zum Brief lässt sich der Weg (Hops) der E-Mail verfolgen. Diese Informationen werden in den Headerteil der E-Mail hinterlegt und können durch SMTP Header Analyser in lesbarer Form dargestellt werden. Neben den Informationen, welche Internet-Knoten bzw. E-Mail Systeme passiert wurden, werden auch Informationen der E-Mail Systeme wie z.B. Hostname und IP Adresse angezeigt. Sendet ein Exchange-Server also eine Nachricht nach extern werden die internen Informationen automatisch in den Headerteil gepackt, die wiederum vom Empfänger ausgelesen werden können.

Grundsätzlich ist hier dran nichts auszusetzen, denn die Informationen sind bei einer Analyse sehr nützlich. Möchte man jedoch die internen Informationen des Exchange Servers verbergen – kann dies in wenigen Schritten erledigt werden.

Schauen wir uns zunächst die Header-Informationen für einen GMAIL-Empfänger an:

Um den Inhalt in leserlicher Form darzustellen verwende ich den Header Analyser von mxtoolbox:
https://mxtoolbox.com/Public/Tools/EmailHeaders.aspx

Der gesamte Header wird hier in einzelne Abschnitt unterteilt:

Die Relay-Informationen geben den Weg (Internet-Knoten) von der Quelle bis zum Ziel an:

An diesem Beispiel erkennt man nun, dass neben den Hostnamen auch die IP Adresse des Exchange Servers angezeigt wird. Hier muss ich aber kurz anmerken, dass mein Exchange Server via VPS bereitgestellt wird und daher eine Public IP hat. Prinzipiell möchte ich jedoch aufzeigen, dass diese Informationen übermittelt werden.

Wie kann ich diese Informationen nun verbergen?

Hierzu gibt man folgende PowerShell Commandlets in der Exhange Management Shell ein:

In meinem Fall schauen wir uns erst einmal den Outbound-SendConnector “Internet” erst einmal an:

Get-SendConnector "Internet"

Anschließend geben wir folgendes ein, um die Header-Routing-Informationen zu entfernen:

Get-SendConnector "Internet" | Remove-ADPermission -User "NT AUTHORITY\ANONYMOUS LOGON" -ExtendedRights ms-Exch-Send-Headers-Routing

Wie sieht nun die Nachricht beim Empfänger aus?

An den Routing-Informationen werden keine Exchange Informationen bereitgestellt. In meinem Beispiel übergibt Exchange seine Nachricht an seinen Smarthost. Die Exchange-Informationen durch die Smarthost-Informationen ersetzt.

Wie bereits oben erwähnt, sollte man bedenken, dass die nachträgliche Analyse in Problemfällen erschwert wird.

Wie kann ich die Informationen wieder anzeigen lassen?

Get-SendConnector "Internet" | Add-ADPermission -User "NT AUTHORITY\ANONYMOUS LOGON" -ExtendedRights ms-Exch-Send-Headers-Routing

 

0 0 votes
Article Rating
Abonnieren
Benachrichtige mich bei
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x