Exchange 2003 Relay bzw. SMTP Missbrauch
Exchange als direkter Mailserver, feste IP, extern erreichbar, Viren und Spam geschützt, Standard SMPT Konfiguration nur authentifizierte Benutzer / lokales Netz dürfen relayen.
Hallo Zusammen
Ich bin noch neu in der Exchangewelt, habe mich aber nach Rund 2 Wochen Doku einigermassen durch die Konfigurationswelt geschleust und verstehe auch wie Exchange handelt bim senden und empfangen über smtp.
Und gerade hier stelle ich mir die Frage ob es keine Möglichkeit gibt wie bei anderen Mailserver eingehende SMTP anfragen standardmässig vor eine Authentifizierung zu stellen. Der Server nimmt nämlich in der momentanen Konfiguration im ersten schritt erstmal alle Anfragen an und checkt dann VON WEM (MAIL FROM) die Mail ist und AN WEN (RCPT TO) sie geht und wirft dann fröhlich ein Sender OK aus und merkt dann dass das MAIL FROM nicht von der zugelassenen Domäne ist! Es ist demnach kein offenes Relay aber ich komm gleich auf meine Probleme zurück nachdem man sich hier mal ein beispiel von abuse.net anschauen kann:
Connecting to X.X.X.X for anonymous test ...
220 domain.de Microsoft ESMTP MAIL Service, Version: 6.0.3790.3959 ready at Tue, 15 Jul 2008 15:29:49 +0200
HELO www.abuse.net
250 domain.de Hello [X.X.X.X]
Relay test 1
RSET
250 2.0.0 Resetting
MAIL FROM:<spamtest@abuse.net>
250 2.1.0 spamtest@abuse.net....Sender OK
RCPT TO:<securitytest@abuse.net>
550 5.7.1 Unable to relay for securitytest@abuse.net
Relay test 2
RSET
250 2.0.0 Resetting
MAIL FROM:<spamtest>
250 2.1.0 spamtest@domain.de....Sender OK
RCPT TO:<securitytest@abuse.net>
550 5.7.1 Unable to relay for securitytest@abuse.net
Relay test 3
RSET
250 2.0.0 Resetting
MAIL FROM:<>
250 2.1.0 <>....Sender OK
RCPT TO:<securitytest@abuse.net>
550 5.7.1 Unable to relay for securitytest@abuse.net
Relay test 4
RSET
250 2.0.0 Resetting
MAIL FROM:<spamtest@[X.X.X.X]
250 2.1.0 spamtest@[X.X.X.X]....Sender OK
RCPT TO:<securitytest@abuse.net>
550 5.7.1 Unable to relay for securitytest@abuse.net
Relay test 5
RESET
250 2.0.0 Resetting
MAIL FROM:<spamtest@mail.domain.de>
250 2.1.0 spamtest@mail.domain.de....Sender OK
RCPT TO:<securitytest@abuse.net>
550 5.7.1 Unable to relay for securitytest@abuse.net
Relay test 6
RSET
250 2.0.0 Resetting
MAIL FROM:<spamtest@[X.X.X.X]>
250 2.1.0 spamtest@[X.X.X.X]....Sender OK
RCPT TO:<securitytest%abuse.net@[X.X.X.X]>
550 5.7.1 Unable to relay for securitytest%abuse.net@[X.X.X.X]
Relay test 7
RSET
250 2.0.0 Resetting
MAIL FROM:<spamtest@[X.X.X.X]>
250 2.1.0 spamtest@[X.X.X.X]....Sender OK
RCPT TO:<securitytest%abuse.net@mail.domain.de>
550 5.7.1 Unable to relay for securitytest%abuse.net@mail.domain.de
Relay test 8
RSET
250 2.0.0 Resetting
MAIL FROM:<spamtest@[X.X.X.X]>
250 2.1.0 spamtest@[X.X.X.X]....Sender OK
RCPT TO:<"securitytest@abuse.net">
250 2.1.5 "securitytest@abuse.net"@domain.de
Beim Test8 erschreckt mich das Spammer sozusagen ohne Probleme in die Domain von uns Spammen könnten wenn ich den Mailserver in live Betrieb nehme! Sie müssen lediglich einen richtigen Benutzer wie z.B. "richtiger.benutzer@domain.de" im MAIL FROM und RCPT TO angeben und zack, die mail wird übermittelt. Ich hab das ganze per telnet direkt auf port 25 getestet und tatsache, er übermittelt die mails!
Auf dem Mailserver muss beim relayen von externen hosts eine Authetifizierung zuvor erfolgen, wenn aber extern keine Anonymen Anfragen angenommen werden, kann der Exchange keine Mails mehr von extern (Internet) empfangen. Wenn ich mich jetzt irre müsste ich in der Konfiguration einen großen Fehler gemacht haben...Meine Konfigurationen ähneln denen hier: http://www.msxfaq.com/internet/relay2000.htm
Hier mal ein Mailserver (Postfix) mit richtiger Authentifizierung, der egal bei welchem von den 18 Tests genau richtig reagiert mit 554 5.7.1 <securitytest@abuse.net>: Relay access denied
Mail relay testing
Connecting to perfect.de for anonymous test ...
220 perfect.de ESMTP Postfix
HELO www.abuse.net
250 perfect.de
Relay test 1
RSET
250 2.0.0 Ok
MAIL FROM:<spamtest@abuse.net>
250 2.1.0 Ok
RCPT TO:<securitytest@abuse.net>
554 5.7.1 <securitytest@abuse.net>: Relay access denied
Relay test 2
RSET
250 2.0.0 Ok
MAIL FROM:<spamtest>
250 2.1.0 Ok
RCPT TO:<securitytest@abuse.net>
554 5.7.1 <securitytest@abuse.net>: Relay access denied
All tests performed, no relays accepted.
Danke & Gruß
fz
Hallo Zusammen
Ich bin noch neu in der Exchangewelt, habe mich aber nach Rund 2 Wochen Doku einigermassen durch die Konfigurationswelt geschleust und verstehe auch wie Exchange handelt bim senden und empfangen über smtp.
Und gerade hier stelle ich mir die Frage ob es keine Möglichkeit gibt wie bei anderen Mailserver eingehende SMTP anfragen standardmässig vor eine Authentifizierung zu stellen. Der Server nimmt nämlich in der momentanen Konfiguration im ersten schritt erstmal alle Anfragen an und checkt dann VON WEM (MAIL FROM) die Mail ist und AN WEN (RCPT TO) sie geht und wirft dann fröhlich ein Sender OK aus und merkt dann dass das MAIL FROM nicht von der zugelassenen Domäne ist! Es ist demnach kein offenes Relay aber ich komm gleich auf meine Probleme zurück nachdem man sich hier mal ein beispiel von abuse.net anschauen kann:
Connecting to X.X.X.X for anonymous test ...
220 domain.de Microsoft ESMTP MAIL Service, Version: 6.0.3790.3959 ready at Tue, 15 Jul 2008 15:29:49 +0200
HELO www.abuse.net
250 domain.de Hello [X.X.X.X]
Relay test 1
RSET
250 2.0.0 Resetting
MAIL FROM:<spamtest@abuse.net>
250 2.1.0 spamtest@abuse.net....Sender OK
RCPT TO:<securitytest@abuse.net>
550 5.7.1 Unable to relay for securitytest@abuse.net
Relay test 2
RSET
250 2.0.0 Resetting
MAIL FROM:<spamtest>
250 2.1.0 spamtest@domain.de....Sender OK
RCPT TO:<securitytest@abuse.net>
550 5.7.1 Unable to relay for securitytest@abuse.net
Relay test 3
RSET
250 2.0.0 Resetting
MAIL FROM:<>
250 2.1.0 <>....Sender OK
RCPT TO:<securitytest@abuse.net>
550 5.7.1 Unable to relay for securitytest@abuse.net
Relay test 4
RSET
250 2.0.0 Resetting
MAIL FROM:<spamtest@[X.X.X.X]
250 2.1.0 spamtest@[X.X.X.X]....Sender OK
RCPT TO:<securitytest@abuse.net>
550 5.7.1 Unable to relay for securitytest@abuse.net
Relay test 5
RESET
250 2.0.0 Resetting
MAIL FROM:<spamtest@mail.domain.de>
250 2.1.0 spamtest@mail.domain.de....Sender OK
RCPT TO:<securitytest@abuse.net>
550 5.7.1 Unable to relay for securitytest@abuse.net
Relay test 6
RSET
250 2.0.0 Resetting
MAIL FROM:<spamtest@[X.X.X.X]>
250 2.1.0 spamtest@[X.X.X.X]....Sender OK
RCPT TO:<securitytest%abuse.net@[X.X.X.X]>
550 5.7.1 Unable to relay for securitytest%abuse.net@[X.X.X.X]
Relay test 7
RSET
250 2.0.0 Resetting
MAIL FROM:<spamtest@[X.X.X.X]>
250 2.1.0 spamtest@[X.X.X.X]....Sender OK
RCPT TO:<securitytest%abuse.net@mail.domain.de>
550 5.7.1 Unable to relay for securitytest%abuse.net@mail.domain.de
Relay test 8
RSET
250 2.0.0 Resetting
MAIL FROM:<spamtest@[X.X.X.X]>
250 2.1.0 spamtest@[X.X.X.X]....Sender OK
RCPT TO:<"securitytest@abuse.net">
250 2.1.5 "securitytest@abuse.net"@domain.de
Beim Test8 erschreckt mich das Spammer sozusagen ohne Probleme in die Domain von uns Spammen könnten wenn ich den Mailserver in live Betrieb nehme! Sie müssen lediglich einen richtigen Benutzer wie z.B. "richtiger.benutzer@domain.de" im MAIL FROM und RCPT TO angeben und zack, die mail wird übermittelt. Ich hab das ganze per telnet direkt auf port 25 getestet und tatsache, er übermittelt die mails!
Auf dem Mailserver muss beim relayen von externen hosts eine Authetifizierung zuvor erfolgen, wenn aber extern keine Anonymen Anfragen angenommen werden, kann der Exchange keine Mails mehr von extern (Internet) empfangen. Wenn ich mich jetzt irre müsste ich in der Konfiguration einen großen Fehler gemacht haben...Meine Konfigurationen ähneln denen hier: http://www.msxfaq.com/internet/relay2000.htm
Hier mal ein Mailserver (Postfix) mit richtiger Authentifizierung, der egal bei welchem von den 18 Tests genau richtig reagiert mit 554 5.7.1 <securitytest@abuse.net>: Relay access denied
Mail relay testing
Connecting to perfect.de for anonymous test ...
220 perfect.de ESMTP Postfix
HELO www.abuse.net
250 perfect.de
Relay test 1
RSET
250 2.0.0 Ok
MAIL FROM:<spamtest@abuse.net>
250 2.1.0 Ok
RCPT TO:<securitytest@abuse.net>
554 5.7.1 <securitytest@abuse.net>: Relay access denied
Relay test 2
RSET
250 2.0.0 Ok
MAIL FROM:<spamtest>
250 2.1.0 Ok
RCPT TO:<securitytest@abuse.net>
554 5.7.1 <securitytest@abuse.net>: Relay access denied
All tests performed, no relays accepted.
Danke & Gruß
fz
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 92082
Url: https://administrator.de/contentid/92082
Ausgedruckt am: 16.11.2024 um 05:11 Uhr
7 Kommentare
Neuester Kommentar
Hallo.
Ich kenne keinen Mailserver, der dies für die Zustelllung von Nachrichten verlangt (Relaying ist natürlich etwas anderes). Überlege einmal, wie sollte ich dir dann eine E-Mail senden?
Richtig, das Verhalten ist auch hier beschrieben - http://support.microsoft.com/kb/304897/en-us. - Grund dafür ist, das es dann Brute Force Attacken auf gültige Adressen nicht durchgeführt werden können.
Der Exchange ändert aber sein Verhalten, wenn der Empfängerfilter aktiviert ist. Aktiviere diesen, und es wird bei einem nicht vorhandenen Empfänger die SMTP Verbindung mit "no such User here" abgebrochen - http://www.sbspraxis.de/exchange/ex03010/ex03010.html
Wichtig ist aber hier, dass auf jeden Fall Windows 2003 SP2 installiert ist. Bei diesem ist "Tarpitting" aktiviert, das wiederum Brute Force Attacken verhindert.
LG Günther
Und gerade hier stelle ich mir die Frage ob es keine Möglichkeit gibt wie bei anderen Mailserver eingehende SMTP anfragen standardmässig vor eine Authentifizierung zu stellen.
Ich kenne keinen Mailserver, der dies für die Zustelllung von Nachrichten verlangt (Relaying ist natürlich etwas anderes). Überlege einmal, wie sollte ich dir dann eine E-Mail senden?
Der Server nimmt nämlich in der momentanen Konfiguration im ersten schritt erstmal alle Anfragen
Richtig, das Verhalten ist auch hier beschrieben - http://support.microsoft.com/kb/304897/en-us. - Grund dafür ist, das es dann Brute Force Attacken auf gültige Adressen nicht durchgeführt werden können.
Der Exchange ändert aber sein Verhalten, wenn der Empfängerfilter aktiviert ist. Aktiviere diesen, und es wird bei einem nicht vorhandenen Empfänger die SMTP Verbindung mit "no such User here" abgebrochen - http://www.sbspraxis.de/exchange/ex03010/ex03010.html
Wichtig ist aber hier, dass auf jeden Fall Windows 2003 SP2 installiert ist. Bei diesem ist "Tarpitting" aktiviert, das wiederum Brute Force Attacken verhindert.
LG Günther
Hallo.
Das ist auch per default so. Hast du das von extern (also nicht vom internen LAN) aus getestet.
Überprüfe im ESM (Exchange System Manager) die Einstellungen des virtuellen SMTP -> Register Zugriff -> Relaying. Wenn du auch den internen PCs das Relaying verbieten willst (was durchaus sinnvoll ist), dann deaktiviere die Checkbox "Jeder Computer der erfolgreich authentifiziert ist..." und trage in der Liste der Computer die ein, die über den SMTP des Exchange versenden dürfen. Damit sich nun die Benutzer über die NT-Authentifizierung des Relayingrecht erschleichen können, kannst du dies auch noch "Authentifizierung" -> Benutzer sehr genau steuern.
LG Günther
Alles was funktionieren soll ist eine Authentifizierung wenn von extern jemand Mails über den Server versenden will per SMTP
Das ist auch per default so. Hast du das von extern (also nicht vom internen LAN) aus getestet.
Überprüfe im ESM (Exchange System Manager) die Einstellungen des virtuellen SMTP -> Register Zugriff -> Relaying. Wenn du auch den internen PCs das Relaying verbieten willst (was durchaus sinnvoll ist), dann deaktiviere die Checkbox "Jeder Computer der erfolgreich authentifiziert ist..." und trage in der Liste der Computer die ein, die über den SMTP des Exchange versenden dürfen. Damit sich nun die Benutzer über die NT-Authentifizierung des Relayingrecht erschleichen können, kannst du dies auch noch "Authentifizierung" -> Benutzer sehr genau steuern.
LG Günther
Hallo.
Das ist bei einem Mailserver normal. Deshalb landen ja auch die von dir angesprochenen SPAMs bei dir. Für den Mailserver ist das ein User auf der Domäne, der einem anderen User in der Domäne ein Mail schickt. Der Exchange unterscheidet hier nicht, ob der Absender aus dem WAN oder LAN kommt.
Abhilfe gegen derartigen Mißbrauch bieten nur 3rd Party Produkte wie z.B WALL von http://www.dataenter.at
Über die IP Adressen erlaube ich z.B. Servern, Kopierern usw. der Relayen, da diese Geräte meist keine Authentifizierung besitzen
Benutzer musst du nicht löschen, nur das Recht nehmen, und die restlichen Benutzer fügst dann hinzu. Gruppe kann ich jetzt nicht auf Anhieb sagen, sollte aber auch klappen.
LG Günther
wenn man die benutzer kennt kann man mit telnet simpel nachrichten im jeweiligen postfach ablegen
Das ist bei einem Mailserver normal. Deshalb landen ja auch die von dir angesprochenen SPAMs bei dir. Für den Mailserver ist das ein User auf der Domäne, der einem anderen User in der Domäne ein Mail schickt. Der Exchange unterscheidet hier nicht, ob der Absender aus dem WAN oder LAN kommt.
Abhilfe gegen derartigen Mißbrauch bieten nur 3rd Party Produkte wie z.B WALL von http://www.dataenter.at
oder füge ich hier nur den exchangeserver mit seiner IP hinzu
Über die IP Adressen erlaube ich z.B. Servern, Kopierern usw. der Relayen, da diese Geräte meist keine Authentifizierung besitzen
würde ich dann "authentifizierte benutzer" löschen und gezielt einzelne benutzer eintragen die dann relayen dürfen.
Benutzer musst du nicht löschen, nur das Recht nehmen, und die restlichen Benutzer fügst dann hinzu. Gruppe kann ich jetzt nicht auf Anhieb sagen, sollte aber auch klappen.
LG Günther